Ế
Ề
Ể
Ị
Ế Ạ Ử Ụ
Ệ Ể
CH T O THI T B THÍ NGHI M VI ĐI U KHI N S D NG CHIP VI ĐI U KHI N AT89S8252 Ề MANUFACTURING TESTING EQUIPMENT FOR MICROCONTROLLER SYSTEMS USING MICROCONTROLLER AT89S8252
Ế
LÊ T N DUY – LÊ TI N DŨNG Đ i h c Đà N ng
Ấ ạ ọ
ẵ
ng án ch t o m t thi ế ạ
ớ ầ
ế ị
ủ
ệ
ộ
ủ
ươ ề
ể ự
ầ ệ
ạ
ể ứ
ậ
ỹ n ở ướ
ượ ạ ở
ầ ườ
ạ ọ
ế ớ
ợ
ươ
ẩ
TÓM T TẮ Bài báo đ xu t ph t b thí nghi m v i đ y đ các thành ph n c ấ ề b n c a m t h vi đi u khi n và các ngo i vi, trên đó có th th c hi n các bài thí nghi m t ệ ộ ệ ả c b n đ n nâng cao, đáp ng đ ơ ả phù h p v i ch ng trình đào t o ươ ph m ph n c ng là các ch ứ ầ các bài thí nghi m t
ẳ ườ ử ụ trên máy vi tính k t n i v i thi
bàn phím c a thi
ơ ừ c yêu c u thí nghi m môn h c "K thu t Vi đi u khi n", ể ề ọ ệ c ta. Đi kèm v i s n ng đ i h c, cao đ ng các tr ớ ả ệ i s d ng l p trình th c hi n ng trình ph n m m cho phép ng ề ầ t b ho c t ặ ừ ế ị
ậ ế ố ớ
ự t b . ế ị
ừ
ủ
ệ
ABSTRACT The article proposes a method to manufacture testing equipment with complete elements of a microcontroller system and peripheral devices, in which users can experiment exercises from fundamental to advanced levels, satisfying the requirements of testing for “Microcontroller Technology” subject in accordance with the training curricula of many universities, colleges in VietNam. Enclosed with the equipment are software allowing the users to program experimental exercises using the equipment keyboard or the computers connected with the equipment.
1. Đ t v n đ ặ ấ ề ọ ỹ ỹ ọ ả ậ ự ỹ ậ ậ ử ề ả ữ ễ ế ớ ề ng, Đi n t ể ậ ụ ụ ữ ấ ầ ế ử ự ộ ỹ ọ t b th c hành đ ph c v cho môn h c là r t c n thi ế ị ự t b thí nghi m mua c a n ệ ắ ề t b hi n đ i. Thi ạ ế ị ệ ọ ẽ ế ơ ọ c ngoài thì đ t ti n mà không khai thác đ ợ ươ ệ ớ ộ Môn h c K thu t Vi x lý, K thu t Vi đi u khi n là môn h c căn b n quan tr ng ọ ể ậ , Tin h c. D a trên n n t ng c a đ i v i sinh viên các ngành T đ ng - Đo l ủ ườ ố ớ ệ ử môn h c K thu t Vi x lý, K thu t Vi đi u khi n, sinh viên s ti p thu nh ng môn h c ọ ọ ề ệ k thu t chuyên ngành quan tr ng khác và ti p c n d dàng h n v i nh ng công ngh , ậ ỹ t, nh ng trang thi ư ể ế ị ệ c hi n nay các thi ượ ệ ủ ướ hi u qu do linh ki n và n i dung các bài thí nghi m không phù h p v i ch ng trình đào ả ệ n t o ạ ở ướ trên, chúng tôi nghiên c u và đ xu t ph ứ ừ ng án ch t b thí nghi m Vi đi u khi n v i đ y đ các thành ph n c b n c a m t h yêu c u th c t ự ế ầ ề ề ầ ể ớ ầ ể ự ệ ạ ủ ệ ấ ươ ơ ả ủ ệ ề ượ ứ ọ ng trình đào t o ầ các tr ậ ỹ n ở ướ ẳ ườ ử ụ ươ ệ ng đ i h c, cao đ ng ườ ạ ọ ng trình ph n m m đi u hành cho phép ng ề ề ầ bàn phím c a thi t b ho c t ế ộ ệ c b n đ n ế ừ ơ ả ợ c yêu c u thí nghi m môn h c "K thu t Vi đi u khi n", phù h p ể c ta. Đi kèm v i s n ph m ẩ ớ ả ạ ở i s d ng l p trình ậ ế ố ớ trên máy vi tính k t n i v i ặ ừ ế ị ừ ủ ệ c ta. Xu t phát t ấ t o m t thi ế ị ộ ạ vi đi u khi n và các ngo i vi, trên đó có th th c hi n các bài thí nghi m t ể ề nâng cao, đáp ng đ v i ch ươ ớ ph n c ng là các ch ứ ầ th c hi n các bài thí nghi m t ự ệ t b . thi ế ị
t b ế ị 2. Phân tích yêu c u đ i v i thi ụ ầ ố ớ ở ạ ệ ẹ ễ + Ph n c ng: ầ ứ ả ầ ứ ả B i vì m c đích c a s n ph m là ph c v cho vi c đào t o nên c u ấ ụ ụ ể t b g n nh , d dàng di chuy n ế ị ọ ậ c th hi n rõ ràng, d nh n ẩ c c a thi ướ ủ ể ả ượ ể ệ ả ệ ủ ề ễ ầ ủ ả hình ph n c ng ph i rõ ràng, dàn tr i. Kích th và b o qu n. Các thành ph n c a h vi đi u khi n ph i đ bi ả t. ế t b ầ ủ ủ ầ ầ ộ t b có đ y đ các thành ph n c b n c a m t i s d ng có + Các thành ph n c a thi ề ơ ả ủ ườ ử ụ ế ị ạ ể ồ ế ị: Thi h vi đi u khi n và các ngu n tài nguyên ngo i vi phong phú, cho phép ng ệ th t ể ự do phát tri n các ng d ng c a mình: ứ ụ ủ ể
ộ ử
• • • B vi x lí trung tâm. Các b nh ROM, RAM, EEPROM bên ngoài. ớ ng t Các c ng vào/ra t ổ ố ự ươ ố , vào/ra s , các c ng ghép n i ngo i vi m r ng l p trình đ ở ộ ạ ậ
ể ể ể ể ầ c. ơ ướ ể ạ ộ ộ • • • • • • • • ộ ổ c. ượ Giao ti p bàn phím. ế Hi n th LCD. ị Hi n th tr ng thái b ng đèn LED . ị ạ ằ Hi n th LED 7 thanh. ị Hi n th ma tr n LED (8x8). ậ ị Các đ u vào xung. M ch đi u khi n đ ng c m t chi u, đ ng c b ơ ộ ề ố Giao ti p v i máy tính PC qua c ng truy n thông n i ề ổ ế ề ớ ế ế ị: t b ti p (COM) và song song (LPT). + Các bài thí nghi m th c hi n trên thi ệ • ủ ự ề ơ ả : Giúp sinh viên làm quen v i h l nh c a chip vi đi u ớ ệ ệ ng trình đ xem k t qu th c hi n c a các ậ ạ ệ Các bài c b n ệ ệ ủ ả ự ươ ể ế khi n, nh p các l nh và ch y ch ể l nh đó. ệ • ồ ứ ạ ơ ầ ề ệ ể ề ụ ệ ệ ị ự ệ ể ng t ự ng t ự ề c... ơ ướ ể Các bài nâng cao: G m các bài thí nghi m ph c t p h n th c hi n ệ ệ ự t b . Các bài thí nghi m th c vi c đi u khi n các thành ph n ngo i vi trên thi ế ị ạ ho c s , ví d : Đi u khi n hi n hi n vi c đi u khi n m t quá trình t ể ề ặ ố ươ ộ ể th đèn LED, LED 7 thanh, ma tr n LED, đi u khi n vào/ra s - t ề , đi u ố ươ ể ậ khi n đ ng c b ộ ự ệ + Th c hi n các bài thí nghi m: • c ậ ự ẩ ụ ể ế ị ộ ệ ố ư ề ố ướ ướ : Đi kèm v i s n ph m ph n c ng là ớ ả ầ ứ ế ị t b c xây d ng cho các ng d ng trên thi ứ ự ng t ươ ề ẫ ng d n s d ng và th c hi n các bài t p m u ậ ự t b , đi u khi n vào/ra t ể ệ
• ự ậ ậ ắ ấ ệ Các bài t p m u xây d ng tr ự ẫ m t h th ng các bài t p m u đ ượ ẫ ậ nh đi u khi n các thành ph n ngo i vi c a thi ủ ạ ầ - s ... Sinh viên có th đ c h ẫ ử ụ ể ọ t b . này trên thi ế ị Các bài t p do sinh viên t ơ ồ ộ ế ị : Sau khi đã n m rõ c u hình c a ủ ể ự ậ l p t b , sinh viên có th t ế ị t b và s đ b nh c a các thành ph n trên thi thi ớ ủ trình các bài thí nghi m theo ý đ nh riêng c a mình. l p trình ầ ủ ệ ị : + Công c l p trình ụ ậ • B ng bàn phím và LCD ằ ự ế ừ ị ế ị ằ : Có th l p trình tr c ti p t ế ổ ử ể ậ ả ể ươ ủ bàn phím c a ể ỏ t b b ng mã máy và quan sát k t qu hi n th trên màn hình tinh th l ng ố ổ ng trình cũ. ả ữ ươ ng trình và thay đ i các tham s ở ộ • bàn phím, có th l u tr ch ể ư B ng máy tính PC ằ ể ụ ề ể ậ ằ ặ t b th c hi n các ch ng trình đó. ầ ữ ố ặ ệ ể ủ thi LCD và các c ng vào ra. Có kh năng s a ch ng trình ho c m m t ch t ặ ừ ươ : Có th s d ng các công c phát tri n ví d nh ể ử ụ ụ ng trình cho thi t b t ế ị ừ ươ ị ạ ế ị ự ươ ệ ụ + Công c phát tri n cho thi •
ặ ừ ậ
ư máy tính b ng ngôn ph n m m KEIL đ l p các ch ng C ho c Assembly sau đó biên d ch thành file d ng Hexa ho c Binary r i n p ồ ạ xu ng h vi đi u khi n c a thi ề ế ị: t b ể : Ch ng trình MONITOR Ch ươ t b và cho phép l p trình t ế ị t b . Ng ế ị ươ i s d ng có th t o m t ch ệ ng trình m i, ho c có th ớ trong thi c ướ ở ư ừ ầ ệ i ch ả ạ ng trình và ch i ch ườ ử ụ ng trình cũ đã l u t ươ ươ ị ấ ữ ệ ồ ng trình Monitor c a thi ắ ử ổ ộ ạ ộ ng trình Monitor đi u hành ho t đ ng ươ ề máy tính đ đi u ể ề bàn phím ho c t ừ ể ể ạ ươ ộ ặ l n thí nghi m tr t b , cho ế ị ữ ng trình, s a đ i các l nh n u gõ sai, cho phép l u tr ế ử ổ ư ng trình l u tr không b m t d li u khi c t ngu n,... ữ ư t b còn cho phép xem và s đ i n i dung ế ị ể t ho c n i dung các ô nh trong c a chip vi đi u khi n ủ ủ ặ ộ ệ ề ặ ớ c a c thi ả ủ khi n thi ể m m t ch ở ộ phép so n th o l ạ l ươ ạ Ngoài ra ch ươ c a các thanh ghi đ c bi ủ chính.
• Công c g r i ầ ụ ỡ ố : Trên giao di n máy tính có th s d ng các ph n ể ử ụ m m phát tri n ví d ph n m m KEIL đ g r i cho vi c l p trình. ệ ể ỡ ố ụ ầ ệ ậ ề ể ề
3. N i dung ộ t đ i v i thi t b thí nghi m Vi ầ ầ ế ố ớ ế ị ệ đi u khi n, chúng tôi đ xu t ph ng án ch t o thi t b nh sau: Sau khi đã nghiên c u, phân tích các yêu c u c n thi ươ ể ứ ấ ế ạ ề ề ế ị ư
ầ ươ ề ng án ể ọ ể ượ ử ụ ứ ấ ệ ệ ế ạ ng trung h c, tr ọ ọ ệ ườ ậ ề t b là phù h p v i ch ế ị ươ ầ ạ ợ ớ
yêu c u là thi ầ n ở ướ ấ ế ế ộ ế ị ữ t k m t thi ể ụ ụ ụ ế ị ề ề ạ ọ ể ề ầ t b , cùng v i các thành ph n b nh ROM, RAM bên ngoài và các thi ớ ế ị ể ớ ề ầ ộ 3.1. Ch n ph ọ Ch n h vi đi u khi n làm thành ph n trung tâm là h 8051, vì 8051 là h vi đi u ề ọ ọ ọ ệ c s d ng r t r ng rãi trong các ng d ng công nghi p khi n ph bi n nh t hi n nay, đ ổ ế ụ ấ ộ cũng nh trong vi c ch t o các s n ph m dân d ng. Ngoài ra, h vi đi u khi n 8051 đã ể ư ẩ ề ụ ả ng đ i h c, và là t k c a tr xâm nh p vào các phòng thí nghi m thi ậ ạ ọ ườ ế ế ủ ệ ng c th cho sinh viên khi b t đ u nh p môn Vi đi u khi n. Vì v y, vi c m t đ i t ộ ố ượ ậ ể ắ ầ ụ ể ng trình đào t o và ch n h 8051 làm thành ph n trung tâm c a thi ọ ọ ủ c ta. đi u ki n h c t p c a sinh viên ệ ọ ậ ủ ề t b thí nghi m Vi Vì nh ng lí do trên, và xu t phát t ệ ừ đi u khi n ph c v m c đích đào t o môn h c vi đi u khi n, ta quy t đ nh ch n ph ươ ng ọ ể án s d ng chip vi đi u khi n AT89S8252 c a hãng ATMEL đ làm thành ph n trung tâm ủ ử ụ đi u khi n thi ế ị t b ể ngo i vi phong phú. ạ ặ ủ ể ề ấ ả ể ề ể ọ • Đ c đi m c a chip vi đi u khi n AT89S8252 Chip vi đi u khi n AT89S8252 cũng thu c h 8051, do đó nó có t ớ ọ ơ ả ủ ọ ộ ộ ố ặ ể ớ ặ t c nh ng đ c ữ tr ng c b n c a h này. Ngoài ra nó có m t s đ c đi m m i so v i h 8051. Sau đây là nh ng tính năng b sung c a 89S8252: ổ ư ữ ủ
vi c nh Timer T0, T1 trong ch đ Reload ngay c lúc làm Timer 16 bit. ệ ế ộ ả ở ớ ươ ộ ớ ữ ệ ấ ả ề ớ ổ ng th c ISP. Đây là m t ph - Ngoài 2 Timer T0 và T1, 89S8252 còn có thêm Timer T2. Timer này có th làmể ư - AT89S8252 có 8K Flash ROM làm b nh ch ể ượ ộ ữ ệ ạ ứ ươ ươ ứ ể ấ ệ ậ ạ ạ ứ ể ạ ử ụ ầ ế ự ề
ộ ng trình và 2K EEPROM làm b c n p d li u b ng c ng LPT c a ủ nh d li u. T t c các vùng nh này đ u có th đ ằ ạ ề ng th c n p d li u vào vi đi u máy tính thông qua ph ữ ệ P1.4 đ n P1.7 khi n r t thu n ti n, không c n m ch n p riêng. Các chân đa ch c năng t ế ừ c a 89S8252 th c hi n giao ti p ISP này. Ph n m m s d ng đ n p ISP là AEC_ISP c a ủ ầ ệ ủ hãng AEC Electronics. ể ệ ế ề ỗ ợ ầ ố ỏ ữ ệ ch đ Watchdog. Ch đ này cho phép ng ế ộ ườ ử i s ế ộ ề ể ậ ạ ạ ộ ể - Vi đi u khi n AT89S8252 h tr t n s làm vi c đ n 24 MHz. - Có hai con tr d li u. - Có th l p trình cho Timer ở ủ ứ ư d ng theo dõi tr ng thái ho t đ ng c a vi đi u khi n. ụ - Có 9 ngu n ng t v i 2 m c u tiên khác nhau. ắ ớ - Có ch đ Power Down và Idle đ ti t ki m đi n năng c a h th ng. ồ ế ộ ể ế ủ ệ ố ệ ệ
3.2. S đ kh i ch c năng c a thi ơ ồ ố ứ ủ t b ế ị
Hình 1. S đ kh i ch c năng c a thi t b thí nghi m vi đi u khi n ơ ồ ố ứ ủ ế ị ệ ề ể
ơ ồ ạ 3.3. S đ m ch nguyên lý Sau khi phân tích l a ch n ph ọ ệ ự ế ị ế ế ừ ơ ồ ư t k thi ệ ng án thi ươ c nh trên, ta ti n hành l a ch n linh ki n và thi ự t b thí nghi m và t ế ế ạ ế ậ ế ị ế ế ế ạ ố s đ kh i t k m ch nguyên lý c a ủ ạ c d dàng và tránh sai sót, ta chia m ch i đây. t b đ u có m t đ a ch c ộ ị ả t ch i thi ế ệ ắ ầ ạ ộ ứ ể ậ ụ
R1.1
DIEN TRO DEM
VCC
1
VCC
J1
+12V
-12V
D0 D1 D2 D3 D4 D5 D6 D7
2 3 4 5 6 7 8 9 10
GND
GND
1 2 3 4 5 6
VCC
-5V
5VCS
VCC
ế ị ủ ậ ấ ộ ọ ố t b , là b ph n quan tr ng nh t. Kh i i mã t l p đ thi ượ ọ t b . Đ vi c thi thi t k m ch nguyên lý đ ể ệ ượ ễ t b thành các ph n nh đ nguyên lý c a thi c trình bày d ế ị ủ ỏ ượ ướ ầ ỉ ụ Trong h vi đi u khi n c a thi t b , m i thành ph n thi ế ị ể ủ ế ị ề ề ệ ầ ỗ ạ t k c n xác đ nh rõ ràng các đ a ch này đ có th đ m b o cho h ho t th , ng ể ị ể ả ỉ ị ế ế ầ ườ ể đ ng và vi i s d ng cũng c n n m rõ ng trình đi u hành ho t đ ng c a h . Ng ườ ử ụ ươ ủ ệ ề ộ t b . các đ a ch này đ có th l p trình cho các ng d ng trên thi ể ế ị ỉ ị Kh i CPU ố ề ầ ề ạ ả ố • Đây là ph n đi u khi n trung tâm c a thi ể CPU g m có chip vi đi u khi n chính AT89S8252, EEPROM, RAM, m ch ch t, gi ể ồ đ a ch ... ị ỉ
NGUON
EEPRO M ADRRESS: 0000H-1FFFH
RAM ADRRESS: 4000H-7FFFH
VCC
VCC
62256
U3
P1
28
AT89S8252
0 2
VCC
U4
74HC573
U1
U2
AT28C64
10
OUT TXD
C C V
IN RXD
A0 A1 A2 A3 A4 A5 A6 A7
D0 D1 D2 D3 D4 D5 D6 D7
D0 D1 D2 D3 D4 D5 D6 D7
A8 A9 A10 A11 A12 A13 A14 A15
D0 D1 D2 D3 D4 D5 D6 D7
D0 D1 D2 D3 D4 D5 D6 D7
19 18 17 16 15 14 13 12
2 3 4 5 6 7 8 9
1 6 2 7 3 8 4 9 5
39 38 37 36 35 34 33 32
21 22 23 24 25 26 27 28
9 8 7 6 5 4 3
11 12 13 15 16 17 18 19
11 12 13 15 16 17 18 19
Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7
D0 D1 D2 D3 D4 D5 D6 D7
P0.0/AD0 P0.1/AD1 P0.2/AD2 P0.3/AD3 P0.4/AD4 P0.5/AD5 P0.6/AD6 P0.7/AD7
P2.0/A8 P2.1/A9 P2.2/A10 P2.3/A11 P2.4/A12 P2.5/A13 P2.6/A14 P2.7/A15
D0 D1 D2 D3 D4 D5 D6 D7
D0 D1 D2 D3 D4 D5 D6 D7
GND
ALE
1
RDY/BUSY
11 1
D N G
LE OE
A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12 A13
25 24 21 23
COM
A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12
/CS 62256
VCC
U5A
2
10 9 8 7 6 5 4 3 25 24 21 23 2 26 1
P3.0/RXD P3.1/TXD P3.2/INT0 P3.3/INT1
A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12
A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12 A13 A14
/PSEN
/WR
0 1
1
3
20 27 22
CS WR OE
2
14
6 1
VSS
MOSI MISO SCK
RXD TXD /INT0 /INT1 T0 T1 /WR /RD
U8
MAX232/SO
1 2 3 4 5 6 7 8
10 11 12 13 14 15 16 17
22 27 20
P1.0/T2 P1.1/T2-EX P1.2 P1.3 P1.4/SS P1.5/MOSI P1.6/MISO P1.7/SCK
P3.4/T0 P3.5/T1 P3.6/WR P3.7/RD
OE WE CE
IN RXD
RXD
13
GND
12 9
8
7408
28
D N
VCC
C C V
R1OUT R2OUT
R1IN R2IN
ALE/PROG
VCC G
ALE /PSEN
XTAL1 XTAL2
19 18
30 29
XTAL1 XTAL2
PSEN
TXD
OUT TXD
4 1
14 7
11 10
31
T1OUT T2OUT
T1IN T2IN
/EA RST
9
EA/VPP RST
VCC
40
VCC
D N G
VCC
EXTERNAL
U7C
GND
0 2
10
VCC
1 3 4 5 2 6
8
D N G
C1+ C1- C2+ C2- V+ V-
A13
VCC
9
Y1.1
CL1 22nF
5 1
GND
7432
C8.1
7404
SW2
C8.2
12 MHz
U6A
C8.3
C8.4
/EA
10uF
10uF
2
1
10uF
10uF
U7A
/WR
C1.2
C1.1
1
VCC
GND
3
GND
33uF
33uF
2
select
VCC
7432
GND
GND
INTERNAL
RST
VCC
VCC
VCC
6 1
VCC
U10
ISP
C C V
A2 A3 A4
R1.3 1K
SW1.1
1 2 3
6 1
A B C
MOSI
/CS 5_8255 /CS 8_8255 /CS 6_8255 /CS 7_8255
U9
RESET
MISO
C1.3 10uF
A14 A15
/CS 62256
VCC
C C V
1 2 3
A B C
SCK
6 4 5
15 14 13 12 11 10 9 7
D N G
Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7
G1 G2A G2B
R5
VCC
8
1 6 2 7 3 8 4 9 5
1.5K
15 14 13 12 11 10 9 7
6 4 5
D N G
Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7
G1 G2A G2B
GND
R1.2 10K
/CS LED7THANH
8
P2
GND
C PU
74HC138
74HC138
Hình 2. S đ nguyên lý kh i đi u khi n trung tâm c a thi ơ ồ ủ ề ể ố t b ế ị
• Giao ti p xu t/ nh p ế ấ ậ
VCC
VCC
VCC
J_LCD
8255
ầ ể ậ ấ ồ ố ố ề ị ở ể ề đây ta dùng m t chip vi đi u ộ ng hi n nay là AT89C2051 c a hãng ế ng tính toán cho chip vi đi u khi n chính, ệ ố ể ị ườ ả ể ụ ủ ạ Ph n giao ti p xu t nh p g m 2 kh i: kh i hi n th LCD và kh i bàn phím. Đ gi m b t kh i l ố ượ ớ khi n lo i nh 20 chân r t thông d ng trên th tr ấ ỏ ATMEL đ quét bàn phím. ể
DATA BUS (D0 - D7)
6 2
GND VCC
U11
VRLCD1
C C V
5k
GND
1 2 3 4 5 6 7 8 9
D0 D1 D2 D3 D4 D5 D6 D7
34 33 32 31 30 29 28 27
4 3 2 1 40 39 38 37
D0 D1 D2 D3 D4 D5 D6 D7
PA0 PA1 PA2 PA3 PA4 PA5 PA6 PA7
A0 A1
9 8
A0 A1
5PB0 5PB1 5PB2 5PB3 5PB4 5PB5 5PB6 5PB7
LCD
35
GND
5
10 11 12 13 14 15 16
VCC
36
GND
/RD /WR /CS 5_8255
6
RLCD1
RESET RD WR CS
5PB0 5PB1 5PB2 5PB3 5PB4 5PB5 5PB6 5PB7
VCC
18 19 20 21 22 23 24 25
PB0 PB1 PB2 PB3 PB4 PB5 PB6 PB7
150
BAN PHIM
VCC
R12.1 2.2K
R12.2 2.2K
J_BANPHIM
U12
14 15 16 17 13 12 11 10
D N G
PC0 PC1 PC2 PC3 PC4 PC5 PC6 PC7
P1.0/AIN0 P1.1/AIN1
GND
GND
7
2 3 6 7 8 9
/INT1
11
P3.0/RXD P3.1/TXD P3.2/INT0 P3.3/INT1 P3.4/T0 P3.5/T1 P3.7
ROW1 ROW2 ROW3 ROW4 COL1 COL2 COL3 COL4
12 13 14 15 16 17 18 19
P1.2 P1.3 P1.4 P1.5 P1.6 P1.7
1 2 3 4 5 6 7 8 9
10
5 4
XTAL1 XTAL2
1
RST/VPP
GND
HEADER 10
Y12.1
20
D N G
VCC
0 1
C12.3
C12.2
GND
12 MHz
33p
33p
AT89C2051
ADRRESS: PA1:8000H PB1:8001H PC1:8002H CW1:8003H
GND
GND
VCC
VCC
VCC
C12.1
10uF
RST
R12.3 10k
GND
Hình 3. S đ nguyên lý kh i giao ti p xu t/nh p c a thi ố ậ ủ ế ấ t b ế ị ạ t b thí nghi m nh Chuy n đ i t ng t ủ ế ị ư ệ , hi n th LED 7 thanh, ma tr n LED, vào/ra s … đ ơ ồ • Các thành ph n ngo i vi khác ầ Các thành ph n ngo i vi khác c a thi ạ ể ự ị ể ổ ươ ượ ầ ng t ể ổ ố ươ ề ở ộ ể ố ạ ườ ử ụ ầ t b . Do gi c 8255. Các thành ph n ngo i vi này đ ế ị ế ị ạ ủ ể đây. /s , ự ố ố c ghép n i chuy n đ i s /t ậ v i chip vi đi u khi n chính AT89S8252 qua các vi m ch m r ng ngo i vi có th l p trình ạ ể ậ ớ i s d ng có th l p trình c dành cho ng đ ượ ể ậ ượ đi u khi n thông qua bàn phím c a thi ớ i t b ho c t ế ố ớ ặ ừ ề h n c a bài báo nên không th hi n s đ nguyên lý ạ ủ máy tính k t n i v i thi ở ể ệ ơ ồ
ầ t b thí nghi m ta có các ch 3.4. Ph n m m cho thi ề Đ đi u khi n ho t đ ng c a thi ạ ộ ể t b ế ị ủ ể ề ế ị ệ ươ ề ng trình ph n m m ầ sau:
ng trình đi u hành ươ ề • Ch Ch ng trình đi u hành đ ề ượ ươ ủ ộ ớ ế ị ươ ề ỏ ớ ượ ề ỗ c liên k t l c vi ượ ộ ạ AT89S8252, có ch c năng đi u hành ho t đ ng c a thi ứ ạ ộ c a h th ng ph c t p và khá l n nên ta s t ủ ệ ố ứ ạ nhau. Vi c chia thành các module này đ ệ t và l u trên m t file riêng và đ đ ộ ế ượ module th c hi n m i ch c năng riêng, các module trong ch ứ ự c n p vào b nh EEPROM ngoài c a vi đi u khi n ể ề ng trình đi u hành t b . Do ch ủ ề ạ ớ ch c thành nhi u module nh ghép l i v i ề ẽ ổ ứ c th c hi n trên ph n m m KEIL, m i module ầ ự i v i nhau trong m t project. M i ỗ ng trình đi u hành g m: ề ệ ế ạ ớ ươ ư ệ ỗ ồ
ị ể
ữ ệ ờ ể ữ ệ ạ ị + Module th c hi n vi c hi n th LCD. ệ ự ệ + Module ng t ngoài c a bàn phím. ắ ủ + Module qu n lí vi c đ c/ghi d li u trong EEPROM và RAM. ả ệ ọ + Module t o th i gian tr . ễ + Module đ nh nghĩa các ki u d li u. ng trình chính (Main). + Ch ươ
t và các ô nh bên trong chip vi ể ề ệ ậ ặ ớ ề + Module đi u khi n truy c p các thanh ghi đ c bi đi u khi n chính. ể + Module ng t truy n thông giao ti p v i máy tính PC. ế ề ắ ớ
• Ch ng trình quét bàn phím ươ
ạ ượ ề t b g m có 20 phím, 16 phím đ u tiên đ Ch ử ụ ng trình quét bàn phím đ ế ị ồ ể ượ ắ ế ầ ố ậ ộ ộ ố ấ ượ ế ủ ứ ứ ổ ộ ủ ế ẽ ấ ổ n thêm m t l n n a, mã c a các phím l c n p vào chip vi đi u khi n AT89C2051. Bàn ươ c s p x p theo ki u ma phím s d ng trong thi ể ế ị t b , c x p theo m t c t n i đ t chung. Trên bàn phím c a thi tr n và 4 phím cu i cùng đ 4 phím trên m t c t n i đ t chung là các phím ch c năng: SHIFT, UP, DOWN và ENTER. ộ ộ ố ấ ể ở Trong đó phím SHIFT có ch c năng thay đ i mã bàn phím làm cho bàn phím có th m ổ c nh n, nó s làm thay đ i n i dung c a m t r ng mã đ n 39 phím. Khi phím SHIFT đ ộ ượ ộ ượ c thanh ghi bên trong và làm thay đ i mã c a các phím trên bàn phím, khi phím SHIFT đ ủ i quay v giá tr cũ. ề ạ ấ ộ ầ ữ ủ ị
Giao di n bàn phím nh sau: ư ệ
Ch c năng các phím: ứ
0 /RUN
1
2
3
SHIFT
›
4 /STEP
5 /SAVE 6/MENU
7/LOAD
fl
8
9
A
B
C
D
E
F
ENTER
ằ
c. ướ c dùng đ n p d li u b ng mã Hexa. ể ạ ữ ệ ng trình. ộ ươ ng trình t ng b ừ ng trình. ươ ch ữ ươ i Menu ban đ u c a LCD ch n ch đ làm vi c. ế ộ ặ ọ ớ : Các phím đ ượ : Cho phép ch y toàn b ch ạ : Cho phép ch y ch ạ : Cho phép c t gi ấ : Cho phép tr l ầ ủ ệ ở ạ : Cho phép xem và ki m tra n i dung các ô nh ho c thanh ghi. ộ : D ch chuy n con tr màn hình hi n th LCD lên trên 1 dòng. ể ể ị ị ể ỏ : D ch chuy n con tr màn hình hi n th LCD xu ng phía d i m t dòng. ướ ể ể ỏ ố ộ ị ị 0‚ F RUN STEP SAVE MENU LOAD › fl SHIFT ổ ứ ứ c th c hi n. ự ượ ứ ệ ấ ENTER : Thay đ i ch c năng c a phím đ i v i phím có 2 ch c năng. Khi ố ớ ủ nh n phím SHIFT, ch c năng th hai c a phím đ ủ : Dùng đ ghi các k t qu nh p d li u. ả ế ứ ậ ữ ệ ể
ng trình giao di n trên máy tính PC ệ ươ ệ ụ ữ ệ ế t b v i máy tính đ c vi • Ch ủ ệ ữ
ng trình cho phép n p ch t b và có th ch y ch ươ ươ ế ị ạ ể ạ ạ Ch ng trình giao di n trên máy tính PC làm nhi m v giao ti p gi a h vi đi u ề t b ng ngôn ng Visual C++ 6.0. Giao di n c a ủ ệ ế ằ ế ị ớ ủ ng trình c a ẽ ng trình ng ứ ng trình có th download file d ng Hexa ho c file d ng ạ ặ t b và có th upload n i dung b nh c a thi ộ ế ị ng trình trên máy tính PC nh hình v . Ch ươ i s d ng vào EEPRAM ho c vào RAM c a thi ủ ể ể ươ khi n c a thi ể ch ươ ng ườ ử ụ d ng đó. Trên giao di n c a ch ụ Binary c a ch ươ ượ ư ặ ệ ủ ươ ng trình xu ng thi ố t b . ế ị ớ ủ ủ ộ
Hình 4. Giao di n giao ti p v i thi t b trên máy tính PC ế ớ ệ ế ị
3.5. S d ng thi ử ụ t b ế ị
c n p s n trên thi t b , ng L p trình tr c ti p trên thi ự ế ậ ng trình đi u hành đ ề ươ ế ị ườ ử ụ ng trình cũ, ch y ch t b ế ị ượ ạ ẵ ể ở ộ ươ ằ ươ ữ ươ ớ i s d ng có th nh p ậ ể ạ ng trình, so n ạ ng trình, xem n i dung các ô nh , thanh ghi bên ộ c hi n th b ng màn hinh LCD. • V i ch ớ l nh t bàn phím b ng mã máy, có th m m t ch ệ ừ th o, s a ch a ch ng trình, l u tr ch ữ ươ ư ả ử t b đ trong... Quá trình giao ti p v i thi ế ị ượ ế ớ ị ằ ể
máy tính PC ậ ừ ng trình l n và ph c t p thì vi c l p trình b ng mã máy t L p trình t ươ ớ ứ ạ ệ ậ ừ • V i các ch ế ị ẽ ặ ậ
ủ ầ ủ ề ạ ế ị ươ ẩ bàn phím ằ i s d ng dùng các ph n m m l p trình cho vi ề ườ ử ụ ầ ầ ng trình đi u khi n các thành ph n t ch ươ ể ề ể ế t b , v i ph n m m KEIL, ngôn ng đ l p trình có th là Assembly hay ể ữ ể ậ t b trên máy ng trình giao di n c a thi ệ ủ ng trình đi u hành trên chip t b , lúc này ch ể ạ ươ ề ố ớ ớ t b s g p khó khăn. Do đó, ng c a thi ủ đi u khi n trên giao di n c a máy tính đ vi ệ ể ề ngo i vi c a thi ế ị ớ C, sau đó xu t sang d ng file Hexa và s d ng ch ử ụ ạ tính đ n p xu ng b nh EEPROM c a thi ế ị ủ ộ vi đi u khi n AT89S8252 s th c hi n ng t truy n thông. ề ắ ẽ ự ề ể ệ
4. K t lu n ế ậ
ấ ệ ề ế ạ ượ ứ ọ ươ ế ể ỹ ớ ự ệ ộ ậ ạ ươ ớ ế ị ể ế ố ể ể ễ ố ặ ươ ự ề ệ ữ ề ạ ng án ch t o thi c các t cho vi c thí nghi m, th c hành môn h c K thu t Vi đi u khi n. Chip vi ề ệ ế ng trình tr c ti p ự t b thí ế ị ầ ử ụ i s d ng có th d dàng phát tri n, k t n i đi u khi n thêm các ề ể ầ ủ . V i đ c đi m các thành ph n c a ng t ự ớ ặ t b cho phép xây d ng và th c hi n các bài thí nghi m, th c hành ự ệ ự i các ng trình đào t o môn h c K thu t Vi đi u khi n t ể ạ ỹ ở c ta mà còn có th ph c v cho m c đích nghiên c u, m ứ ọ ụ ụ ậ ụ ể t b thí nghi m mà bài báo đ xu t đã đáp ng đ V i ph ế ị ớ yêu c u c n thi ệ ầ ầ đi u khi n AT89S8252 v i công ngh b nh Flash cho phép n p ch ề ể t b đang ho t đ ng mà không c n s d ng b n p riêng. Thi t máy tính khi thi ộ ạ ạ ộ ừ nghi m cho phép ng ệ ườ ử ụ t b bên ngoài qua các kh i vào/ra s ho c t thi ố ế ị h vi đi u khi n c a thi ế ị ệ ể ủ không nh ng phù h p v i ch ợ ươ ớ n ng cao đ ng, đ i h c tr ạ ọ ở ướ ẳ ườ r ng cho m t s các ng d ng khác. ộ ố ộ ứ ụ
TÀI LI U THAM KH O Ả Ệ
[1] Programming and Interfacing the 8051
[2]
[3]
[4]
[5] [6] , Nhà Xu t b n Khoa h c và ng và đi u khi n b ng máy tính ể ấ ả ườ ằ ọ ỹ [7] ể C u trúc và l p trình h vi đi u khi n ễ ề ắ ậ ấ ố ọ ọ ỹ [8] ườ ấ ả ỹ ử , Nhà Xu tấ ử ệ ậ Sencer Yeralan, Ashutosh Ahlwalia, Microcontroller, Addision-Wesley Pub Co; ISBN: 0201633655, 1995 KEIL software user's guidebook, C51 compiler Optimizing 8051 C Compiler and Library reference, User's guide 02.2001. Kenneth Hintz, Daniel Tabak, Microcontrollers - Architecture, Implementation, & Programming, McGraw-Hill International Editions, 1992. Kenneth J.Ayala, The 8051 Microcontrollers: Architecture, Programming and Applications, West Publishing Company, Thomson Learning; ISBN: 0314201882, 1996. I. Scott MacKenzie, The 8051 Microcontroller, Prentice Hall, 1998. Ngô Diên T p, ậ Đo l ề K thu t 1997. ậ Nguy n Tăng C ng, Phan Qu c Th ng, 8051, Nhà Xu t b n Khoa h c và K thu t, 2004. ậ ế K thu t Vi x lý và l p trình Assembly cho h vi x lý Đ Xuân Ti n, ậ ỗ b n Khoa h c và K thu t, 2001. ọ ả ậ ỹ