第九章 应用系统配置及 接口技术
DESCRIPTION
第九章 应用系统配置及 接口技术. 9.1 人 - 机通道配置与接口技术 9.2 前向通道中的 A/D 转换器及接口技术 9.3 系统后向通道配置及接口技术. 9.1 人 - 机通道配置与接口技术. 9.1.1 键盘接口及处理程序 键盘是一组按键的集合,它是最常用的单片机输入设备,操作人员可以通过键盘输入数据或命令,实现简单的人机通信。 键是一种常开型按钮开关,平时 ( 常态 ) 键的二个触点处于断开状态,按下健时它们才闭合 ( 短路 ) 。. 任务 :可靠而快速的实现键信息输入与键功 能任务。 解决下列问题:. - PowerPoint PPT PresentationTRANSCRIPT
-
9.1 -9.2 A/D9.3
-
9.1 -9.1.1 ()()
-
1. 9-1b510ms
-
9-1 ab89C51
-
RS CPU
-
2.
-
3. 4.
-
1) DASII 2)
-
1 9-2 I/O
-
9-2 89C51
-
P0FP7FJMP PROM0PROM7
-
(I0P1)START: MOV A#0FFH P11 MOV P1A MOV AP1 JNB ACC.0P0F 0P0F JNB ACC.1P1F 1P1F JNB ACC.2P2F 2P2F JNB ACC.3P3F 3P3F JNB ACC.4P4F 4P3F
-
JNB ACC.5P5F 5P5F JNB ACC.6P6F 6P6F JNB ACC.7P7F 7P7F JMP START P0F: JMP PROM0 P7F: JMP PROM7
-
PROM0 0 . JMP START 0PROM1 1 . JMP START PROM7 7 . JMP START 07
-
2 I/O9-3 ()()NMNM
-
9-3
-
() 441 I/O()()()()()00H()()A()()1
-
2 110
-
3 : 01 () = *+ () = +
-
(10ms)CPU (INT0INT1)CPU CPU
-
1 P2339-6 44 P2359-7 0FEH R0R2
-
DECODEA
-
AKEY: MOV P1#0F0H ; MOV R7#0FFH ;KEY1DjNZ R7KEY1 ; MOV AP1 ;P1 ANL A#0F0H ; CPL A ; JZ EKEY ; LCALL DEL20ms 20ms SKEY: MOV A, #00H ; MOV R0, A ;0 MOV R1, A ;0 MOV R3,#0FEH ;
-
SKEY2: MOV A,R3 MOV P1,A ;41 NOP NOP NOP ;P1 MOV A,P1 ; MOV R1,A ; ANL A,#0F0H ; CPL A ;S123 JNZ SKEY3 ; INC R0 ;1
-
SETB C MOV A, R3 ;R3 RLC A MOV R3, A ; R3 MOV A, R0 CJNE A, #04H,SKEY1 ;4 EKEY: RET
-
SKEY3: MOV AR1 JNB ACC.4,SKEY5 JNB ACC.5,SKEY6 JNB ACC.6,SKEY7 JNB ACC.7,SKEY8 AJMP EKEYSKEY5: MOV A, #00H MOV R2, A ;0 AJMP DKEYSKEY6: MOV A, #01H MOV R2, A ;1 AJMP DKEY
-
SKEY7: MOV A, #02H MOV R2, A ;2 AJMP DKEYSKEY8: MOV A, #03H MOV R2, A ;3 AJMP DKEYDKEY: MOV A, R0 ACALL DECODE AJMP EKEY
-
DECODE: MOV A, R0 ; MOV B,#04H ; MUL AB ;* ADD A, R2 ;*+ RET
-
2 CPU 9-689C51P144P14P14P1.4P1.7
-
P1.0P1.3P1.4P1.7INT0/INTlCPUCPU
-
9-6 9-7 89C51
-
012EF 161610H1FHAAABBBPPP
-
ORG 8000HKEYADRMOV ABUFF ;A CJNE A#0FHKYARD1 AJMP DIGPRO ;FKYARD1JC DIGPRO ;FKEYTBLMOV DPTR#JMPTBL ; CLR C ; SUBB A#10H ;10HFH16 RL A ;(A)2,(A)02 ; 4 JMP @A+DPTR ;
-
JMPTBL: AJMP AAA AJMP BBB AJMP CCC AJMP DDD AJMP EEE AJMP FFF AJMP GGG 216 AJMP HHH AJMP III (A)=0,2,4,6, .. AJMP JJJ AAA,BBB,CCC, DDD,PPP AJMP KKK AJMP LLL AJMP MMM AJMP NNN AJMP OOO AJMP PPP
-
9.1.2 LEDLEDLCDCRT
-
LEDLED8(K0)(K0)
-
9-8 LED
-
9-1 LED 8LED0F(adp
-
LED LED 1LED ()7abc78abcdefgdp
-
LED9-9(K0)(K0)5v(adp)8 I/O
-
2LED LED8I/O()K0I/O9-106LED 6IO6LEDLED
-
9-10 6 LED
-
I/O()I/O(LED)
-
9-11 6
-
P0P166754527406)8155 PBLEDPBLED7407OCLED1ms1020ms6LED1. LED8155
-
9-12 6LED
-
2 . 1 LED2
-
3DISDISMOV R0#7EH R0 MOV R2#01H MOV AR2 MOV DPTR#TAB DPTRLP0MOV P1A MOV A@R0 MOVC A@A+DPTR MOV P0A
-
ACALL D1MS DEC R0 1 MOV AR2 JB ACC.5LP1 RL A MOV R2A AJMP LP0LP1RET
-
TAB DB 3FH06H5BH4FH66H6DH DB 7DH07H7FH6FH77H7CH DB 39H5EH79H71H40H00HD1MSMOV R7#02H 1msDL MOV R6#0FFHDL1 DJNZ R6DL1 DJNZ R7DL RET
-
9.1.3/LED8155 18155 I/O 815512PC64
-
LED2 6LED8155PBPAPAPC0PC2
-
9-14 8155
-
KD1: MOV A, #03H ;8155,PA,PB ;PC MOV DPTR, #7F00H MOVX @DPTR, AKEY1: ACALL KS1 JNZ LK1 ACALL DIS ;6ms AJMP KEY1 LK1 ACALL DIS ACALL DIS ;12ms ACALL KS1
-
JNZ LK2 ACALL DIS ;6ms AJMP KEY1 LK2: MOV R2, #0FEH MOV R4, #00H LK4: MOV DPTR, #7F01H MOV A, R2 MOVX @DPTR, A INC DPTR INC DPTR MOVX A, @DPTR
-
JB ACC.0, LONE MOV A, #00H AJMP LKP LONE: JB ACC.1, LTWO MOV A, #08H AJMP LKP LTWO: JB ACC.2, LTHR MOV A, #10H AJMP LKP LTHR: JB ACC.3, NEXT MOV A, #18H
-
LKP: ADD A, R4 PUSH ACC LK3: ACALL DIS ACALL KS1 JNZ LK3 POP ACC RET NEXT: INC R4 MOV A, R2 JNB ACC.7, KND RL A MOV R2, A
-
AJMP LK4KND: AJMP KEY1KS1: MOV DPTR, #7F01H MOV A, #00H MOVX @DPTR, A INC DPTR INC DPTR MOVX A, @DPTR CPL A ANL A, #0FH RET
-
9.1.4 /LED 89C5l0RXD(P3.0)()TXD(P3.1)74LSl64/LED
-
P1.2=1 0fosc/12fosc8031fosc6MHz500kb/s2us
-
74LSl648mACPUCPULED01
-
KEY: MOV A, #00H ;0 MOV SBUF, AKL0: JNB TI, KL0 ;8 CLR TI ;KL1: JNB P1.0, PK1 ;1 JB P1.1, KL1 ;2PK1: ACALL D10MS ;,10ms, JNB P1.0, PK2 ; JB P1.1, KL1PK2: MOV R7, #08H ;
-
MOV R6, #0FEH ;0 MOV R3, #00H ;PL5: MOV A, R6 ; MOV SUBF, AKL2: JNB TI, KL2 CLR TI JNB P1.0, PK4 ;1 JNB P1.1, PK5 ;2 MOV A, R6 ; RL A
-
MOV R6,A INC R3 ;1 DJNZ R7,PL5 ;8 RET ;PK5: MOV R4,#08H ;2R408H AJMP PK3 ;PK4: MOV R4,#00H ;1R400HPK3: MOV A,#00H ; MOV SBUF,AKL3: JNB TI,KL3 CLR TI
-
KL4: JNB P1.0, KL4 JNB P1.1, KL4 MOV A, R4 ; ADD A, R3 SUBB A, #0AH ; JNC KL6 ; MOV DPTR, #TABL ;DPTR ADD A, #0AH ; MOVC A, @A+DPTR ; MOV R0, 60H ;
-
MOV @R0, A ; INC R0 ;1 CJNE R0, #60H, KD ; MOV 60H, #58H ; SJMP KD1KD: MOV 60H, R0KD1: ACALL LED ; RETKL6: MOV B, #03H ; MUL AB
-
MOV DPTR, KTAB ;DPTR JMP @A+DPTR ;KTAB: LJMP K1 ;K1,K3 LJMP K3 ; TABL: DB C0H, F9H, A4H, B0H ;09 DB 99H, 92H, 82H, F8H DB 80H, 90HLED: SETB P1.2 ; MOV R7, #08H ;R7
-
MOV R0, #58H ; LED1: MOV A, @R0 ; MOV SBUF, ALED2: JNB TI, LED2 CLR TI INC R0 ; DJNZ R7, LED1 ; CLR P1.2 ; RET
-
9.2 A/D A/D A/DADMCS-51AD
-
AD 1 A/DBCD 2 A/DA/DA/D()
-
3 A/DA/DA/D 4 A/DA/D
-
9.2.1 AD A/DA/D
-
9-16 AD
-
(D7)10D/AUNUxUxUND7lUxUND70D61DAUxD010EOC88
-
200500ns D/A 0.01% ADADC 0809AD574A
-
ADC 0809A/D ADC0809CMOS8A/D2888A/D ADC0809
-
9-17 ADC0809
-
IN0IN78D0D78STARTA/DALE
-
OE CLK640kHz EOCEOCEOCA/D VREF(+)VREF(-)A/D VccCMOS+5V+15V
-
89-281 ADC0809100sCPU
-
9-2 8
-
ADC08099-18ALE1(ADDAADDBADDCALE0STARTADC0809A/DEOC01OE0809
-
9-18 ADC0809
-
89C51ADC 0809 ADC 080989C51 89C51ADC 0809
-
9-19 89C51ADC 080989C51 P2.7
-
ADC 0809ADDAADDBADDCALESTARTA/DMOVX DPTRAWRALESTARTA/DA/DEOCMOVX ADPTRRDOE8CPU
-
9-18A0HA7HRAM ORG 0000H AJMP MAIN ORG 0013H AJMP INT1MAIN: MOV R0#0A0H MOV R2#08H MOV DPTR#7FF8H P2.70IN0
-
SETB IT1 SETB EX1 SETB EA MOVX @DPTRA A DHERESJMP HERE
-
INT1: MOVX A@DPTR MOVX @R0A INC R0 INC DPTR DJNZ R2DONE RETI DONE: MOVX @DPTRA RETI
-
9-2830HRAM
MAINMOV DPTR#0FEF8H ;P2.00 ; IN0 MOV R1#30H ; MOV R7#08H ;READMOVX DPTRA ;AD
-
HEREJB P3.3HERE M0VX ADPTR M0VX R1A INC R1 INC DPTR DJNZ R7READ ..
-
9.2.2. AD A/D Vi 0VT1Vi( )Vi
-
ViVRVRT1()T2 V = T2 / T1VR
-
9-20 AD
-
T2(b)ViT1A/DVi A/D A/DMC14433(3 ),ICL 7135(4)ICL7l09(12)ICL7104(16)
-
MCl4433 MCl4433 ADAD MCl4433BCD310s
-
1/1999(11 ) 1.999V1999mV 310s 50150kHz 100M1.
-
2V200mV( 1999V1999mV)BCD 4.5V8V9V16V8mw5V
-
9-21 MCl44339-22 MCl44332.
-
9-23 MC14433
-
MCl4433VAGVxVREF( )VR(+2V+200mv)VxR1R1C1C1 (a)2VC10.1uFR1470k (b)200mVC10.1uFR127k
-
C01C02C00.1P DUDUEOCA/D EOCA/DEOC1/2 OR Vx VR
-
DS1DS4DS1DS41828-38 Q0Q3BCDQ0Q3DS2DS4BCD09DS1Q0Q301
-
9-3 DS1Q0Q3
-
Q3Q00Q30lQ310Q3Q01Q30Q311.999V1.999V179mVQ2Q21Q20
-
89C51MCl4433 MCl4433A/DBCDQ0Q3DSlDS4MCS-51I/OI/O 1. 9-24MCl443389C51MC14433EOCDUMCl4433EOC89C51MCl4433BCD
-
9-24 MCl44338031C02C01CLK0CLK1R1/C1R15G140389C51
-
2. A/DA/DRAM2CH2DH2CH2DH: INTSETB IT1 INT1 MOV IE#84H CPUINT1
-
1INT1MOV AP1 A/DA JNB ACC.4INT1 DS1 JB ACC.0ERR ERR JB ACC.2L1 SETB 67H 1 AJMP L2
-
L1CLR 67H 0L2JB ACC.3L3 01 SETB 64H 1 AJMP L4L3CLR 64H 0L4MOV AP1 JNB ACC.5L4 DS2 MOV R02CH XCHD A@R0 2CH4L5MOV AP1 JNB ACC.6L5 DS3
-
SWAP A 4 INC R0 2DH MOV @R0A 2DH4L6 MOV AP1 JNB ACC.7L6 DS4 XCHD A@R0 2DH4 RETI ERRSETB 10H RETI
-
9.2.3 A/DTLC2543
TLC2543TI12A/DI/O
-
TLC2543 112A/D81216 210us 311 43 5/66kps; 61LSBmax
-
789/10/1112
-
1234567891011121314151617181920AIN0AIN1AIN2AIN3AIN4AIN5AIN6AIN7GNDAIN8VccEOCI/O CLOCKDINDOUTCSREF+REF-AIN9AIN109-25 TLC2543 TLC2543 1
-
2
-
TLC2543 1CS
-
2CS9-28 CS
-
TLC2543 1
-
94
-
TLC254389C51SPI 1
-
2 1TLC254389C518TLC254389C5118AIN01TLC2543:MOV R4, #04H; ,AIN0,8 MOV A, R4 CLR R1.3; CSTLC2543 MSB: MOV R5, #08H; 8
-
LOOP:MOVP1, #04H; P1.2 MOVC, P1.2; TLC2543 A/D8 ; C CLRA; MOVP1.1, C; ACC ; DINTLC2543 SETBP1.0; NOP CLRP1.0 DJNZR5, LOOP MOVR2, A; A/DR2 RET
-
2TLC254389C5112 TLC2543AIN01089C51R2 89C5112MHz12 00H
ORG 0100HMOV P1,#04H ;P1.2MOV R6,#0AH ;10MOV R0,#2FH ;CLR P1.0 ;I/OSETB P1.3 ;CSACALL TLC2543 ;SJMP $
-
TLC2543:MOVA,#00H; ;IN0,12 CLRP1.3;CS MOVR5,#0CH;LOOP: MOVP1,#04H;P1.2MOVC,P1.2; RLCA;A ; ;CMOVP1.1,C;2543SETB P1.0;I/ONOPCLRP1.0;I/O
-
CJNE R5,#04,LOP1 ; MOV @R0,A ;8RAM INC R0 CLR ALOP1: DJNZ R5,LOOP ;4 ANL A,#0F MOV @R0,A RET
-
3TLC254389C5116 TLC254389C51MSByteR2LSByteR3ORG 100HSTART:MOV SP,#50H;MOV P1,#04H;P1CLR P1.0;I/O CLOCKSETB P1.3;CSMOV A,#0FFHACALL TLC2543ACALL STORELJMP START
-
TLC2543:MOV R4,#0CH ;R4 ;AIN0,16 MOV A,R4 ;ADW0: CLR P1.3 ;CS JB ACC.1,LSB ;D11 ;MSB: MOV R5,#08 ;LOOP1 MOV C,P1.2 ;C RLC A ;A ;C MOV P1.1,C ; SETB P1.0 ;I/O CLOCK
-
NOPCLR P1.0;I/O CLOCKDJNZ R5,LOOP1;8MOV R2,A;R2MOV A,R4;AJB ACC.1,RETURN;D11 ; LSB:MOV R5,#08 ;LOOP2:MOV C,P1.2RLC AMOV P1.1,CSETB P1.0
-
NOPCLR P1.0DJNZ R5,LOOP2MOV R3,A;R3MOV A,R4JB ACC.1,MSB;D11;RETURN:RETSTORE:MOV A,R4;AANL A,#0F0H ;SWP A
-
MOVB,#02HMULABADDA,#30HMOVR1,AMOVA,R2MOV@R1,A; RAM;30H,32HINCR1MOVA,R3MOV@R1,A; RAM;31H,33HRETEND
-
9.3 , 1. 2. 3.
-
9.3.1
-
. 1
-
2 1 SSR
-
2) 89C51
-
1
-
289C51
-
9.3.2 D/A D/ACPUD/AD/AD/A
-
D/A D/AD/AR-2R TD/AD/A
-
1D/A D/A
-
4D/A8421Rf/8RRf/4RRf/2RRf/R1VR
-
9-36 D/AI2I3I1VR/ RVR/ RVR/ RVR/ 2RVR/ 4RVR/ 8R
-
2R-2R TD/A D/AR-2R T 44R-2R8 d3d2dld0
-
9-37 TD/AI1I2I11I12I13I14
-
D/AD/A D/ARfVRD/A
-
D/AD/A100msD/AD/A D/ACPU
-
9-38 D/A
-
CPUD/A74LS27374LS374Intel-8255A
-
3DA 1 nD/A1/2n
-
2 D/A 3 D/ALSB/2()
-
4 D/AD/A/(LSB)LSB/2 5 D/A
-
D/ADAC0832 DAC 08328D/A9-39 1. DAC0832 8 D0D7 LE1LE2
-
9-39 DAC 0832LE1VCCDGND
-
2. DI0DI7TTL90nsILE CSWR1LE1ILECSWR1 XFERWR2DACDACLE2XFERWR2
-
Iout1: 1Iout1 Iout2: Iout1 Rfb Vcc( -5V+5V) Vref(-10V-10V) AGND DGND
-
3. DAC0832 1) 8 2) 1s 3) 4) 5) (+5v+15V) 6) 200mW 7) TTL
-
4. DAC083289C51 DAC 08329-40
-
DAC0832(1)9-41 DAC0832
-
DAC0832 CS()CSWRlD/A
-
(2) 9-42 8031083289C51
-
D/AD/ADAC083289C51 9-41ILE+5vCSXFERP2.7DAC2FFFHWR1WR289C51WRCPU0832DAC0832
-
DAC08329-43 DAC0832
-
9-3STARTMOV DPTR#2FFFH ;DAC 0832 STEPlMOV A#00H ;00H STEP2MOVX @DPTRA ;DA INC A ;A1 CJNE A#dataSTEP2 ; AJMP STEPl ;
-
9-4STARTMOV DPTR#2FFFH ;DAC 0832 STEPPMOV A#dataH ; MOVX DPTRA ;DA ACALL DELH ; MOV A#dataL ; MOVX DPTRA ;DA ACALL DELL ; SJMP STEP ;
-
9-5 STARTMOV DPTR#2FFFH ;DAC 0832 STEP1MOV A#00H STEP2MOVX DPTRA ;DA INC A ;A1 CJNE A#dataSTEP2 ; STEP3:DEC A ;A1 MOVX DPTRA ;DA CJNE A#01HSTEP3 ;01H AJMP STEP1 ;
-
9-6STARTMOV DPTR#2FFFH ;DAC 0802 STEPMOV R6#20H ; MOV R4#05H ; MOV A#00H ;A L00P1MOVX DPTRA ;D/A ACALL DELAY ; ADD AR6 ; DJNZ R4L00P1 ; AJMP STEP
-
(3) D/AD/A D/ACPUD/ACPUD/AD/ADAC
-
9-44 89C51083289C51
-
89C51MOV DPTR#08FFFHMOV A#XdataMOVX @DPTRA ;Xdata1#0832MOV DPTR#0A7FFHMOV A#Ydata MOVX @DPTRA ;Ydata2#0832MOV DPTR#2FFFHMOVX @DPTRA ;1#2# ;DACD/A ;XY
-
D/A - AD7520 AD752010D/ACMOST16D/A1. AD7520
-
9-39 D1D10D1Dl0 Vcc(515v VR(-10V+10V) RF GND Iout1Iout2
-
9-45 AD7520
-
89C51AD 7520AD752010I/O74LS3778D0BFFFH74LS74D7FFFH80318102. AD752089C51
-
9-46 8031AD 7520 89C51
-
MOV DPTR#7FFFH ;74LS74 MOV A#dataH ;2A MOVX DPTRA ;274LS74 MOV DPTR#0BFFFH ;74LS377 MOV A#dataL ; 8A MOVX DPTRA ;874LS377 ; 274LS74
-
9.3.3 D/ATLC5615 TLC56153/TLC5615
-
TLC5615 110CMOS 25V 33SPI 42 5 612.5s 7DAC 0 81.75mw
-
TLC5615 1TLC5615
-
116122TLC561512102xx,xxMSBLSB
-
16MSB4
210DAC3DAC2
-
2
-
9-5 I/O
-
TLC5615
-
TLC5615/
-
TLC561589C51
-
2 89C5112R0R1
-
CLR P3.0 ;MOV R2#4 ;4MOV A,R0 ;4SWAP A ;A4 ;LCALL WR-data ;DIN4MOV R2,#8 ;8MOV A,R1 ;8LCALL WR-data ;DIN8CLR P3.1 ;SETB P3.0 ;12RET
-
WR-dataNOP;LOOP: CLR P3.1; RLC A;CY MOV P3.2,C;TLC5615 SETB P3.1; DJNZ R2,LOOP; RET
-
SDSFSDGFDGBFDGHFGFDHGFDH