Ế Ạ Ử Ụ

Ệ Ể

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

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. ọ ả ậ ỹ