Upload
others
View
3
Download
0
Embed Size (px)
Citation preview
1
2
รายวชา 6562213 ไมโครโพรเซสเซอร 1
โดย
ผชวยศาสตราจารย ธระ กาญจนสนธ
วท.ม.(ฟสกส) วท.บ.(ฟสกส)
บทเรยนออนไลน
6562213 Microprocessor 1
มหาวทยาลยราชภฏนครปฐม
ยนดตอนรบส...
คณะวทยาศาสตรและเทคโนโลย
6562213 ไมโครโพรเซสเซอร 1
จดประสงคการเรยนรของรายวชา 6562213 ไมโครโพรเซสเซอร 1
3
1) เพอใหผเรยนสามารถออกแบบและพฒนาฮารดแวรทมไมโครคอนโทรลเลอร หรอชปตระกล MCS-51เปนหนวยประมวลผล
2) เพอใหผเรยนสามารถพฒนาซอฟตแวรภาษาซ
ในการควบคมการท างานของฮารดแวรทตอวงจรรวม กบชปตระกล MCS-51
3) เพอใหผเรยนสามารถพฒนาเจตคตและมจรรยาบรรณในการคดคนและพฒนาสงประดษฐ โดยใชชปตระกลMCS-51 เปนหนวยประมวลผล
6562213 ไมโครโพรเซสเซอร 1
หวขอส าคญของรายวชา 6562213 ไมโครโพรเซสเซอร 1 บทท 1-6
4
บทท 1 สถาปตยกรรมไมโครโพรเซสเซอรและไมโครคอนโทรลเลอรพนฐาน
บทท 2 โครงสรางภายในของไมโครคอนโทรลเลอร
บทท 3 ชดค าส งแยกตามประเภทการใชงาน
บทท 4 ตวอยางการเขยนโปรแกรมเบองตนและโปรแกรมใชงาน
บทท 5 การออกแบบวงจรหนวยความจ าและอปกรณตอรวม
บทท 6 การประยกตใชงานไมโครคอนโทรลเลอร
5
6562213 ไมโครโพรเซสเซอร 1
บทท 4 ตวอยางการเขยนโปรแกรมเบองตน
6
รายวชา 6562213 ไมโครโพรเซสเซอร 1
บทท 4 ตวอยางการเขยนโปรแกรมเบองตน
โดยผชวยศาสตราจารยธระ กาญจนสนธ
คณะวทยาศาสตรและเทคโนโลย
มหาวทยาลยราชภฏนครปฐม
6562213 ไมโครโพรเซสเซอร 1 7
บทน า
ในบทน มตวอยางงานควบคมแบบพนฐานจากผงความคดในการพฒนางานควบคม-การจ าลองวงจรอเลกทรอนกส-การเขยนโปแกรมควบคมแบบงายๆเรมตงแตการตดสวางของหลอด LED 1 ดวง ถงหลายดวง/ การแสดงผลของสวนแสดงผล 7 สวน/การใชสวตช 1 ตว ถง 8 ตวควบคมการตด-ดบของหลอด LED/ สวนแสดงผล 7 สวน / การท างานของมอเตอร
การน าเสนอผงความคดน าไปสฮารดแวรทจ าลองไดบน ISIS Professional Proteus และซอฟตแวรซ งพฒนาไดบน Keil µVision เมอน ามาประกอบกนโดยล าดบ นบเปนกรณศกษาทชวยพฒนาความเขาใจในไมโครคอนโทรลเลอรตระกล MCS-51 ไดหลากหลาย ผเรยนจงจ าเปนตองสงเกตความแตกตาง และปรบความเขาใจไปในแตละกรณ
บทท 4 ตวอยางการเขยนโปรแกรมเบองตน
6562213 ไมโครโพรเซสเซอร 1 8
หวขอส าคญในบทท 4
4.2 ตวอยาง 1: on-off 1-LED (byte control)
4.3 ตวอยาง 2 : on-off 4-LEDs (shift >> control)
4.5 ตวอยาง 4 : สวนแสดงผล 7 สวนแบบ CA (byte control)
4.4 ตวอยาง 3 :on-off 5-LEDs (byte control)
4.1 วธการพฒนางานควบคมบนคอมพวเตอร
4.7 ตวอยาง 7: 3-buttonswitches& 3-LEDs(byte control)
4.6 (ข) ตวอยาง 6: 1-button switch& 1-DC motor(bit control)
4.6 (ก) ตวอยาง 5:1-button switch & 1-LEDแบบ CA (byte control)
บทท 4 ตวอยางการเขยนโปรแกรมเบองตน
4.8 ตวอยาง 8: 4-buttonswitches & 7-segment (byte control)
4.9 ตวอยาง 9: matrix (3x4) switches
9
4.1 วธการพฒนางานควบคมบนคอมพวเตอร
สรางวงจรบน Proteusผงความคด
1234567891011121314151617181920
4039383736353433323130292827262524232221
P0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7
P2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0
Vcc
EAALEPSEN
P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7
P3.0P3.1P3.2P3.3P3.4P3.5P3.6P3.7
RESET
XTAL1XTAL2
GND.
11101111
11111111
P2=0xFFP2=0xEF
6562213 ไมโครโพรเซสเซอร 1 10
บทท 4 ตวอยางการเขยนโปรแกรมเบองตน
เปด/ปด ดวงไฟ 1 ดวง
P2.3 P2.2 P2.1 P2.0 Hex.P2.7 P2.6 P2.5 P2.4
111 1111 1 0xFF0 0xEF
เรม
เปดไฟ
ปดไฟ
end
ดวงไฟพรอมใช
หนวงเวลา
หนวงเวลา
พฒนาโปรแกรมบน Keil
#include<reg51.h>
void main ()
while(1)
{
P2=0xFF;
}
P2=0xEF;
P2=0xFF;
{ delay(100);
delay(100);
void delay (long t)
{for (t=t;t>0;t--);}
void delay (long t);
}
11
4.2 ตวอยาง 1 : on-off 1-LED (byte control)
สรางวงจรบน Proteus
เปด/ปด ดวงไฟ 1 ดวง
เรม
เปดไฟ
ปดไฟ
end
ผงความคด
1234567891011121314151617181920
4039383736353433323130292827262524232221
P0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7
P2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0
Vcc
EAALEPSEN
P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7
P3.0P3.1P3.2P3.3P3.4P3.5P3.6P3.7
RESET
XTAL1XTAL2
GND.
พฒนาโปรแกรมบน Keil
#include<reg51.h>
void main ()
while(1)
{
P2=0xFF;
}
ดวงไฟพรอมใช
P2=0xEF;11101111
11111111
P2=0xFFP2=0xEF
P2=0xFF;
{หนวงเวลา
หนวงเวลา
delay(100);
delay(100);
void delay (long t)
{for (t=t;t>0;t--);}
void delay (long t);
}
P2.3 P2.2 P2.1 P2.0 Hex.P2.7 P2.6 P2.5 P2.4
111 1111 1 0xFF0 0xEF
6562213 ไมโครโพรเซสเซอร 1 12
บทท 4 ตวอยางการเขยนโปรแกรมเบองตน
13
6562213 ไมโครโพรเซสเซอร 1 14
เรม
ON ท P2.7
end
1234567891011121314151617181920
4039383736353433323130292827262524232221
P0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7
P2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0
Vcc
EAALEPSEN
P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7
P3.0P3.1P3.2P3.3P3.4P3.5P3.6P3.7
RESET
XTAL1XTAL2
GND.
#include<reg51.h>
void main ()
while(1)
P2= ~x;
}
ดวงไฟพรอมใช
P2=0x80; x=P2;
{
หนวงเวลา
delay(100);
void delay (unsigned int t)
{ for (t=t; t>0; t--); }
void delay (unsigned int t);
}
ON ท P2.6 หนวงเวลา
ON ท P2.5 หนวงเวลา
ON ท P2.4 หนวงเวลา
x=(x>>1);if(x==0x08) {x=0x80;}
Int x;
1000 0000 = 0x80
{
0111 1111= 0x7F0100 0000 = 0x401011 1111 = 0xBF
80
7F
40
BF
20
DF
10
EF
0010 0000 = 0x201101 1111 = 0xDF0001 0000 = 0x101110 1111 = 0xEF
08
บทท 4 ตวอยางการเขยนโปรแกรมเบองตน
4.3 ตวอยาง 2 : on-off 4-LEDs (shift bit >> control)
สรางวงจรบน Proteus ผงความคด พฒนาโปรแกรมบน Keil
0x800x400x200x100x08
15
6562213 ไมโครโพรเซสเซอร 1
4.4 ตวอยาง 3:on-off 5-LEDs(byte control)
16
เปด/ปด ดวงไฟ 5 ดวง
เร ม
เปดไฟท P2.7
end
1234567891011121314151617181920
4039383736353433323130292827262524232221
P0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7
P2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0
Vcc
EAALEPSEN
P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7
P3.0P3.1P3.2P3.3P3.4P3.5P3.6P3.7
RESET
XTAL1XTAL2
GND.
วงจรดวงไฟใช port P2
#include<reg51.h>
void main ();
while(1){
P2=0xBF;
}
ดวงไฟพรอมใช
P2=0x7F;
0 1 1 1 1 1 1 11 1 1 1 1 1 1 1
P2=0xFFP2=0x7F
P2=0xFF;{หนวงเวลา delay(100);
delay(100);
void delay (long t)
{for (t=t;t>0;t--);}
void delay (long t) ;
}
เปดไฟท P2.6 หนวงเวลา
เปดไฟท P2.5 หนวงเวลา
เปดไฟท P2.4 หนวงเวลา
เปดไฟท P2.3 หนวงเวลา
P2=0xEF;
P2=0xDF; delay(100);
delay(100);
P2=0xF7; delay(100);1 0 1 1 1 1 1 1
P2=0xBF
1 1 0 1 1 1 1 1 1 1 1 0 1 1 1 1
P2=0xDFP2=0xEF
1 1 1 1 0 1 1 1
P2=0xF7
บทท 4 ตวอยางการเขยนโปรแกรมเบองตน
สรางวงจรบน Proteus ผงความคด
พฒนาโปรแกรมบน Keil
17
g
d
b
c
f
e
pt.
6562213 ไมโครโพรเซสเซอร 1 18
สวนแสดงผลแบบบวกรวม
เรม
เปดไฟชนสวน b,c
เปดไฟชนสวน a,b,c
end
1234567891011121314151617181920
4039383736353433323130292827262524232221
P0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7
P2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0
Vcc
EAALEPSEN
P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7
P3.0P3.1P3.2P3.3P3.4P3.5P3.6P3.7
RESET
XTAL1XTAL2
GND.
#include<reg51.h>
void main ()
while(1)
{
P2=0xF8;
}
สวนแสดงผลพรอมใช
P2=0xF9;
11111001
11111111
P2=0xFFP2=0xF9
P2=0xFF;
{หนวงเวลา
หนวงเวลา
delay(100);
delay(100);
void delay (long t);
{for (t=t;t>0;t--);}
void delay (long t)
}
สงใหตดสวางดวยลอจก ”0”
8x220
g
d
b
c
f
e
pt.11111000
g
d
b
c
f
e
pt.11111001
P2=0xF8
4.5 ตวอยาง 4 : สวนแสดงผล 7 สวนแบบ CA (byte control)
สรางวงจรบน Proteus ผงความคด พฒนาโปรแกรมบน Keil
บทท 4 ตวอยางการเขยนโปรแกรมเบองตน
19
6562213 ไมโครโพรเซสเซอร 1 20
If(statement is real ) { do process }
รปแบบค าส ง ทางเลอก (if condition)
สวตชพรอมกด
เรม
กดสวตช ?
เปดไฟ ปดไฟ
end
true
false
1234567891011121314151617181920
4039383736353433323130292827262524232221
P0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7
P2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0
Vcc
EAALEPSEN
P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7
P3.0P3.1P3.2P3.3P3.4P3.5P3.6P3.7
RESET
XTAL1XTAL2
GND.วงจรดวงไฟใช port P2.4
#include<reg51.h>
void main ()
while(1)
{P2=0xEF;}
{
else {P2=0xFF;}
}}
ดวงไฟพรอมใช
if(P1==0x7F)
11111110
11111111
11101111
11111111
P1=0xFF
P2=0xFF
P1=0x7F
P2=0xEF
P1=0xFF;P2=0xFF;
{
วงจรสวตชใช port P1.7
4.6 (ก) ตวอยาง 5 : 1-button switch & 1-LED แบบ CA (byte control)
สรางวงจรบน Proteus ผงความคด พฒนาโปรแกรมบน Keil
บทท 4 ตวอยางการเขยนโปรแกรมเบองตน
21
6562213 ไมโครโพรเซสเซอร 1
ตวอยางทใชเงอนไข (if) สองทางเลอก
22
สวตชเปด/ปด มอเตอร
วงจรสวตชใช port P1.0
If(statement is real ) { do P1 }else{do P2}
รปแบบโปรแกรม
P1.0 สวตชพรอมกด
เรม
กดสวตช ?
P1 หมนมอเตอร P2 หยดมอเตอร
end
true
false
วงจรมอเตอรใช port P2.7
#include<reg51.h>
void main ()
sbit s0=P1^0;sbit m7=P2^7;
while(1)
{
else {m7=0;}
}
}
P2.7 มอเตอรพรอมใช
if(s0==0)
P1=0xFF; P2=0x00;
{ {m7=1;}
P1.0P2.7
4.6(ข) ตวอยาง 6 : 1-button switch & 1-DC motor (bit control)
สรางวงจรบน Proteus ผงความคด พฒนาโปรแกรมบน Keil
บทท 4 ตวอยางการเขยนโปรแกรมเบองตน
23
สรางวงจรบน Proteus
0xFF 0xFF0xFB 0x7F0xFD
0xBF0xFE 0xDF
6562213 ไมโครโพรเซสเซอร 1 24
Input :วงจรสวตชใช port P1.2 P1.1 P1.0
Output :วงจรดวงไฟใช port P3.7 P3.6 P3.5
#include<reg51.h> void main ()
Unsigned int xsw;
while(1)
if(xsw==0xFB){P3=0x7F;}
{
{
}
}
P1=0xFF;P2=0xFF;xsw=P1;
If(statement is real ) { do P1 } else{do P2}if condition
สวตชพรอมกด
เรม
กดสวตช
sw2?
เปดไฟแดง ปดไฟ
end
true
false
ดวงไฟพรอมใช
กดสวตช
sw1?
เปดไฟเหลอง
true
falseกดสวตช
sw0?
เปดไฟเขยว
true
false
else if(xsw==0xFD){P3=0xBF;}
else if(xsw==0xFE){P3=0xDF;}
else {P3=0xFF;}
4.7 ตวอยาง 7 : 3-button switches & 3-LEDs (byte control)
ผงความคด พฒนาโปรแกรมบน Keiltraffic light
บทท 4 ตวอยางการเขยนโปรแกรมเบองตน
25
6562213 ไมโครโพรเซสเซอร 1 26
สวตช 4 ตวเปด/ปดควบคมการแสดงผล 7 สวน ...0-9
วงจรสวตชใช port P1.3 P1.2 P1.1 P1.0
วงจรสวนแสดงผลใช port P2
X=P1;สวตชพรอมกด
เรม
X=?
แสดง “0”
0xFF
ดวงไฟพรอมใช
แสดง “1”
0xFE
แสดง “2”
0xFD
แสดง “3”
0xFC
แสดง “4”
0xFB
แสดง “5”
0xFA
แสดง “6”
0xF9
แสดง “7”
0xF8
แสดง “8”
0xF7
แสดง “9”
0xF6
แสดง “ ”
Default
Active low : สงใหตดสวางดวยลอจก ”0”
123456789101112
13141516171819
20
4039383736353433323130
29
2827262524232221
P0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7
P2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0
Vcc
EA
ALEPSEN
P1.0P1.1P1.2P1.3P1.4P1.5P1.6
P1.7
P3.0P3.1P3.2P3.3P3.4P3.5P3.6P3.7
RESET
XTAL1XTAL2
GND.
1 1 1 1 1 1 1 1 0xFF
pt. g f e d c b a Hex.P2.7 P2.6 P2.5 P2.4 P2.3 P2.2P2.1 P2.0
g
d
b
c
f
e
pt.
a
8x220
1 1 0 0 0 0 0 0 0xC01 1 1 1 1 0 0 1 0xF91 0 1 1 0 0 0 0 0xB01 0 0 1 1 0 0 1 0x991 0 0 1 0 0 1 0 0x921 0 0 0 0 0 1 0 0x821 1 1 1 1 0 0 0 0xF81 0 0 0 0 0 0 0 0x801 0 0 1 0 0 0 0 0x901 0 1 0 0 1 0 0 0xA40xC0 0xF9 0xA4 0xB0 0x99 0x92 0x82 0xF8 0x80 0x90 0xFF
#include<reg51.h> #include<reg51.h>
บทท 4 ตวอยางการเขยนโปรแกรมเบองตน
4.8 ตวอยาง 8: 4-button switches & 7-segment (byte control)
สรางวงจรบน Proteusผงความคด
ตวอยางทใช switch case (หลายทางเลอก)
a f b
g e c
d pt.
6562213 ไมโครโพรเซสเซอร 1 27
สวตช 4 ตวเปด/ปดควบคมการแสดงผล 7 สวน ......0-9
วงจรสวตชใช port P1.7 P1.6 P1.5 P1.4 สวนแสดงผล port P3
X=P1;
#include<reg51.h>
void main ()
P1=0xFF; P2=0xFF;
switch(x)
{while(1)
{
Case 0xFF: {P2=0xC0;break;}
Case 0xEF: {P2=0xF9;break;}
Case 0xDF: {P2=0xA4;break;}
int x;
Case 0xCF: {P2=0xB0;break;}
x=P1
Case 0xBF: {P2=0x99;break;}
Case 0xAF: {P2=0x92;break;}
Case 0x9F {P2=0x82;break;}
Case 0x8F: {P2=0xF8;break;}
Case 0x7F: {P2=0x80;break;}
default: {P2=0xFF;}
{
}
Case 0x6F: {P2=0x90;break;}
#include<reg51.h>
P1=0xFF P2=0xCOP1=0xEF P2=0xF9P1=0xDF P2=0xA4P1=0xCF P2=0xB0P1=0xBF P2=0x99
g
d
b
c
f
e
pt.
1234567891011121314151617181920
4039383736353433323130292827262524232221
P0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7
P2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0
Vcc
EAALEPSEN
P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7
P3.0P3.1P3.2P3.3P3.4P3.5P3.6P3.7
RESET
XTAL1XTAL2
GND.
g
d
b
c
f
e
pt.8x220
P2=0xFF
P1=0xFF
g
d
b
c
f
e
pt.
P2=0xC0
P1=0xEF
P2=0xF9
P1=0xDF
g
d
b
c
f
e
pt.
P1=0xCF
g
d
b
c
f
e
pt.
P2=0xA4
P1=0xBF
g
d
b
c
f
e
pt.
P2=0x99
P1=0xAF
g
d
b
c
f
e
pt.
P2=0x92
P1=0xAF P2=0x92
P1=0x9F
P1=0x9F P2=0x82
g
d
b
c
f
e
pt.
P1=0x8F
g
d
b
c
f
e
pt.
P2=0xF8
P1=0x8F P2=0xF8
P2=0xB0P2=0x82P2=0x80
P1=0x7F
g
d
b
c
f
e
pt.
P1=0x7F P2=0x80P1=0x6F P2=0x90
P1=0x6F
P2=0x90
g
d
b
c
f
e
pt.
บทท 4 ตวอยางการเขยนโปรแกรมเบองตน
} }
4.8 ตวอยาง 8: 4-button switches & 7-segment (byte control)
สรางวงจรบน Proteus ผงความคด
พฒนาโปรแกรมบน Keil
ตวอยางทใช switch case (หลายทางเลอก)
6562213 ไมโครโพรเซสเซอร 1 28
สวตช 4 ตวเปด/ปดควบคมการแสดงผล 7 สวน ......0-9
X=P1;
#include<reg51.h>
void main ()
P1=0xFF; P3=0xFF;
switch(x)
{while(1) {
Case 0xFF: {P3=0xC0;break;}
Case 0xFE: {P3=0xF9;break;}
Case 0xFD: {P3=0xA4;break;}
int x;
Case 0xFC: {P3=0xB0;break;}
x=P1
Case 0xFB: {P3=0x99;break;}
Case 0xFA: {P3=0x92;break;}
Case 0xF9: {P3=0x82;break;}
Case 0xF8: {P3=0xF8;break;}
Case 0xF7: {P3=0x80;break;}
default: {P3=0xFF;}
{
}Case 0xF6: {P3=0x90;break;}
#include<reg51.h>
P1=0xFF P3=0xCOP1=0xFE P3=0xF9P1=0xFD P3=0xA4P1=0xFC P3=0xBOP1=0xFB P3=0x99P1=0xFA P3=0x92P1=0xF9 P3=0x82P1=0xF8 P3=0xF8P1=0xF7 P3=0x8OP1=0xF6 P3=0x9O P3=0xFF
บทท 4 ตวอยางการเขยนโปรแกรมเบองตน
4.8 ตวอยาง 8: 4-button switches & 7-segment (byte control)
สรางวงจรบน Proteus
ตวอยางทใช switch case (หลายทางเลอก)
วงจรสวตชใช port P1.3 P1.2 P1.1 P1.0
สวนแสดงผลใช port P3
พฒนาโปรแกรมบน Keil
} }
29
6562213 ไมโครโพรเซสเซอร 1 30
สวตช 12 ตว ควบคมการท างาน
วงจรสวตชใช port P1.7 P1.6 P1.5 P1.4 สวนแสดงผลใช port P2
X=P1;
#include<reg51.h>
void main ()
P1=0xFF; P2=0xFF;
switch(x)
{while(1) {
Case 0xFF: {P2=0xC0;break;}
Case 0xEF: {P2=0xF9;break;}
Case 0xDF: {P2=0xA4;break;}
int x;
Case 0xCF: {P2=0xB0;break;}
x=P1
Case 0xBF: {P2=0x99;break;}
Case 0xAF: {P2=0x92;break;}
Case 0x9F {P2=0x82;break;}
Case 0x8F: {P2=0xF8;break;}
Case 0x7F: {P2=0x80;break;}
default: {P2=0xFF;}
{
}
Case 0x6F: {P2=0x90;break;}
#include<reg51.h>
P1=0xFF P2=0xCOP1=0xEF P2=0xF9P1=0xDF P2=0xA4P1=0xCF P2=0xB0P1=0xBF P2=0x99P1=0xAF P2=0x92P1=0x9F P2=0x82P1=0x8F P2=0xF8P1=0x7F P2=0x80P1=0x6F P2=0x90
} }
4.9 ตวอยาง 9 : matrix (3x4) switches
พฒนาโปรแกรมบน Keil
บทท 4 ตวอยางการเขยนโปรแกรมเบองตน
ตวอยาง Keypad phone
สรางวงจรบน Proteus
6562213 ไมโครโพรเซสเซอร 1 31
เมอจบบทเรยนนแลว... นกศกษาควรมสมรรถนะดงน
4.2 เขาใจการควบคม 1-LED (byte control)
4.3 เขาใจการควบคม 1-8 LEDs (shift >> control)
4.5เขาใจการควบคมการแสดงผล บน 7-segment(CA)
4.4 เขาใจการควบคม 1-8 LEDs (byte control)
4.1 เขาใจวธการพฒนางานควบคมบนคอมพวเตอร
4.8 เขาใจการควบคม 3 buttonsswitches& 3-LEDs(byte control)
4.7 เขาใจการควบคม 1-buttonswitch & 1-DC motor (bit control)
4.6เขาใจการควบคม 1-button switch & 1-LEDแบบ CA (byte control)
บทท 4 ตวอยางการเขยนโปรแกรมเบองตน
4.9 เขาใจการควบคม4-buttonswitches & 7-segment (byte control)
4.10 เขาใจการควบคมmatrix (3x4) switches
32