第 8 章 串并行通信接口技术

138
第 8 章 串并行通信接口技术 8.1 概述 8.2 可编程并 行通信接口芯 片 8255A 8.3 可编程串 行通信接口芯 片 8251A 8.4 通用的异 步接收发送芯 片 8250

Upload: cameo

Post on 17-Mar-2016

135 views

Category:

Documents


4 download

DESCRIPTION

第 8 章 串并行通信接口技术. 8.1 概述 8.2 可编程并行通信接口芯片 8255A 8.3 可编程串行通信接口芯片 8251A 8.4 通用的异步接收发送芯片 8250. 教学目的和要求 1. 掌握并行传输和串行传输的基本概念; 2. 掌握 8255A 和 8250 的基本结构和工作原理; 3. 掌握串行通信的数据格式; 4. 初步学会对 8255A 和 8250 的编程应用。(实验). 第 8 章 串并行通信接口技术. 教学重点 1 . 串、并行接口的特点; 2. 8255A 的工作方式和编程; - PowerPoint PPT Presentation

TRANSCRIPT

  • 8 8.1 8.2 8255A8.3 8251A8.4 8250

  • 1.2.8255A82503.4.8255A8250

  • 8 1. 2. 8255A3.8255A014.8250

  • 1. 8255A12CPU 2. 8250CPU

  • 8.1 I/O

  • 1.816322.3.

  • 1.2.3.TTL4.

  • 8.2 8255A18255A8(AB)4(C/4)/2A012B01CPUI /O3C012C/

    8255A

  • 8255A8255A8-1CPU

  • 1.CPU D7D08 RESET CS*RD*WR* A1 A0

  • 8255A/

    A1 A0RD*WR*CS*CPU001010000111000 A B C 00110101111100000000(CPU)A B C

  • 2. APA0PA7A012BPB0PB7B01CPC0PC70A4PC4PC7B4PC0PC3

  • APA0PA7BPB0PB7CPC0PC74

  • 8255A

  • 8255A8255A C/

  • 1.D7=1

  • 2./(D7=0)

  • 3. 8255A3 /C D71D70/ /

  • 4. 8255AI/OA1A011ABCI/OA1A0000110IBM PC/XTABCI/O60H61H62H63H

  • (1)A 1CCB 010110001BB1HMOV DX,303H;303HMOV AL,0B1H;OUT DX,AL;

  • (2)INOUTCPU8255ACPU

  • 8255A BPB7MOV DX,301HB301HIN AL,DXBOR AL,80HPB71OUT DX,AL

  • (3)C1C40CAACBB

  • (3)C2AB12C0

  • (3) C3CCI/OCCCC10

  • (3)C4CABAB8255A

  • 8255A012

  • 1.00 0/ 024I /O I /O

  • 2. 1 1)ABC. /C

  • 1A1:ACPU

  • B1

  • 1STB*8255AIBF8255AINTR8255ACPUCPUINTE

  • 8255A1

    A B STB*PC4 PC2 IBFPC5 PC1 INTRPC3 PC0 INTEPC4 PC2

  • 28255A1

  • 3A1CPUCPU

  • B1

  • 1OBF*8255ACPUACK*8255AINTR8255ACPUCPU

  • 8255A1

    A B OBF*PC7PC1 ACKPC6 PC2 INTRPC3 PC0 INTEPC6 PC2

  • 48255A1

  • 3. 221A2C5121218255AOBF*ACK*

  • (1)2PC6INTE1PC4INTE2INTRA

  • 28255A2

  • 8255A1.8-38K7K08255AABCA8255AABC100H101H102H103H

  • (1) 8-11

  • MOV DX103HDX MOV AL 90H OUT DX ALL1 MOV DX100HA DX IN ALDX A MOV DX101HB OUT DXALBLED XORAL0FFHAL AL MOVDX102HC DX OUTDXALC JMP L1(2) 8255A

  • 8-4Intel 8255A8-12A-B-C-D-A-AB-BC-CD-DA-AB-A-AB-B-BC-C-CD-D-DA-A-2.

  • Intel 8255APA3~ PA0A074LS24474LS244TIP1228-58255A300H301H302H303H

  • 8-5

    1AB03H2BC06H3CD0CH4DA09H

  • 10000000B=80HA0 MOV AL80H MOV DX303H DX OUT DXAL MOV DX300H A L1MOV AL03H AB OUT DXAL CALL DELAY1 MOV AL06H BC OUT DXAL CALL DELAY1

  • MOV AL0CH CD OUT DXAL CALL DELAY1 MOV AL09H DA OUT DXAL CALL DELAY1 JMP L1DELAY1MOV CX03FFFH DELAY2LOOP DELAY2 RET

  • 3. (0) 8-58-13CPU(BUSY)1(BUSY=1)CPU8

  • 8255A10000001B=81H 8255A0 AC44PC6 00001101B 0DHPC6 00001100B 0CH2000H MOV DX247H 8255A 247HDX MOV AL 81H 8255A OUT DX AL

  • MOV AL 0DH OUT DXAL PC61STB*1 MOVSI2000H SI MOVCX0FFHNEXT MOVDX246H 8255APC IN ALDX CPC30 ANDAL08H JNZ NEXT MOVDX244H ADX MOVALSI OUTDXAL

  • MOVDX247HDX MOVAL0CH PC60 OUTDXALSTB* NOPNOPNOP MOVAL0DH OUTDXAL STB*1 INCSI 1 LOOPNEXT

  • 8-6 8255A1A18259AAPC38259ACPU8-158255A4244H245H246H247H

  • 1PC78255APC68255APC38259AIR3.8255A10101000B 2PC6 00001101B 0DH8255AA138259AICW208H8255AA0BHIR3002CH4

  • MAIN MOV DX247H MOV AL0A8H OUT DXAL 8255A XOR AXAX MOV DSAX MOV AXOFFSET RING MOV [002CH]AX MOV AXSEG RING MOV [002EH]AX MOV DX247H MOV AL0DH PC61A1 OUT DXAL

  • MOV DIOFFSET BUFF MOV CX100 MOV DX244H MOV AL[DI] OUT DXAL INC DI STI LOOPNEXT JMPABC NEXT HLT LOOP NEXT ABC CLI MOV AH4CH INT 21H

  • RING MOVDX244H MOV AL[DI] OUT DXAL A INC DI STI IRET

  • 8.38251A1.

  • 2./Baud Ratebps50 bps9600 bps115200 bps1

  • b/s: 17111200bps1200/10120

  • 2: 1200bps41007(100+4)/12000.6067s100/0.6067165

  • 2 ///=n/1200 bps n=1616/ 120016=19.2kHznn=1163264

  • 3.Synchronous Data CommunicationAsynchronous Data Communication

  • 1

  • 2

  • 8251A 1.8251A(1)(2)5 8/(3)5 8/11664

  • (4)11.52(5)064Kbps019.2Kbps(6)(7)

  • 2.8251A

  • 3.8251A 1 8251ACPU CS*8251A D7D0 RD*WR*C/D*/

  • TXRDYTXE RXRDY SYNDET/BD

  • 28251A DTR* DSR* RTS* CTS* TXD RXD

  • 3 CLKVccGND

  • 4.8251A8251A

  • 8251ACPU 8251ACPU

  • 1

  • 2(/)

  • 3 (8251A)

  • 8251AMOV DX3F9HNEXTIN ALDX AND AL02H D1=1JZ NEXT NEXT MOVDX3F8H DX IN ALDX

  • 8251A1.8-88251A1671 3F8H3F9H01111010B7AH00110111B37H

  • MOV DX3F9H MOV AL7AHOUT DXALMOV AL37H OUT DXAL

  • 2.8-98251A3F9H7 00011000B18H10110111BB7H8251A38251A8251ACPU

  • MOV DX3F9H DXMOV AL00011000B OUT DXAL MOV AL16HOUT DXAL 16HOUT DXAL 16HMOV ALB7H OUT DXAL

  • 3.8-108251A8-258251ARS-232C80868251A3F9H3F8H

  • CPUTxRDYCPU8251ACPURxRDY8251A

  • STARTMOV DX3F9HMOV AL7FH 8 OUT DXAL 64MOV AL11HOUT DXALMOV DI1000H MOV CX40H

  • L1 MOV DX3F9H IN ALDX AND AL01H TxRDY JZ L1 MOV DX3F8H MOV AL[DI] 8251A OUT DXAL INC DI LOOP L1 HLT

  • BEGINMOV DX3F9H MOV AL7FH 81 OUT DXAL 64 MOV AL14HERRxE 1 MOV DXAL MOV SI 2000H MOV CX40H L2MOV DX3F9H INALDX

  • TESTAL38H JNZ ERR AND AL02H D1RxRDYJZ L2 MOV DX3F8HIN ALDX 1

  • MOVSIAL INC SI LOOP L2 JMP L3 ERRCALL ERR-OUT L3 MOV AX4C00H DOS INT21H

  • 8.48250 8250MODEMMODEM

  • 1. 8250825010168A0A2DLAB011

  • 8250

    DLABA2A1A03F8H00 0 03F9H 00 0 13F8H 10 0 03F9H 10 0 13FAH0 1 03FBH0 1 13FCH1 0 0MODEM3FDH1 0 13FEH1 1 0MODEM

  • 1 THR(3F8H)

  • 1 RBR (3F8H)

  • 2BRD(3F8H,3F9H) BRD16

  • 8-111200bps UART1.8432MHzXTAL1BRD=1843200/161200=0060H

  • 3 LCR3FBH

    DLABD6 D5 D4 D3D2D1 D0

  • 8-13LCR82MOV DX3FBH LCRMOV AL 00011111B LCROUT DXAL

  • 4LSR3FDH)CPU

    0D6 D5 D4 D3D2D1 D0

  • 5MODEMMCR(3FCH)8250

    0 0 0LOOP OUT2OUT1RTS DTR

  • 8-14MCRDTRRTSOUT1OUT2LOOP MOV DX3FCH MCR MOV AL00000011B MCR OUT DXAL

  • 8-158250:MOV DX 3FCH MCRMOV AL00010011B LOOP1OUT DXAL

  • 6MODEMMSR(3FEH)4MSR41MSR41CPUMCR41CPU4

  • 7IER 3F9H82502444825041

  • 8. IIR3FAH

    0 0 0 0 0ID1 ID0IP

    ID1ID01 11 00 10 01234

  • 2. 8250

  • 3. 8250

  • 1CPU1D7 D0 CPU8250A0A2825082503CS0CS1CS2*CSOUT38250CSOUTADS*

  • 12DISTRDISTR*CPU8250I/ODOSTRDOSTR*CPU8250I/O8250

  • 13DDISCPU8250DDISDDISMRRESETINTRPT8250410INTRPTCPU

  • 1 4OUT1*OUT2*D2D3

  • 2

  • 3XTAL18250XTAL2BAUDOUT*8250RCLKRCLKBAUDOUT*

  • 3. 8250D7=188MODE 8250

  • 8-1782503F8H3FFH82509600bps81MOV DX3FBH8250DX MOV AL80H DLAB=1 OUT DXALMOV DX3F8H DX MOV AL0CH 9600bps OUT DXAL 8 INC DX

  • MOV AL00H 8OUT DXALMOV DX3FBH 8250DXMOV AL0BH 81OUT DXAL MOV DX3F9H DX MOV AL0FH OUT DXAL MOV DX3FCH MODEM MOV AL0FHOUT DXAL OUT1*,OUT2*0

  • 8-18PCRS-232CMODEM9600bps8/182502F8H2FFHESCDOS

  • MOV DX2FBH 8250DXMOV AL80H DLAB=1OUT DXALMOV DX2F8H DXMOV AL0CH 9600bps OUT DXAL 8INC DXMOV AL00H 8OUT DXAL

  • MOV DX2FBH 8250DX MOV AL0BH 81 OUT DXAL MOV DX2FCH MOV AL03H OUT DXAL MOV DX2F9H MOV AL00H OUT DXAL

  • FOREVERMOV DX2FDH IN ALDX TEST AL1EH JNZ ERROR TEST AL01H JNZ RECEIVE TEST AL20H JNZ FOREVER MOV AH01H ZF=0AL=

  • INT 16HJZ FOREVERMOV AH00H INT 16HMOV DX2F8HOUT DXALMOV AH02H MOV DLALINT 21H

  • CMP AL27ESC JNZ NEXT MOV AH4CH INC 21H NEXTJMP FOREVER RECEIVEMOV DX2F8H IN ALDX AND AL7FH CMP AL27

  • JNZ DISP MOV AH4CH INT 21H DISP PUSH AX MOV BX0 MOV AH14 INT 10H POP AX CMP AL0DH

  • JNZ FOREVER MOV AL0AH MOV BX0 MOV AH14 INT 10H JMP FOREVER ERRORMOV DX2F8H IN ALDXMOVAL

  • MOV BX,0 MOV AH,14 INT 10H JMP FOREVER

  • 81. 2.8255A 3.8251A8250 4.8255A

  • 5.8255A8251A8250 6.

    88.2 8.3 8.4 8.6 8.9 8.108.11 8.12 8(