Đăng ký Đăng nhập
Trang chủ Kỹ thuật - Công nghệ Tự động hóa Bài giảng mở rộng hệ thống cho vi điều khiển 8051...

Tài liệu Bài giảng mở rộng hệ thống cho vi điều khiển 8051

.PDF
10
147
128

Mô tả:

CHѬѪNG 5: MӢ RӜNG Hӊ THӔNG CHO VĈK 8051 BÀI 1: Mӣ rӝng vào/ra &+ѬѪ1*5: MӢ RӜNG CHO 8051 Bài 1: Mӓ rӝng vào/ra 1 Ĉһt vҩn ÿӅ &+ѬѪ1*5: MӢ RӜNG CHO 8051 Bài 1: Mӓ rӝng vào/ra 2 Vi mҥch chӕt 74373 hoһc 74374 &+ѬѪ1*5: MӢ RӜNG CHO 8051 Bài 1: Mӓ rӝng vào/ra 3 Sѫ ÿӗ ghép nӕi vӟi 8051 &+ѬѪ1*5: MӢ RӜNG CHO 8051 Bài 1: Mӓ rӝng vào/ra 4 Vi mҥch PPI 8255A • • 8255A là vi mҥch vào/raÿDQăQJ (Programmable Peripheral Interface) có thӇ ghép nӕi vӟi rҩt nhiӅu loҥi vi xӱOê, vLÿLӅu khiӇn. Có 24 I/O: – Có thӇ lұp trình riêng rӁ thành 2 nhóm 12 vào/ra – Có 3 chӃÿӝ hoҥWÿӝng khác nhau. – 7ѭѫQJWKLFKKRàn toàn vӟi chuҭn TTL. • • • TӕFÿӝ cao, cho phép lұp xóa bit trӵc tiӃp Enhanced Control Word Read Capability 2.5mA Drive Capability on All I/O Ports &+ѬѪ1*5: MӢ RӜNG CHO 8051 Bài 1: Mӓ rӝng vào/ra 5 Vi mҥch PPI 8255A (ÿóng vӓ) &+ѬѪ1*5: MӢ RӜNG CHO 8051 Bài 1: Mӓ rӝng vào/ra 6 Vi mҥch 8255A (chӭc năng chân) VCC Nguӗn cҩp, +5V GND GROUND. Nên nӕi mӝt tө lӑc khoҧng 1uF giӳa Vcc vӟi GND D0-D7 I/O DATA BUS: Bus dӳ liӋu 2 chiӅu, 3 trҥng thái, nӕi vӟi bus dӳ liӋu hӋ thӕng. RESET RESET: Mӭc “high” trên chân Reset sӁ xóDWKDQKJKLWKDQKJKLÿLӅu khiӇn và ÿһt tҩt cҧ các cәng là cәng vào. CS CHIP SELECT: mӭc thҩp trên chân chӑn chip sӁ cho phép bus dӳ liӋu cӫa 8255A giao tiӃp vӟi CPU. RD READ: mӭc thҩSWUrQFKkQÿLӅu khiӇQÿӑc sӁÿLӅu khiӇn 8255AÿѭDWK{QJWLQ trҥng thái hoһc dӳ liӋu ra bus dӳ liӋu. WR WRITE: mӭc thҩSWUrQFKkQÿLӅu khiӇn ghi sӁÿLӅu khiӇn 8255A nhұn tӯÿLӅu khiӇn hoһc dӳ liӋu tӯ bus dӳ liӋu. A0-A1 ADDRESS: Các tín hiӋXÿӏa chӍ, kӃt hӧp vӟi các tín hiӋXÿLӅu khiӇQÿӇÿӑc hoһc ghi mӝt trong các cәng hoһFWKDQKJKLÿLӅu khiӇn cӫa 8555A. A0 và A1 WKѭӡQJÿѭӧc nӕi vӟi cáFELWÿӏa chӍ thҩp nhҩt cӫDEXVÿӏa chӍ hӋ thӕng. PA0-PA7 I/O PORT A: Cәng vào và ra 8-bit. Có mҥch giӳ mӭc cao và giӳ mӭc thҩp.. PB0-PB7 I/O PORT B: Cәng vào và ra 8-bit. Có mҥch giӳ mӭc cao. PC0-PC7 I/O PORT C: Cәng vào và ra 8-bit. Có mҥch giӳ. &+ѬѪ1*5: MӢ RӜNG CHO 8051 Bài 1: Mӓ rӝng vào/ra 7 Vi mҥch PPI 8255A (cҩu trúc) &+ѬѪ1*5: MӢ RӜNG CHO 8051 Bài 1: Mӓ rӝng vào/ra 8 Vi mҥch 8255A - Các chӃÿӝ hoҥt ÿӝng Mode 0 (vào/ra FѫEҧn). ThiӃt lұp mӛi cәng là cәng vào hoһFUDÿѫQWKXҫn. Không yêu cҫu bҳt tay, dӳ liӋXÿѭӧFÿӑc hoһc ghi vӟi cәng. Mode 0 thiӃt lұp: • • • – – – – – Hai cәng 8-bit (PA và PB) và hai cәng 4-bit (PCL và PCH) Mӛi cәng có thӇ và vào hoһc ra Cәng ra có chӕt Vào không có chӕt Có thӇ thiӃt lұp 16 cҩu hình vào/ra &+ѬѪ1*5: MӢ RӜNG CHO 8051 Bài 1: Mӓ rӝng vào/ra 9 Vi mҥch 8255A - Các chӃÿӝ hoҥt ÿӝng • • • Mode 1 - (Vào/ra có bҳt tay). ThiӃt lұp chӭFQăQJYào/ra dӳ liӋu tӯ mӝt cәng vӟi các tín hiӋu bҳt tay. Port A và port B dùng các tín hiӋXWUrQSRUW&ÿӇ phát hoһc nhұn các tín hiӋu bҳt tay. Mode 1 thiӃt lұp: – – – – Hai nhóm (Group A và Group B) Mӛi nhóm gӗm mӝt cәng 8-bit và mӝt cәQJÿLӅu khiӇn 4-bit . Cәng 8-bit có thӇ là cәng vào hoһc cәng ra. Cҧ vào vàUDÿӅu có chӕt. Cәng 4-ELWÿѭӧc dùQJÿӇÿLӅu khiӇn và báo trҥng thái cӫa cәng 8bit. &+ѬѪ1*5: MӢ RӜNG CHO 8051 Bài 1: Mӓ rӝng vào/ra 10 Vi mҥch 8255A - Các chӃÿӝ hoҥt ÿӝng Mode 2 (Bus I/O hai chiӅu có bҳt tay) ThiӃt lұp mӝt bus 8-ELWEXVÿӇ truyӅn thông dӳ liӋu. TÍn hiӋu “Hand shaking”ÿѭӧc tҥRUDÿӇÿLӅu khiӇn bus WѭѫQJWӵ mode 1 Có chӭFQăQJFҩm/cho phép ngҳt và tҥp ngҳt. Mode 2 thiӃt lұp: • • • • – – – – ChӍ thӵc hiӋn vӟi Group A. Mӝt bus 8-bit, hai chiӅu (Port A) và mӝt cәQJÿLӅu khiӇn 5-bit (Port C) Cҧ vào vàUDÿӅu có chӕt. Cәng 5-bit (Port C)ÿѭӧc dùQJÿӇÿLӅu khiӇn và báo trҥng thái cӫa bus 8-bit (Port A). &+ѬѪ1*5: MӢ RӜNG CHO 8051 Bài 1: Mӓ rӝng vào/ra 11 Vi mҥch 8255A –ĈLӅu khiӇn cѫ bҧn A1 A0 RD WR 0 0 0 1 0 Ĉӑc tӯ Port A lên bus dӳ liӋu 0 1 0 1 0 Ĉӑc tӯ Port B lên bus dӳ liӋu 1 0 0 1 0 Ĉӑc tӯ Port C lên bus dӳ liӋu 1 1 0 1 0 Ĉӑc tӯ thanh ghi CW lên bus dӳ liӋu 0 0 1 0 0 Ghi tӯ bus dӳ liӋu ra Port A 0 1 1 0 0 Ghi tӯ bus dӳ liӋu ra Port B 1 0 1 0 0 Ghi tӯ bus dӳ liӋu ra Port C 1 1 1 0 0 Ghi tӯ bus dӳ liӋu xuӕng thanh ghi CW x x 1 1 0 Bus dӳ liӋu thҧ nәi x x x x 1 Bus dӳ liӋu thҧ nәi &+ѬѪ1*5: MӢ RӜNG CHO 8051 CS Thao tác Bài 1: Mӓ rӝng vào/ra 12 Vi mҥch 8255A – ThiӃt lұp chӃÿӝ &+ѬѪ1*5: MӢ RӜNG CHO 8051 Bài 1: Mӓ rӝng vào/ra 13 Vi mҥch 8255A – ThiӃt lұp chӃÿӝ • D0: thiӃt lұp cho PCL (PC0 – PC3): – • ; 1: mode 1 1: là cәng vào ; 0: là cәng ra 1: là cәng vào ; 0: là cәng ra D6,D5: thiӃt lұp chӃÿӝ cho nhóm A: – • 0: mode 0 D4: thiӃt lұp cho PA (PA0 – PA7): – • ; 0: là cәng ra D3: thiӃt lұp cho PCH (PC4 – PC7): – • 1: là cәng vào D2: thiӃt lұp chӃÿӝ cho nhóm B: – • ; 0: là cәng ra D1: thiӃt lұp cho PB (PB0 – PB7): – • 1: là cәng vào 00: mode 0 ; 01: mode 1 D7: cӡÿһt chӃÿӝ: &+ѬѪ1*5: MӢ RӜNG CHO 8051 ; 1x: mode 2 1: tích cӵc Bài 1: Mӓ rӝng vào/ra 14 Ghép nӕi trӵc tiӃp 8255A vӟi 8051           3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3  ,17 ,17   7 7  ($93   3 3 3 3 3 3 3 3                               ' ' ' ' ' ' ' ' 5' :5 $ $ &6 5(6(7 3$ 3$ 3$ 3$ 3$ 3$ 3$ 3$  *1' ; ;    5(6(7 5' :5 5;' 7;' $/(3 36(1 3% 3% 3% 3% 3% 3% 3% 3% 3& 3& 3& 3& 3& 3& 3& 3&             ,QSXW GHYLGH                 2XWSXW GHYLFH &+ѬѪ1*5: MӢ RӜNG CHO 8051 Bài 1: Mӓ rӝng vào/ra 15 Ví dөÿLӅu khiӇn 8255A • • ViӃWFKѭѫQJWUìQKÿӇÿӑc thiӃt bӏ vào ӣ cәng PA, xӱ lý và gӱi thông tin ra thiӃt bӏ ra ӣ cәng PC. %ѭӟc 1: ghi vàR&:ÿӇ thiӃt lұp: – – – – • • • PA là cәng vào: PC là cәng ra Các cәQJÿӅu làm viӋc ӣ mode 0 Æ CW = 10010000B = 90H %ѭӟc 2: ÿӑc cәng PA chuyӇn vào 8051 %ѭӟc 3: xӱ lý theo yêu cҫu thuұt toán %ѭӟc 4: gӱi dӳ liӋXÿã xӱ lý ra PC. &+ѬѪ1*5: MӢ RӜNG CHO 8051 Bài 1: Mӓ rӝng vào/ra 16 Ví dөÿLӅu khiӇn 8255A &KѭѫQJWUình: Mov Mov Mov Mov Acall Mov Mov P0,#90h ; CW = 10010000b P2,#00001101b ; CS=0, A1=1, A0=1, WR=0, RD=1Æ ghi vào CW P0,#0FFh ÿһt P0 là cәng vào P2,#00000010b ; CS=0, A1=0, A0=0, WR=1, RD=0Æÿӑc tӯ3$ xuly JRLFKѭѫQJWUình con xӱ lý dӳ liӋu P0,A ÿһt dӳ liӋXÿã xӱ lý chӭa tҥi thang ghi A ra P0 P2,#00001001b ; CS=0, A1=1, A0=0, WR=0, RD=1Æ ghi ra PC &+ѬѪ1*5: MӢ RӜNG CHO 8051 Bài 1: Mӓ rӝng vào/ra 17 &+ѬѪ1*5: MӢ RӜNG CHO 8051        Ghép nӕi 8051 vӟi nhiӅu 8255   • Bài 1: Mӓ rӝng vào/ra 18 Ghép nӕi 8051 vӟi nhiӅu 8255 • Dùng chung bus dӳ liӋu: P0 cӫa 8051 ghép nӕi vӟi cҧ data bus cӫa cҧ 4 vi mҥch 8255 DùQJFKXQJEXVÿӏa chӍ: P2.3 và32.3ÿLӅu khiӇn A1 và A0 cӫa cҧ 4 vi mҥch 8255. DùQJFKXQJEXVÿLӅu khiӇn : P2.1 và32.0ÿLӅu khiӇn chân RD và WR cӫa cҧ 4 vi mҥch 8255. Các chân CS (chӑn chip) cӫa các 8255 ÿѭӧFÿLӅu khiӇn riêng rӁ: P2.4 (CS0)ÿLӅu khiӇn CS cӫa 8255(1) … Mӛi thӡLÿLӇm chӍ có tӕLÿDPӝt 8255 (mӝt trong 4FKkQ CS)ÿѭӧFÿһt = 0 (cho phép) ÆFKkQ&6ÿLӅu khiӇn 4 vi mҥch 8255 Æ mӣ rӝng ghép nӕLÿѭӧc vӟi 12 cәng 8 bit. • • • • &+ѬѪ1*5: MӢ RӜNG CHO 8051 Bài 1: Mӓ rӝng vào/ra 19 Ví dөÿLӅu khiӇn nhiӅu 8255A • &KѭѫQJWUình: Mov Mov Mov Mov Acall Mov Mov P0,#90h ; CW = 10010000b P2,#00001101b ; CS=0, A1=1, A0=1, WR=0, RD=1Æ ghi vào CW P0,#0FFh ÿһt P0 là cәng vào P2,#00000010b ; CS=0, A1=0, A0=0, WR=1, RD=0Æÿӑc tӯ3$ xuly JRLFKѭѫQJWUình con xӱ lý dӳ liӋu P0,A ÿһt dӳ liӋXÿã xӱ lý chӭa tҥi thang ghi A ra P0 P2,#00001001b ; CS=0, A1=1, A0=0, WR=0, RD=1Æ ghi ra PC &+ѬѪ1*5: MӢ RӜNG CHO 8051 Bài 1: Mӓ rӝng vào/ra 20
- Xem thêm -

Tài liệu liên quan