第10章 MCS-51 与键盘、显示器、拨盘、打印机的接 口设计
description
Transcript of 第10章 MCS-51 与键盘、显示器、拨盘、打印机的接 口设计
-
10 MCS-51 BCDLEDLCD10.1 LED LED(Light Emitting Diode):LED10.1.1 LED LED8787dp10-1
-
LEDLEDLED88LED10-1
-
10-1 LED8
03FHC0Hc39HC6H106HF9Hd5EHA1H25BHA4HE79H86H34FHB0HF71H8EH466H99HP73H8CH56DH92HU3EHC1H67DH82HT31HCEH707HF8Hy6EH91H87FH80HH76H89H96FH90HL38HC7HA77FH88H00HFFHb7CH83H
-
10-110-18LED 03FH 07EHa
-
NLEDN8N 10.1.2 LED10-24 LED
-
1. +5V adp8 10-3: 4LED
-
2. 8I/OI/O
-
10-448LED8I/O4I/O
-
10-58LED2003.10.10a)LED b)8
-
10.2 1. 10-6
-
2. 10ms3. 10mst1t3
-
10.2.2 1. 10-7a10-7b
-
10-88255AI/O
-
10-9I/O
-
10-9KEYIN:MOV DPTR,#0BFFFHBFFFHMOVX A,@DPTRANL A,#1FHMOV R3,ALCALL DELAY1010msMOVX A,@DPTRANL A,#1FH CJNE A,R3,RETURN RETURNCJNE A,#1EH,KEY2 KEY2
-
LJMP PKEY1;K1K1 PKEY1KEY2: CJNE A,#1DH,KEY3 ;S2KEY3LJMP PKEY2 ;S2PKEY2KEY3:CJNE A,#1BH,KEY4;S3KEY4LJMP PKEY3 ;S3PKEY3KEY4: CJNE A,#17H,KEY5 ;S4KEY5LJMP PKEY4 ;S4PKEY4KEY5:CJNE A,#0FH,PASS ;S5RETURNLJMP PKEY5 ;S5PKEY5RETURN:RET ;
-
2. () 10-10 I/O
-
1 2a. 10-10b3
-
12 0 b. 10-11
-
12 3 10.2.3
-
CPU 31. 1PA80PC4PC0PC311
-
2342. 10ms3. 10-13
-
1 2 310.3 / 10.3.1 I/O/ 10-148031I/O8155H6LED32/8155H8255A
-
80318155HRAM7E00H7EFFHI/O7F00H7F05H PA6 PBPC 7545274071 8031RAM 679H7EH6 8155HPBPA10-15
-
DIR MOV R0,79HMOV R3,01HR3MOV A,R3LD0 MOV DPTR,7F01HPAPA.0LEDMOVX @DPTR,AINC DPTR PBMOV A,@R0 AADD A,0DH MOVC A,@APC
-
DIR1 MOVX @DPTR,A 8155HPBACALL DL1ms 1msINC R0 MOV A,R3 AJB Acc.5,LD1 LEDRL A ; LEDMOV R3,A R3AJMP LD0 ;LD1 RET ;DSEG DB 3FH,06H,5BH,4FH,66H,6DH DB 7DH,07H,7FH,6FH,77H,7CH DB 39H,5EH,79H,71H,73H,3EH
-
DB 31H,6EH,1CH,23H,40H,03HDB 18H,00HDL1ms MOV R7,02H1msDL MOV R6,0FFHDL6 DJNZ R6,DL6DJNZ R7,DLRET212 34CPU 10-16
-
KEYIACALL KS1 JNZ LK1 LK1NI ACALL DIR , 6msKEYIAJMP KEYILK1 ACALL DIR 12msACALL DIRACALL KS1 JNZ LK2 LK2ACALL DIR6msAJMP KEYIKEYILK2 MOV R2,0FEHR2MOV R4,00HR4
-
LK4 MOV DPTR,7F01H 8155HPAMOV A,R2 ;MOVX @DPTR,A ; INC DPTR 2PCINC DPTR ;MOVX A,@DPTR 8155H PCJB Acc.0,LONE 0 LONE1MOV A,00H 0,0AAJMP LKP LKPLONEJB Acc.1,LTW0 1LTW0 2MOV A,08H 1,8AAJMP LKP
-
LTW0JB A.2,LTHR 2 LTHR3MOV A,10H 2,10HAAJMP LKPLKPLTHRJB Acc.3,NEXT 3NEXTMOV A,18H3,18HALKP ADD A,R4 =PUSH A LK3 ACALL DIR6msACALL KS16msJNZ LK3 POP A ARET
-
NEXTINC R4 1MOV A,R2 JNB Acc.7,KND KND RL A MOV R2,A R2AJMP LK4 ;KND AJMP KEYI ;KS1 MOV DPTR ,#7F01H0 PAMOV A,00H MOVX @DPTR,A ;INC DPTR DPTR2PC
-
INC DPTR 1PCMOVX A,@DPTR PCCPL A A0ANL A,0FH 4RET10.3.2 8031/ / 074LS16410-17 74LS164(0)74LS164(7):8LED 8031P3.4P3.5 P3.3TXD
-
CPU DIR SETB P3.3 P3.3=1TXD MOV R7,08H R7 MOV R0,7FH 7FH78HDL0 MOV A,@R0 AADD A,0DH MOVC A,@APC SEGTAGMOV SBUF ,A SBUF
-
DL1 JNB TI,DL1TI1CLR TI 1,TIDEC R0 DJNZ R7,DL0R70, ; 0CLR P3.3 8RET SEGTABDB 0C0H,0F9H,0A4H,0B0H,99H 0,1,2,3,4DB 92H,82H,0F8H,90H5,6,7,8,9DB 88H,83H,0C6H,0A1H,86HA,B,C,D,EDB 8FH,0BFH,8CH,0FFH,0FFHF,,P,
-
KEYIMOV A,00H0AMOV SBUF,A874LS164 00H,0KL0 JNB TI,KL0CLR TITIKL1 JNB P3.4,PK11PK1JB P3.5,KL12KL1PK1 ACALL DL1010msDL10JNB P3.4,PK2
-
JB P3.5,KL1PK2MOV R7,08H MOV R6,0FEHFEHMOV R3,00H R3MOV A,R6 KL5 MOV SBUF,AKL2 JNB TI,KL2CLR TITIJNB P3.4,PKONE11PKONEJB P3.5,NEXT 22MOV R4,08H208HR4AJMP PK3 ;
-
PKONEMOV R4,00H 100HR4PK3 MOV SBUF,00H 00H KL3 JNB TI,KL3 ;CLR TI KL4 JNB P3.4,KL4 JNB P3.5,KL4 ;MOV A,R4 ADD A,R3 ARETNEXT MOV A,R6 RL A ;MOV R6,A R6INC R3 1DJNZ R7,KL5 R718
-
AJMP KEYI 8DL10 MOV R7,0AH10msDL MOV R6,0FFHDL6 DJNZ R6,DL6DJNZ R7,DLRET10.3.3 /8279/ Intel 8279/ 64N
-
161.8279
-
2. (1)CPU DB0DB7 CPU8279 CLK8279 RESET8279* 16* CS*
-
A0=1; =0 RD*WR* IRQRAMIRQCPU2 CPURAMIRQRAMIRQ
-
SL0SL3 SL0SL34-16161SL0SL3413 RL0RL7 SHIFT CNTL/STB
-
4 OUTA0OUTA3AOUTB0OUTB3B:LED, SL0SL3 BD*:3. 82791:SL0SL34-16161:8279SL0SL341
-
2 RL0RL7 10ms8279RAM CNTLSHIFTD5D4D3D2D1D0
D7D6D5D4D3D2D1D0CNTLSHIFT
-
3RAMRAM8FIFOFIFOFIFOFIFO FIFOIRQ=1CPU4RAMRAM1616RAM4. 8279D7D6D58
-
RAM5. 8279/ 10-2082798488279RL0RL38279SL0SL274LS1381 SL0SL274LS138(2)OUTB03OUTA 038 BD*74LS138(2)
-
RAM8279RAM 10-20:8279/7FFFH7FFEH 8279INITI: SETB EX1 ; 1MOV DPTR,#7FFFH ; /DPTRMOV A,#0D1H ; D1HAMOVX @DPTR,A ; /LP: MOVX A,@DPTR ; 8279JB Acc.7,LPMOV A,#00HMOVX @DPTR,A8279RAM80318031
-
MOV A,2AHMOVX @DPTR,ASETB EAPINT1PUSH PSWPUSH DPHPUSH DPLPUSH AccMOV DPTR,7FFFH RAMMOV A,40HMOVX @DPTR,AMOV DPTR,7FFEH MOVX A,@DPTRCJNE A,37H,PRI1
-
SETB 20HPRI1POP AccPOP DPLPOP DPHPOP PSWRETIDIR MOV DPTR,7FFFH RAMMOV A,90HMOVX @DPTR,AMOV R0,70HMOV R7,08HRAM MOV DPTR,7FFEHDL0 MOV A,@R0
-
ADD A,05H05HMOVC A,@A+PC MOVX @DPTR,A RAMINC R01DJNZ R7,DL08RETADSEGDB 3FH,06H,5BH,4FH,66H,6DH DB 7DH,07H,7FH,6FH,77H,7CH DB 39H,5EH,79H,71H,73H,3EH DB 31H,6EH,1CH,23H,40H,03H DB 18H,38H,00H
-
10.4 MCS-51LCD LCDLiquid Crystal Display 10.4.1 LCD1
-
2 575103 10.4.2 LCDLCDLCDRAMROM LCDRAMROMLCDPCBLCM(LCd Module)
-
LCM1.1 57510816202432402 HD44780HD44100HD44100161HD44100162HD44100
-
10-2 1483310-2
1VSS0V2VDD5V5%3VEE4RS1:05R/W*/1 06E7~14DB0~DB78
-
10-3 (1) HD4478010-3
RSR/W* 00011011
-
RSR/W*DB7DB0 11CGRAMRAMDDRAMRAMCGRAMDDRAMCGRAMDDRAM
-
2 10-23A41HB42H
-
10.4.3 8031LCD1.8031LCD 10-24LCM8031LCM
-
1. () 10.5 MCS-51 TPP-40A/16AGP16XLF10.5.1 MCS-51TPP-40A/16A
-
1. TPP-40A/16A TPP-40ATPP-16ATPP-40A40TPP-16A162. (1)TPP-40A , 2KBCentronics ASCII128 1 667 8240
-
2 34 02562 Centronics202010-26: DB0DB7, STB* 8
-
BUSY,, ACK*, ERR*,,30s310-27
-
STB*0.5sACK*STB*BUSY2. 25600H01H0FH10H1FH20H7FHASCII80HFFHASCII10-28
-
3. TPP-40A/16AMCS-51 TPP-40A/16A TPP-40A/16ASTB* BUSYACK*,10-29 10-30I/OI/O8255APA8255A PC0BUSYP3.3
-
MCS-51RAM 3FH~4FHASCII8255A0ACCPRINT:MOV R0,#7FH R0MOV A ,#81H 8255AAMOVX @R0,A MOV R1,#3FHR1MOV R2,#0FH LOOP: MOV A,@R1 AINC R1 MOV R0,#7CH 8255AAR0 MOVX @R0,A 8255AA
-
MOV R0,#7FH 8255AR0MOV A,#0EH PC7AMOVX @R0,A PC7=0MOV A,#0FH PC7AMOVX @R0,A PC701LOOP1: MOV R0,#7EH CR0 MOVX A,@R0 C ANL A,#01H C7PC0JNZ LOOP1 BUSY,1LOOP1DJNZ R2,LOOP10.5.2 MCS-51GP161. GP16 8031:
-
:IO0IO7,CPUGP16 CS*RD* WR*BUSYGP16 CPUGP16
-
1 GP16,: D7-----D4 D3-----D0 n D7------------------ D0NN GP16,7n,n=1038 GP16
-
D7 D6 D5 D4 1 0 0 0 1 0 0 1 1 0 1 01 0 1 13. MCS-51GP16 GP16, , GP16MCS-5110-32GP168031
-
BUSY(P3.3)BUSYBUSY I/OI/OP0I/OI/O 10-32GP167FFFHGP168031MOV DPTR,7FFFHMOVX A,@DPTRGP168031MOV DPTR,7FFFHMOV A,DATA/COMMANDMOVX @DPTR,A
-
10.6 MCS-51BCD10.6.1 BCD BCDBCD10-33BCD
-
409 BCD5A4BCD A4BCDBCD 10-10BCD
-
10-10 BCD
A8421010000110001210010310011410100510101610110710111811000911001
-
10.6.2 BCD1.BCD 10-348031P1.0P1.3BCD
-
A5V,,8,4, 2,16,4,2,1BCD A,8,4,2,1,BCD2. BCD 10-34N4NI/O,I/O,4I/O, A5V,I/O, ,N,NBCD4+NI/O10-35P14BCD4BCD
-
4BCD48,4,2,1P1.3,P1.2,P1.1,P1.0P1.6,P1.5,P1.4BCD01 P1.70,P1.4P1.611BCD0,BCDBCD 10-35BCD
-
9345BCDA 4BCDRAM30H33H,40,4BCD RDSMOV R0,30H ,MOV R2,7FH P144 MOV R3,04H 4BCDLOOP MOV A,R2MOV P1,A P14MOV A,P1 BCDANL A,0FH 4
-
MOV @R0,A INC R0 MOV A,R2 0RR A MOV R2,A DJNZ R3,LOOP RET