
ใช้โปรแกรม Proteus และ Keil uVision3 และภาษา C ในการทำ
- - - - - - - - - - - - - - - - - - - - - - - - - - -
ก่อนเริ่มเขียน เราควรมีพื้นฐานภาษา C อยู่ด้วย รูปแบบการเขียนโปรแกรม
- - - - - - - - - - - - - - - - - - - - - - - - - - -
#include <reg51.h> // เป็นคำสั่งใช้รวมไฟล์ส่วนหัวเข้ามาในโปรแกรม ซึ่งมีหลายแบบ เช่น stdio.h , conio.h , reg51.h ฯลฯ
void main() // เป็น function หลักของโปรแกรม และเราสามารถสร้างเพิ่มเองได้ เดี๋ยวจะอธิบายในคราวต่อไป
{ // ตั้งแต่ { จนถึง } คือคำสั่งที่เราต้องการให้ทำงานหรือแสดงผลเช่นการคำนวน ฯลฯ
โค้ดโปรแกรม;
}
- - - - - - - - - - - - - - - - - - - - - - - - - - -
คำสั่งที่ใช้งานบ่อยๆก็มีประมาณนี้ครับ
reg51.h เป็นการประกาศว่าจะใช้ special function register
stdio.h ประกาศ prototype สำหรับ I/O ฟังก์ชัน
for คือการทำซ้ำ
for(count=0; count<10; count++) // count++ เพิ่มขึ้น 1 , count-- ลดลง 1 ฯลฯ
{
คำสั่งที่ต้องการให้ทำซ้ำ..
}
while การทำซ้ำอย่างมีเงื่อนไข
while(เงื่อนไข)
{
คำสั่งที่ต้องการให้ทำซ้ำ..
}
คำสั่งตรวจสอบเงื่อนไข [ if...elseif...else]
คือ ถ้าเป็นจริง จะให้ทำอะไรต่อไป และถ้าเป็นเท็จ จะให้ทำอะไรต่อไป
- if
ตัวอย่างการใช้งาน
if (a<b)
{
printf("ok");
}
- if...else
ตัวอย่างการใช้งาน
if (a<b)
{
printf("ok");
}
else
{
printf("no");
}
- if...elseif...else
ตัวอย่างการใช้งาน
if (a<b)
{
printf("ok1");
}
elseif (a<c)
{
printf("ok2");
}
elseif (a<d)
{
printf("ok3");
}
else
{
printf("no");
}
sbit = เป็นการควบคุมบิตของไมโครคอนโทรลเลอร์แบบเจาะจงบิต
sbit ชื่อตัวแปร = P1^บิตที่เท่าไหร่ก็ว่าไป;
sbit SW = P1^0; // ควบคุมพอร์ต P1 ที่บิต 0
delay = เป็นคำสั่งหน่วงเวลา
เครื่องหมายเปรียบเทียบ
> = มากกว่าหรือไม่
< = น้อยกว่าหรือไม่
>= = มากกว่าหรือเท่ากันหรือไม่
<= = น้อยกว่าหรือเท่ากันหรือไม่
!= = ไม่เท่ากันหรือไม่
== = เท่ากันหรือไม่
&& = ตรวจสอบว่าเป็นจริงทั้งหมดหรือไม่ ดูภาพประกอบจะได้เข้าใจมากขึ้น

|| = ตรวจสอบว่าเป็นจริงทั้งหมดหรือมีส่วนใดส่วนหนึ่งเป็นจริงหรือไม่ ดูภาพประกอบจะได้เข้าใจมากขึ้น

ตัวแปร
- char [ ตัวอักษร ] ได้แก่ ตัวอักษร ตัวเลข และกลุ่มตัวอักขระพิเศษใช้พื้นที่ในการเก็บข้อมูล 1 ไบต์
- int [ จำนวนเต็ม ] ได้แก่ จำนวนเต็มบวก จำนวนเต็มลบ ศูนย์ ใช้พื้นที่ในการเก็บ 2 ไบต์
- long [ จำนวนเต็มที่มีขนาด 2 เท่า ] ข้อมูลที่มีเลขเป็นจำนวนเต็ม ใช้พื้นที่ 4 ไบต์
- float [ เลขทศนิยม ] ข้อมูลที่เป็นเลขทศนิยม ขนาด 4 ไบต์
- - - - - - - - - - - - - - - - - - - - - - - - - - -
ในการเขียนโปรแกรมควบคุมไมโครคอนโทรลเลอร์บางคำสั่งต้องใช้เลขฐาน 16 ในการเขียน
การแปลงเลขฐาน 2 เป็น ฐาน 16
สมมุติเราต่อหลอดไฟที่พอร์ต P1.0 , P1.3 , P1.7
ให้เราทำตามนี้
0 = เป็นจริง , 1 = เป็นเท็จ

ก็จะได้ 89 เวลาใช้ให้เขียนเป็น 0x89
ตัวอย่าง[/b]
...
void main()
{
if(sw==0)
{
P1=0x0f;
}
else
{
P1=0x89
}
}
วิธีสร้าง Project เพื่อใช้ในการเขียนโปรแกรม เชิญชม VDO ด้านล่างเลยครับ ![[$2$] [$2$]](http://www.zone-it.com/forum/Smileys/default/emoticon187.gif)
http://www.zone-it.com/forum/index.php?topic=175324.msg1134806#msg1134806- - - - - - - - - - - - - - - - - - - - - - - - - - -
**กำลังลงข้อมูล(เห็นใจคนใช้แอร์การ์ดด้วยครับ อิอิ)**
update!!! 15/04/2555ว่างๆเดี๋ยวมาอัพเดทอีกครับ รู้สึกไม่ได้อัพมานานมาก -.-