การใช้งานตัวแปร (Variables)
     ตัวแปร (Variable) คือ ชื่อที่สร้างขึ้นหรือประกาศขึ้นมาเพื่อใช้เก็บข้อมูลต่างๆ ที่สามารถเปลี่ยนแปลงได้ การประกาศตัวแปรนั้นจะเป็นการจองพื้นที่หน่วยความจำภายในไมโครคอนโทรลเลอร์ ขนาดของหน่วยความจำจะขึ้นอยู่กับชนิดของตัวแปรแต่ละชนิด

     การเลือกใช้งานตัวแปรนั้น มีความสำคัญมาก นักพัตนาโปรแกรมควรเลือกให้เหมาะสมกับข้อมูลที่ต้องการเก็บ เพราะจะมีผลต่อขนาดของโปรแกรม และความเร็วในการประมวลผลโปรแกรม ซึ่งตัวแปรที่มีขนาดของหน่วยความจำมากจะใช้เวลาในการประมวลผลมากกว่าตัวแปรที่มีขนาดของหน่วยความจำน้อย ดังนั้นจึงควรทำความรู้จักกับชนิดของข้อมูลกันก่อนนำไปใช้งานดังต่อไปนี้

ชนิดตัวแปรแบบต่างๆ
กลับสู่หน้าหลัก
กฎการตั้งชื่อตัวแปร
     การสร้างตัวแปรขึ้นมาใช้งานให้ถูกต้องนั้น จะต้องทำตามเงื่อนไขของการตั้งชื่อตัวแปรดังนี้
1.ต้องขึ้นต้นด้วยอักขระ a ถึง z, A ถึง Z หรือ ขีดล่าง (Under score) เท่านั้นไม่สามารถขึ้นต้นด้วยตัวเลขได้
2.ห้ามเว้นวรรค
3.ห้ามตั้งชื่อซ้ำกัน ในขอบเขตการเข้าถึงเดียวกัน
4.ตั้งตัวแปรไม่ควรยาวเกินไปและควรสื่อความหมายในการใช้งานตัวแปร
5.ห้ามใช้ชื่อซ้ำกับคำสงวน (Key Words) ของภาษาซี

คำสงวน(Key Words)
ตัวอย่างการเรียกใช้งานตัวแปร
     จากตัวอย่างโปรแกรม เป็นการประกาศใช้งานตัวแปรชนิดต่างๆ และตัวแปรที่ประกาศขึ้นนั้น ถูกประกาศไว้สองส่วนด้วยกัน ส่วนที่ 1 เป็นการประกาศแบบ Global หมายถึง การประกาศตัวแปรไว้นอกฟังก์ชั่น ทุกฟังก์ชั่นสามารถเรียกใช้งานตัวแปรนี้ได้ และส่วนที่ 2 ป็นการประกาศแบบ Local หมายถึง การประกาศตัวแปรไว้ในฟังก์ชั่น โดยฟังก์ชั่นอื่นไม่สามารถเรียกใช้งานตัวแปรนี้ได้ นอกจากใช้ภายในฟังก์ชั่นเท่านั่น

#include <16f877.h>
#FUSES NOWDT //No Watch Dog Timer
#FUSES HS //High speed Osc (> 4mhz for PCM/PCH) (>10mhz for PCD)
#FUSES NOLVP //No low voltage prgming, B3(PIC16) or B5(PIC18) used for I/O
#FUSES NOPROTECT //Code not protected from reading
#use delay(clock=20000000)
#use rs232(baud=9600,xmit=pin_c6,rcv=pin_c7)

int1 a = 0;
char b = 'a';
signed int c = -2;
unsigned int d = 2;
signed long e = -10000;
unsigned long f = 10000;
float g = 12.34;

// FUNCTION : main()
void main (void)
{
int1 h = 1;
char i = 'b';
signed int j = -100;
unsigned int k = 100;
signed long l = -20000;
unsigned long m = 20000;
float n = 123.45;

     printf("****** Global Variables *********\n\r");
     printf("int1 a = %d \n\r",a);
     printf("char b = %c \n\r",b);
     printf("signed int c = %d \n\r",c);
     printf("unsigned int d = %u \n\r",d);
     printf("signed long e = %ld \n\r",e);
     printf("unsigned long f = %lu \n\r",f);
     printf("float g = %f \n\r",g);

     printf("\n\r****** Local Variables *********\n\r");
     printf("int1 h = %d \n\r",h);
     printf("char i = %c \n\r",i);
     printf("signed int j = %d \n\r",j);
     printf("unsigned int k = %u \n\r",k);
     printf("signed long l = %ld \n\r",l);
     printf("unsigned long m = %lu \n\r",m);
     printf("float n = %f \n\r",n);

while(true){

}

}

ตัวอย่างโค้ดโปรแกรม