第九章 可编程串行异步通信接口芯片8250
合集下载
第9章 可编程并行接口芯片8255A

- 10 -
并行通信接口
1. 方式0-基本输入/输出方式
工作于方式0的I/O口,没有为其专门规定用于信号联 络的固定引脚;
A口、B口、上C口、下C口均工作于方式0时,可分 别作为输入或输出使用,共有16种不同的组合;
方式0下的数据I/O口输出锁存,输入缓冲; 方式0可用于无条件传送方式:接口简单,无需应答 过程,执行IN/OUT指令即可实现数据传送;
并行接口的数据宽度多组织为CPU的整字长; 电路连接相对简单,易于编程控制; 可用分立元件或小规模集成电路配合实现,也可以直接选 用可编程并行接口芯片,如Intel 8255A。
-3-
并行通信接口
10.2 并行接口芯片8255A
Intel 8255A是通用的可编程的并行接口芯片。
有3个独立的I/O端口,分别称为A、B和C端口; 每个端口的并行数据宽度为8位; A、B、C端口可分别与不同的外设进行数据交换, 亦可联合使用,可以用中断方式实现CPU与外设的 数据传递; 提供方式0、1、2共3种工作方式,可以编程设定; 价格低廉,使用方便,可以直接与Intel系列的芯片 连接使用,在中小系统中有着广泛的应用。
A组由A口和C口高4位组成,B组由B口和C口低4位组成; 接收读写控制逻辑的各种命令; 接收来自数据线的控制字,决定组内工作方式; 实现C口每一位的复位/置位操作。
-6-
并行通信接口
读/写控制逻辑:完成8255A内部读/写控制功能。 与6条输入控制线相连; 接收输入的地址、读/写和系统复位等控制信号,并 将其转变为8255A内部控制信号送往A、B组控制电 路和各I/O口。 数据总线缓冲器:一个8位双向三态缓冲器。 是8255A与系统数据总线的接口; 数据传送方向及三态由读写控制逻辑控制;
并行通信接口
1. 方式0-基本输入/输出方式
工作于方式0的I/O口,没有为其专门规定用于信号联 络的固定引脚;
A口、B口、上C口、下C口均工作于方式0时,可分 别作为输入或输出使用,共有16种不同的组合;
方式0下的数据I/O口输出锁存,输入缓冲; 方式0可用于无条件传送方式:接口简单,无需应答 过程,执行IN/OUT指令即可实现数据传送;
并行接口的数据宽度多组织为CPU的整字长; 电路连接相对简单,易于编程控制; 可用分立元件或小规模集成电路配合实现,也可以直接选 用可编程并行接口芯片,如Intel 8255A。
-3-
并行通信接口
10.2 并行接口芯片8255A
Intel 8255A是通用的可编程的并行接口芯片。
有3个独立的I/O端口,分别称为A、B和C端口; 每个端口的并行数据宽度为8位; A、B、C端口可分别与不同的外设进行数据交换, 亦可联合使用,可以用中断方式实现CPU与外设的 数据传递; 提供方式0、1、2共3种工作方式,可以编程设定; 价格低廉,使用方便,可以直接与Intel系列的芯片 连接使用,在中小系统中有着广泛的应用。
A组由A口和C口高4位组成,B组由B口和C口低4位组成; 接收读写控制逻辑的各种命令; 接收来自数据线的控制字,决定组内工作方式; 实现C口每一位的复位/置位操作。
-6-
并行通信接口
读/写控制逻辑:完成8255A内部读/写控制功能。 与6条输入控制线相连; 接收输入的地址、读/写和系统复位等控制信号,并 将其转变为8255A内部控制信号送往A、B组控制电 路和各I/O口。 数据总线缓冲器:一个8位双向三态缓冲器。 是8255A与系统数据总线的接口; 数据传送方向及三态由读写控制逻辑控制;
第9章 可编程并行输入输出接口8255A

❖ 端口A和端口B在方式1,输入、输出均具有锁存功能。 ❖ 当端口C的相应引脚规定作联络线时,这些联络线不能
用置位/复位控制字影响其引脚电平,而只能用规定的操作改 变引脚状态。
(1)方式1输入 ❖ 端口A、端口B都设置为方式1输入时的情况及时序如图
❖ 端口A和端口B分别作为两个输入或输出端口工作在方式 1。该端口作为输入端口或输出端口是由方式控制字决定的。
❖ 如果8255A的端口A和端口B只有一个工作在方式1,那 么,端口C中就有3条线被规定为配合方式1工作的联络信号。 此时另一个端口可以工作在方式0,端口C中剩余5条线也可 以工作在方式0,即作为方式0输入端口或方式0输出端口。 如果8255A的端口A和端口B都工作在方式1,那么,端口C 就有6条线被规定为配合方式1工作的联络信号,剩余的2条 线,仍可作为方式0输入或输出。
图9-1 并行接口和外设连接示意图
9.1.1 并行接口的功能 ❖ 通常来说,一个并行接口应具备以下功能: ❖ 1. 实现与系统总线的连接,提供数据的输入输出功能。 ❖ 2. 实现与外部设备相的连接,具有与外部设备进行应答
的同步机构,保证有效地进行数据的发送或接收。 ❖ 3. 具有中断请求与处理功能,使得数据的输入/输出可以
和传送信号操作之间的关系如表9.1所示。
表9.1 8255A的控制信号和传送操作的对应关系
9.2.2 8255A控制字 ❖ 8255A可以通过指令在控制端口中设置控制字来决定它
的工作。 ❖ 8255A有两个控制字:方式选择控制字和端口C置位/复
位控制字。这两个控制字公用一个地址,即控制端口地址。 用控制字的D7来区分这两个控制字,当D7=1时选择方式选 择控制字;当D7=0时选择端口C置位/复位控制字。
微机接口第九章8255A-讲义

(3) 方式控制字和按位置位/复位控制字均 写入同一个控制寄存器地址,二者通过最高 位D7来区别。D7=1为方式控制字,D7=0为按 位置位/复位控制字。
2. 工作方式
(1) 方式0 —— 基本输入/输出方式 方式0是一种基本输入输出工作方式,它
的24条I/O线可以全部都用作传送数据,不设 置应答信号线,常用于无条件传送,输出有锁 存,输入只有缓冲能力而无锁存功能。
实现并行通信的接口称之为并 行接口。
8255A 是 Intel86 系 列 微 处 理 机 的 配 套 并 行 接 口 芯 片 , 它 可 为 86 系 列 CPU与外部设备之间提供并行输入/输 出通道。
11.1 可编程并行接口芯片8255A
一、8255A的内部结构和引脚信号
1. 8255A内部结构
序号
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
. 通道A .
37 18
.PPAB70
• •
. 通道B
•
.
25
PB7
14 15
P.C0
16 17 13 12
. 通道C .
11
10
PC7
外设接口
* PA7~PA0:A端口数据信号引脚 * PB7~PB0:B端口数据信号引脚 * PC7~PC0:C端口数据信号引脚 * D7~D0: 8255A的8位数据线
8255A 可 编 程 外 围 设 备 接 口 (Programmable Peripheral Interface, 简写 为PPI) ,其内部结构如图所示。
A组控制 部件
双向 数据总线 缓冲器
D7~D0
RD WR
AA01
CS RESET
微机接口技术第9章 串行通信接口

例如:某通信系统每秒传输120个字符,每个字符包 含10位二进制数,则波特率为120×10=1200b/s。
8
9.1 串行传送的基本概念
计算机通信中,常用波特率表示通信速率。
国际上规定了标准波特率系列,最常用的标准波特率 是110、300、600、1200、2400、4800、9600和19200 b/s。波特率的倒数称“位周期”。
在通信的数据流中,字符间异步,字符内部各位间同步, 即:字符与字符之间没有严格的定时要求,然而,一旦 传送开始,收/发双方则以预先约定的传输速率,在时钟 的作用下,传送这个字符中的每一位。
以字符为信息传送单位。
同步串行通信方式
数据流中的字符与字符之间和字符内部的位与位之间都 同步。
同步串行通信是以数据块(字符块)为信息单位传送, 每帧信息可以包括成百上千个字符,因此传送一旦开始, 要求每帧信息内部的每一位都要同步。
6
9.1 串行传送的基本概念
方阵码检错举例:
1101001 0100000 1010101 1111001 1100001
0000100
0 1 0 奇偶位 1 1 1 →检验字符
在接收时,收到的数据块将产生一个检验字符,与 发送来的检验字符进行比较。如果两者不同,就表 明有错码,反馈重发。
7
9.1 串行传送的基本概念
4
9.1 串行传送的基本概念
调制解调器类型一般有:振幅键控(ASK)、频移键控 (FSK)和相移键控(PSK)。当波特率<300时,一般采用 频移键控:
当信号(数据)为“0”时,开关1断开,开关2闭合,经放 大器输出频率2的信号;当数字信号(数据)为“1”时, 开关1闭合,开关2断开,经放大器输出频率1的信号。
8
9.1 串行传送的基本概念
计算机通信中,常用波特率表示通信速率。
国际上规定了标准波特率系列,最常用的标准波特率 是110、300、600、1200、2400、4800、9600和19200 b/s。波特率的倒数称“位周期”。
在通信的数据流中,字符间异步,字符内部各位间同步, 即:字符与字符之间没有严格的定时要求,然而,一旦 传送开始,收/发双方则以预先约定的传输速率,在时钟 的作用下,传送这个字符中的每一位。
以字符为信息传送单位。
同步串行通信方式
数据流中的字符与字符之间和字符内部的位与位之间都 同步。
同步串行通信是以数据块(字符块)为信息单位传送, 每帧信息可以包括成百上千个字符,因此传送一旦开始, 要求每帧信息内部的每一位都要同步。
6
9.1 串行传送的基本概念
方阵码检错举例:
1101001 0100000 1010101 1111001 1100001
0000100
0 1 0 奇偶位 1 1 1 →检验字符
在接收时,收到的数据块将产生一个检验字符,与 发送来的检验字符进行比较。如果两者不同,就表 明有错码,反馈重发。
7
9.1 串行传送的基本概念
4
9.1 串行传送的基本概念
调制解调器类型一般有:振幅键控(ASK)、频移键控 (FSK)和相移键控(PSK)。当波特率<300时,一般采用 频移键控:
当信号(数据)为“0”时,开关1断开,开关2闭合,经放 大器输出频率2的信号;当数字信号(数据)为“1”时, 开关1闭合,开关2断开,经放大器输出频率1的信号。
第9章常用可编程接口芯片及其应用

由于8255A的数据总线是三态的,所以D0~D7可以直接与 CPU的数据总线相连。
(4) 读/写控制逻辑。
8255A的读/写控制逻辑的作用是从CPU的地址和控制总线 上接收有关信号,转变成各种控制命令送到数据缓冲器以及A 组、B组控制电路,从而管理三个端口、控制寄存器和数据总 线之间的传送操作。
1.外设接口:包括A、B、C三个数据端口(通道)。 其中A口带输出锁存/缓冲和输入锁存,B口带输出锁存 /缓冲和输入缓冲,C口带输出缓冲和输入缓冲。
有 2 种工作方式:方式 0、方式 1
对外 8 根引脚 PB7 ~ PB0
reset
RESET
D7
D7 数据
~ D0
~
D0Βιβλιοθήκη 缓冲器端口A 端口CIOR
IOW
A~9 A2 A1 A0
RD WR
片选 CS 译码
A1 A0
读写 控制
片内 译码
端口B
控制口 D
总线
8255A
PA~ 7 PA0
外
P~C7 PC0
并行接口芯片
将数据的各位同时在多根并行传输线上进行传输,
适于短距离、高速通信
D0 0
D1 1
D2 0
源
D3 D4
1 0
D5 1
D6 1
D7 0
D0 D1 D2 D3 目 D4 的 D5 D6 D7
串行接口芯片
➢将数据的各位按时间顺序依次在一根传输线上传输,适 于长距离、中低速通信
源 TD
01101010
第九章 常用可编程接口芯片及其应用
§9.1 可编程接口芯片概述 §9.2 8255A可编程并行接口芯片 §9.3 8253可编程定时器/计数器
(4) 读/写控制逻辑。
8255A的读/写控制逻辑的作用是从CPU的地址和控制总线 上接收有关信号,转变成各种控制命令送到数据缓冲器以及A 组、B组控制电路,从而管理三个端口、控制寄存器和数据总 线之间的传送操作。
1.外设接口:包括A、B、C三个数据端口(通道)。 其中A口带输出锁存/缓冲和输入锁存,B口带输出锁存 /缓冲和输入缓冲,C口带输出缓冲和输入缓冲。
有 2 种工作方式:方式 0、方式 1
对外 8 根引脚 PB7 ~ PB0
reset
RESET
D7
D7 数据
~ D0
~
D0Βιβλιοθήκη 缓冲器端口A 端口CIOR
IOW
A~9 A2 A1 A0
RD WR
片选 CS 译码
A1 A0
读写 控制
片内 译码
端口B
控制口 D
总线
8255A
PA~ 7 PA0
外
P~C7 PC0
并行接口芯片
将数据的各位同时在多根并行传输线上进行传输,
适于短距离、高速通信
D0 0
D1 1
D2 0
源
D3 D4
1 0
D5 1
D6 1
D7 0
D0 D1 D2 D3 目 D4 的 D5 D6 D7
串行接口芯片
➢将数据的各位按时间顺序依次在一根传输线上传输,适 于长距离、中低速通信
源 TD
01101010
第九章 常用可编程接口芯片及其应用
§9.1 可编程接口芯片概述 §9.2 8255A可编程并行接口芯片 §9.3 8253可编程定时器/计数器
第9章 可编程接口芯片

1.写入控制字
以便选择计数器和规定计数器的工作方式,任一计数通 道的控制字都要从8253的控制端口写入。
2.写入计数初值
计数初值(TC)的计算公式为:t=TC/f,其中t为定时时 间,TC为计数初值,f为输入时钟频率。 注意:如果在方式控制字中的BCD位为1,则写入的计数初 值应为十六进制数。例如:计数初值为50,采用BCD码计 数,则指令中的50必须写为50H。
• 方式5的计数过程由GATE的上升沿触发。当控制字写入后,OUT端输出高 电平,并保持高电平状态。然后写入计数初值,只有在GATE信号的上升 沿之后的下一个CLK脉冲的下降沿,才将计数初值寄存器内容装入减1计 数寄存器,并开始减1计数,当计数值减到0时,OUT端变为低电平,并 持续一个CLK周期,然后自动变为高电平。 • 在计数过程中,若GATE端又来一个上升沿触发,则在下一个CLK脉冲的 下降沿,减1计数寄存器将重新获得计数初值,并按新的初值作减1计数, 直至减为0为止。 • 在计数过程中,若写入新的计数值,但没有触发脉冲,则当前输出周期 不受影响。当前周期结束后,在再触发的情况下,将按新的计数初值开 始计数。 • 若在计数过程中,写入新的计数值,并在当前周期结束前又受到触发, 则在下一个CLK脉冲的下降沿,减1计数寄存器将获得新的计数初值,并 按此值作减1计数操作。
OUT 0 OUT 1 +5V OUT 2
(8259)IR0 CP Q D &
放大器 扬声器
(8237)DREQ0
AB
D (8284)PCLK
Q
8255 PB 1
CP Q
CLK0 GATE2 CLK1 GATE1 CLK2 GATE0
(8255)PB0 +5V
F=1.1932MHZ
以便选择计数器和规定计数器的工作方式,任一计数通 道的控制字都要从8253的控制端口写入。
2.写入计数初值
计数初值(TC)的计算公式为:t=TC/f,其中t为定时时 间,TC为计数初值,f为输入时钟频率。 注意:如果在方式控制字中的BCD位为1,则写入的计数初 值应为十六进制数。例如:计数初值为50,采用BCD码计 数,则指令中的50必须写为50H。
• 方式5的计数过程由GATE的上升沿触发。当控制字写入后,OUT端输出高 电平,并保持高电平状态。然后写入计数初值,只有在GATE信号的上升 沿之后的下一个CLK脉冲的下降沿,才将计数初值寄存器内容装入减1计 数寄存器,并开始减1计数,当计数值减到0时,OUT端变为低电平,并 持续一个CLK周期,然后自动变为高电平。 • 在计数过程中,若GATE端又来一个上升沿触发,则在下一个CLK脉冲的 下降沿,减1计数寄存器将重新获得计数初值,并按新的初值作减1计数, 直至减为0为止。 • 在计数过程中,若写入新的计数值,但没有触发脉冲,则当前输出周期 不受影响。当前周期结束后,在再触发的情况下,将按新的计数初值开 始计数。 • 若在计数过程中,写入新的计数值,并在当前周期结束前又受到触发, 则在下一个CLK脉冲的下降沿,减1计数寄存器将获得新的计数初值,并 按此值作减1计数操作。
OUT 0 OUT 1 +5V OUT 2
(8259)IR0 CP Q D &
放大器 扬声器
(8237)DREQ0
AB
D (8284)PCLK
Q
8255 PB 1
CP Q
CLK0 GATE2 CLK1 GATE1 CLK2 GATE0
(8255)PB0 +5V
F=1.1932MHZ
8250串行接口

mov dx,bx
add dx,0ah
in ax,dx ;读入线路状态寄存器(LSR)内容
test ax,20h ;检测发送保持寄存器状态
jnz recv2
pop ax
jmp send
recv2: pop ax
mov dx,bx
out dx,ax
ret
recv: mov bx,0480h
mov dx,bx
三、实验原理介绍
实验原理图见8250串行接口电路。由MAX232完成RS232电平和TTL电平的转换,由8250完成数据的收发。8250内部有10个寄存器,分别对应着不同的IO口地址。对不同的寄存器进行初始化或读出写入操作就可以完成与计算机的通信。由于不能同时收发数据,所以8250又称为通用串行异步收发器,简写为:UART。8250实验电路的所有信号均已连好。
六、程序框图
上位机程序框图下位机程序框图
程序框图
七、实验程序
code segment ;define data segment
assume cs:code
org 0100h
start: md dx,6;信线路控制寄存器端口地址PORT+6
mov ax,80h ; DLAB=1
8250串行接口电路
四、实验步骤
1、实验接线
利用串口电缆连接实验箱的串口和计算机的串口(COM1或COM2)
2、编写程序。
3、在实验箱上运行86编译系统,下载实验程序8250.asm,并全速运行。
4、实验箱退出86编译系统,启动实验六的上位机驱动程序T6UP.EXE,首先选择串行端口(COM1或COM2),端口与步骤1一致,键入串口号即可,然后从键盘上输入字符,看返回字符是否正确。欲退出T6UP.EXE,按回车键。
add dx,0ah
in ax,dx ;读入线路状态寄存器(LSR)内容
test ax,20h ;检测发送保持寄存器状态
jnz recv2
pop ax
jmp send
recv2: pop ax
mov dx,bx
out dx,ax
ret
recv: mov bx,0480h
mov dx,bx
三、实验原理介绍
实验原理图见8250串行接口电路。由MAX232完成RS232电平和TTL电平的转换,由8250完成数据的收发。8250内部有10个寄存器,分别对应着不同的IO口地址。对不同的寄存器进行初始化或读出写入操作就可以完成与计算机的通信。由于不能同时收发数据,所以8250又称为通用串行异步收发器,简写为:UART。8250实验电路的所有信号均已连好。
六、程序框图
上位机程序框图下位机程序框图
程序框图
七、实验程序
code segment ;define data segment
assume cs:code
org 0100h
start: md dx,6;信线路控制寄存器端口地址PORT+6
mov ax,80h ; DLAB=1
8250串行接口电路
四、实验步骤
1、实验接线
利用串口电缆连接实验箱的串口和计算机的串口(COM1或COM2)
2、编写程序。
3、在实验箱上运行86编译系统,下载实验程序8250.asm,并全速运行。
4、实验箱退出86编译系统,启动实验六的上位机驱动程序T6UP.EXE,首先选择串行端口(COM1或COM2),端口与步骤1一致,键入串口号即可,然后从键盘上输入字符,看返回字符是否正确。欲退出T6UP.EXE,按回车键。
微机原理:第9章 可编程并行接口芯片8255A

➢ 每个端口的并行数据宽度为8位;
➢ A、B、C端口可分别与不同的外设进行数据交换, 亦可联合使用,可以用中断方式实现CPU与外设的 数据传递;
➢ 提供方式0、1、2共3种工作方式,可以编程设定;
➢ 价格低廉,使用方便,可以直接与Intel系列的芯片 连接使用,在中小系统中有着广泛的应用。
-4-
并行通信接口
-7-
并行通信接口
2. 8255A的引脚功能
8255A为40引脚DIP, 除电源、地线外,其余引 脚可分为两组:
➢ 与外设连接的引脚:
共24条,分为PA7~0,PB7~0 , PC7~0三组,对应A、B、C口;
所有引脚均为双向三态的。
➢ 与CPU连接的引脚:
数据线D7~0 ,双向三态,与系 统数据总线相连;
并行接口的数据宽度多组织为CPU的整字长; 电路连接相对简单,易于编程控制; 可用分立元件或小规模集成电路配合实现,也可以直接选
用可编程并行接口芯片,如Intel 8255A。
-3-
并行通信接口
9.2 并行接口芯片8255A
Intel 8255A是通用的可编程的并行接口芯片。
➢ 有3个独立的I/O端口,分别称为A、B和C端口;
-6-
并行通信接口
➢ 读/写控制逻辑:完成8255A内部读/写控制功能。 与6条输入控制线相连; 接收输入的地址、读/写和系统复位等控制信号,并
将其转变为8255A内部控制信号送往A、B组控制电 路和各I/O口。 ➢ 数据总线缓冲器:一个8位双向三态缓冲器。 是8255A与系统数据总线的接口; 数据传送方向及三态由读写控制逻辑控制; 输入/输出的数据,CPU写入8255A的编程控制字以 及外设通过8255A送给CPU的状态信息,均经由该 缓冲器传送。
➢ A、B、C端口可分别与不同的外设进行数据交换, 亦可联合使用,可以用中断方式实现CPU与外设的 数据传递;
➢ 提供方式0、1、2共3种工作方式,可以编程设定;
➢ 价格低廉,使用方便,可以直接与Intel系列的芯片 连接使用,在中小系统中有着广泛的应用。
-4-
并行通信接口
-7-
并行通信接口
2. 8255A的引脚功能
8255A为40引脚DIP, 除电源、地线外,其余引 脚可分为两组:
➢ 与外设连接的引脚:
共24条,分为PA7~0,PB7~0 , PC7~0三组,对应A、B、C口;
所有引脚均为双向三态的。
➢ 与CPU连接的引脚:
数据线D7~0 ,双向三态,与系 统数据总线相连;
并行接口的数据宽度多组织为CPU的整字长; 电路连接相对简单,易于编程控制; 可用分立元件或小规模集成电路配合实现,也可以直接选
用可编程并行接口芯片,如Intel 8255A。
-3-
并行通信接口
9.2 并行接口芯片8255A
Intel 8255A是通用的可编程的并行接口芯片。
➢ 有3个独立的I/O端口,分别称为A、B和C端口;
-6-
并行通信接口
➢ 读/写控制逻辑:完成8255A内部读/写控制功能。 与6条输入控制线相连; 接收输入的地址、读/写和系统复位等控制信号,并
将其转变为8255A内部控制信号送往A、B组控制电 路和各I/O口。 ➢ 数据总线缓冲器:一个8位双向三态缓冲器。 是8255A与系统数据总线的接口; 数据传送方向及三态由读写控制逻辑控制; 输入/输出的数据,CPU写入8255A的编程控制字以 及外设通过8255A送给CPU的状态信息,均经由该 缓冲器传送。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第九章 可编程串行异步通信接口芯 片8250 9.1 串行通讯概述 9.2 8250简介 9.3 8250应用举例
9.1 串行通讯概述
一、串并行通讯
串行通信是指使用一条数据线,将数据一位一位地依次传输, 每一位数据占据一个固定的时间长度。其只需要少数几条线 就可以在系统间交换信息,特别使用于计算机与计算机、计 算机与外设之间的远距离通信。 其特点是: 节省传输线,这是显而易见的。尤其是在远程通信时,此特 点尤为重要。这也是串行通信的主要优点。 数据传送效率低。与并行通信比,这也这是显而易见的。这 也是串行通信的主要缺点。 如果一组数据的各数据位在多条线上同时被传输,这种传输 方式称为并行通信。并行通信时数据的各个位同时传送,可 以字或字节为单位并行进行。 其特点是: 各数据位同时传输,传输速度快、效率高,多用在实时、快 速的场合。 并行传输的数据宽度可以是1-128位,甚至更宽,但是有多少 数据位就需要多少根数据线,因此传输的成本较高。 并行数据传输只适用于近距离的通信,通常传输距离小于30 米。
端口地址
初始化顺序
1、通信线路控制器 ( 011B PC机地址 3FBH)
D7 D6 D5 D4 D3 D2 D1 D0
选择异步通信格式
00:5位 字符长 01:6位 10:7位 11:8位
0 表 示 正 常 收 发 D7 = 0 寻址TBR、RBR IER D7 = 1寻址DLL、DHL
0:1个停止位 1:1.5个停止位(字符长5位) 停止位 2个停止位(字符长6 ~ 8位)
6)WINDOWS下VC编程,用类、控件,或者按文件编程。
7)用开发包编程:有很多,可以从网上下载。
三、8250的管脚与结构
1.管脚
D0 D1 D2 D3 D4 D5 D6 D7 RC LK SIN SOUT CS0 CS1 CS2 BAUDOUT XTAL1 XTAL2 DOSTR DOSTR GND
2.10个寄存器及其每位的作用
(1)通信控制寄存器 该控制字主要决定在串行通信时所使用的数据格式, 例如数据位数、奇偶校验及停止位的多少。同时,特 别注意该控制字的D7。当我们需要读写除数锁存器时, 必须先将该寄存器的D7置1。而在读写其他寄存器时, 又要使其为0。 (2)通信状态寄存器 通信状态寄存器的作用在于通过其状态说明在通信过 程中8250接收和发送数据的情况。 (3)发送数据寄存器 这是一个8位的寄存器,发送数据时,处理器将数据 写入寄存器。只要发送移位寄存器空,该发送数据寄 存器的数据便会由8250硬件自动并行送到移位寄存器 中,以便串行移出。 (4)接收数据寄存器 是一个8位的寄存器,当8250接收到一个完整的字符 时,会将该字符由接收移位寄存器传送到接收数据寄 存器。处理器可直接由此寄存器读取数据。
三、串行通信波特率
波特率bps(bit per second)定义: 每秒传输数据的位数,即:
1波特 = 1位/秒(1bps)
波特率的倒数即为每位传输所需的时间。 相互通信的甲乙双方必须具有相同的波特 率,否则通信按照数据传送方向可分为三种制 式:
0:无校验位 1:有校验位 校验类型 0:奇校验, 1:偶校验 固定奇偶位,既当D4,D3 = 11时(偶校验),D5 = 0 当D4,D3 = 01时(奇校验),D5 = 1
(7)中断标志寄存器 中断标志寄存器为8位,高五位为0,只用低三位来实现8250的 中断标志。8250有四个中断源,在8250内不按排优先级的顺 序为: 最高优先极为接收器线路状态中断,包括越限、奇偶错、结构 错、间断等。 读通信状态寄存器可使此中断复位。 下一优先级是接收寄存器满中断。读接收寄存器可复位此中断。 再下一优先级为发送数据寄存器空中断。写发送数据寄存器克 使这一中断复位。 最高优先级为MODEM状态中断,包括发送结束、数传机准备 好、振铃指示、接收线路信号检测等为MODEM状态中断源。 读MODEM状态寄存器可复位该中断。 (8)MODEM控制寄存器 这是一个8位的寄存器,用以控制MODEM或其他数字设备。 (9)MODEM状态寄存器 MODEM状态寄存器提供了与8250相连接的MODEM或其他外 设加到8250上的控制线的信号状态以及这些控制线的状态变化。 当由MODEM来的控制线变化时,MODEM状态寄存器的低4位 被相应的置1。再读此寄存器时,使这4位同时清零。
(5)除数锁存器(波特率因子寄存器) 该锁存器为16位,外部时钟被除数锁存器中的除数相 除,可以获得所得的波特率。如果外部时钟频率f已知, 而8250所要求的波特率F也已规定。那么,就可以由 下式求出除数锁存器应锁存的除数: 波特率因子=1.8432Mhz/(1200*16)=96 例如,当输入时钟频率为1.8432MHZ时,若要求使用 1200波特来传送数据,这时可算出锁存于除数锁存器 的除数应为96。在8250工作前首先要将除数写到除数 锁存器中,以便产生所希望的波特率。为了写入除数, 首先在通信控制寄存器中将D7置为1,而后就可以将 16位除数先低8位,后高8位写入除数锁存器中。 (6)中断允许寄存器 中断允许寄存器只用D0~D3这四位,每位的0或1编 码分别允许或禁止8250的四种中断源提出中断。在中 断允许字中,接收线路状态包括越限错、奇偶错、结 构错、间断等中断源引起的中断。而MODEM状态引 起的中断见下面对MODEM状态寄存器的解释。
计算机与外界信息交换称为通信。
通信的基本方式可分为并行通信和串行通信:
并行通信是数据的各位同时发送或同时接收; 串行通信是数据的各位依次逐位发送或接收。 并行通信优点:传送速度快 缺点:不便长距离传送 串行通信优点:便于长距离传送 缺点:传送速度较慢
二、异步通信和同步通信
串行通信按同步方式可分为异步通信和同步通信。
1、异步通信
异步通信依靠起始位、停止位保持通信同步。 异步通信数据传送按帧传输,一帧数据包含 起始位、数据位、校验位和停止位。 异步通信对硬件要求较低,实现起来比较简 单、灵活,适用于数据的随机发送 /接收,但因 每个字节都要建立一次同步,即每个字符都要 额外附加两位,所以工作速度较低,在单片机 中主要采用异步通信方式。
全双工制式是指通信双方均设有发送器和 接收器,并且信道划分为发送信道和接收信道, 因此全双工制式可实现甲乙双方同时发送和接 收数据,发送时能接收,接收时也能发送。
六、调制解调器 计算机内的信息是由“0”和“1”组成数字信号,而在电话线 上传递的却只能是模拟电信号。于是,当两台计算机要通 过电话线进行数据传输时,就需要一个设备负责数模的转 换。这个数模转换器就是Modem。计算机在发送数据时,先 由Modem把数字信号转换为相应的模拟信号,这个过程称为 “调制”。经过调制的信号通过电话载波传送到另一台计 算机之前,也要经由接收方的Modem负责把模拟信号还原为 计算机能识别的数字信号,这个过程称为“解调”。正是 通过间这样一个“调制”与“解调”的数模转换过程,从 而实现了两台计算机远程通讯。
我 的 电 脑 中 串 口 配 置
二、UART的简单应用 1.连线:RS232C接口标准,3线或7线连接方式
2.编程:
1)自己编写初始化及接收发送程序 2)调用BIOS编程:INT 14H
3)调用DOS编程: INT 21H,调用号 03和04
4)DOS下按照文件编程,文件名就是COM1:或COM2: 5)WINDOWS下VB编程,用MSCOMM控件编程
帧格式,一个字符由四部分组成:起始位、数据位、奇偶
校验位和停止位。
停止位(1)停止位用来表征字符的结束。停止位可以是1位、1.5 位或2位。接收端收到停止位后,知道上一字符已传送完毕
2、 同步通信
同步通信依靠同步字符保持通信同步。 同步通信是由1~2个同步字符和多字节数 据位组成,同步字符作为起始位以触发同步时 钟开始发送或接收数据;多字节数据之间不允 许有空隙,每位占用的时间相等;空闲位需发 送同步字符。 同步通信传输速度较快,但要求有准确的 时钟来实现收发双方的严格同步,对硬件要求 较高,适用于成批数据传送。
MODEM控制逻辑: CTS-:清除发送信号 RTS-:请求发送信号 DTR-:数据终端准备好信号 DSR-:数据装置准备好信号 RLSD-:接收线路信号检测信号 RI-:振铃指示信号 OUT1-:由用户编程指定的输出端 OUT2-:与OUT1一样,可以由用户 编程指定(PC用)
3.波特率因子 波特率因子(BRD)是16位数,它与8250的 数据传输速率(波特率)有关。当使用8250的 内部时钟频率为1.8432MHz时,则波特率因子 BRD与波特率Baud之间的关系如下式所示:
BRD=时钟频率/(16×Baud)。
例如,若要计算波特率为1200b/s的波特率 除数,则有: BDR=1843200/(16×1200)=0060H=96。
管脚信号说明
数据总线缓冲器:D0~D7:双向数 据线 选择与控制逻辑: CS0、CS1、CS2-:输入片选信号 A0、A1、A2:8250内部寄存器选择 信号
MR:主复位输入信号,高电平有效 ADS-:地址选通信号=AEN DISTR、DISTR-:数据输入选通信号 DOSTR、DOSTR-:数据输出选通信号 DDIS:驱动器禁止信号,在CPU从 8250读取数据时为低电平,其他时 间为高电平禁止外部收发器对系统 总线的驱动 CSOUT:片选输出信号 XTAL1、XTAL2:外部时钟端 中断控制逻辑: INTR:中断请求输出信号
波特率发生器
除数寄存器低位
MODE控制寄存器
MODE状态寄存器
控制逻辑
中断允许寄存器 中断识别寄存器 控制逻辑
INTRPT
3. 连接
PC / XT异步通信适配器电路
四、寄存器与BPS 1.地址分配及其复用 3根地址信号线:A2 A1 A0 8个地址,7个可用,10个可编程物理端口,复 用。
9.1 串行通讯概述
一、串并行通讯
串行通信是指使用一条数据线,将数据一位一位地依次传输, 每一位数据占据一个固定的时间长度。其只需要少数几条线 就可以在系统间交换信息,特别使用于计算机与计算机、计 算机与外设之间的远距离通信。 其特点是: 节省传输线,这是显而易见的。尤其是在远程通信时,此特 点尤为重要。这也是串行通信的主要优点。 数据传送效率低。与并行通信比,这也这是显而易见的。这 也是串行通信的主要缺点。 如果一组数据的各数据位在多条线上同时被传输,这种传输 方式称为并行通信。并行通信时数据的各个位同时传送,可 以字或字节为单位并行进行。 其特点是: 各数据位同时传输,传输速度快、效率高,多用在实时、快 速的场合。 并行传输的数据宽度可以是1-128位,甚至更宽,但是有多少 数据位就需要多少根数据线,因此传输的成本较高。 并行数据传输只适用于近距离的通信,通常传输距离小于30 米。
端口地址
初始化顺序
1、通信线路控制器 ( 011B PC机地址 3FBH)
D7 D6 D5 D4 D3 D2 D1 D0
选择异步通信格式
00:5位 字符长 01:6位 10:7位 11:8位
0 表 示 正 常 收 发 D7 = 0 寻址TBR、RBR IER D7 = 1寻址DLL、DHL
0:1个停止位 1:1.5个停止位(字符长5位) 停止位 2个停止位(字符长6 ~ 8位)
6)WINDOWS下VC编程,用类、控件,或者按文件编程。
7)用开发包编程:有很多,可以从网上下载。
三、8250的管脚与结构
1.管脚
D0 D1 D2 D3 D4 D5 D6 D7 RC LK SIN SOUT CS0 CS1 CS2 BAUDOUT XTAL1 XTAL2 DOSTR DOSTR GND
2.10个寄存器及其每位的作用
(1)通信控制寄存器 该控制字主要决定在串行通信时所使用的数据格式, 例如数据位数、奇偶校验及停止位的多少。同时,特 别注意该控制字的D7。当我们需要读写除数锁存器时, 必须先将该寄存器的D7置1。而在读写其他寄存器时, 又要使其为0。 (2)通信状态寄存器 通信状态寄存器的作用在于通过其状态说明在通信过 程中8250接收和发送数据的情况。 (3)发送数据寄存器 这是一个8位的寄存器,发送数据时,处理器将数据 写入寄存器。只要发送移位寄存器空,该发送数据寄 存器的数据便会由8250硬件自动并行送到移位寄存器 中,以便串行移出。 (4)接收数据寄存器 是一个8位的寄存器,当8250接收到一个完整的字符 时,会将该字符由接收移位寄存器传送到接收数据寄 存器。处理器可直接由此寄存器读取数据。
三、串行通信波特率
波特率bps(bit per second)定义: 每秒传输数据的位数,即:
1波特 = 1位/秒(1bps)
波特率的倒数即为每位传输所需的时间。 相互通信的甲乙双方必须具有相同的波特 率,否则通信按照数据传送方向可分为三种制 式:
0:无校验位 1:有校验位 校验类型 0:奇校验, 1:偶校验 固定奇偶位,既当D4,D3 = 11时(偶校验),D5 = 0 当D4,D3 = 01时(奇校验),D5 = 1
(7)中断标志寄存器 中断标志寄存器为8位,高五位为0,只用低三位来实现8250的 中断标志。8250有四个中断源,在8250内不按排优先级的顺 序为: 最高优先极为接收器线路状态中断,包括越限、奇偶错、结构 错、间断等。 读通信状态寄存器可使此中断复位。 下一优先级是接收寄存器满中断。读接收寄存器可复位此中断。 再下一优先级为发送数据寄存器空中断。写发送数据寄存器克 使这一中断复位。 最高优先级为MODEM状态中断,包括发送结束、数传机准备 好、振铃指示、接收线路信号检测等为MODEM状态中断源。 读MODEM状态寄存器可复位该中断。 (8)MODEM控制寄存器 这是一个8位的寄存器,用以控制MODEM或其他数字设备。 (9)MODEM状态寄存器 MODEM状态寄存器提供了与8250相连接的MODEM或其他外 设加到8250上的控制线的信号状态以及这些控制线的状态变化。 当由MODEM来的控制线变化时,MODEM状态寄存器的低4位 被相应的置1。再读此寄存器时,使这4位同时清零。
(5)除数锁存器(波特率因子寄存器) 该锁存器为16位,外部时钟被除数锁存器中的除数相 除,可以获得所得的波特率。如果外部时钟频率f已知, 而8250所要求的波特率F也已规定。那么,就可以由 下式求出除数锁存器应锁存的除数: 波特率因子=1.8432Mhz/(1200*16)=96 例如,当输入时钟频率为1.8432MHZ时,若要求使用 1200波特来传送数据,这时可算出锁存于除数锁存器 的除数应为96。在8250工作前首先要将除数写到除数 锁存器中,以便产生所希望的波特率。为了写入除数, 首先在通信控制寄存器中将D7置为1,而后就可以将 16位除数先低8位,后高8位写入除数锁存器中。 (6)中断允许寄存器 中断允许寄存器只用D0~D3这四位,每位的0或1编 码分别允许或禁止8250的四种中断源提出中断。在中 断允许字中,接收线路状态包括越限错、奇偶错、结 构错、间断等中断源引起的中断。而MODEM状态引 起的中断见下面对MODEM状态寄存器的解释。
计算机与外界信息交换称为通信。
通信的基本方式可分为并行通信和串行通信:
并行通信是数据的各位同时发送或同时接收; 串行通信是数据的各位依次逐位发送或接收。 并行通信优点:传送速度快 缺点:不便长距离传送 串行通信优点:便于长距离传送 缺点:传送速度较慢
二、异步通信和同步通信
串行通信按同步方式可分为异步通信和同步通信。
1、异步通信
异步通信依靠起始位、停止位保持通信同步。 异步通信数据传送按帧传输,一帧数据包含 起始位、数据位、校验位和停止位。 异步通信对硬件要求较低,实现起来比较简 单、灵活,适用于数据的随机发送 /接收,但因 每个字节都要建立一次同步,即每个字符都要 额外附加两位,所以工作速度较低,在单片机 中主要采用异步通信方式。
全双工制式是指通信双方均设有发送器和 接收器,并且信道划分为发送信道和接收信道, 因此全双工制式可实现甲乙双方同时发送和接 收数据,发送时能接收,接收时也能发送。
六、调制解调器 计算机内的信息是由“0”和“1”组成数字信号,而在电话线 上传递的却只能是模拟电信号。于是,当两台计算机要通 过电话线进行数据传输时,就需要一个设备负责数模的转 换。这个数模转换器就是Modem。计算机在发送数据时,先 由Modem把数字信号转换为相应的模拟信号,这个过程称为 “调制”。经过调制的信号通过电话载波传送到另一台计 算机之前,也要经由接收方的Modem负责把模拟信号还原为 计算机能识别的数字信号,这个过程称为“解调”。正是 通过间这样一个“调制”与“解调”的数模转换过程,从 而实现了两台计算机远程通讯。
我 的 电 脑 中 串 口 配 置
二、UART的简单应用 1.连线:RS232C接口标准,3线或7线连接方式
2.编程:
1)自己编写初始化及接收发送程序 2)调用BIOS编程:INT 14H
3)调用DOS编程: INT 21H,调用号 03和04
4)DOS下按照文件编程,文件名就是COM1:或COM2: 5)WINDOWS下VB编程,用MSCOMM控件编程
帧格式,一个字符由四部分组成:起始位、数据位、奇偶
校验位和停止位。
停止位(1)停止位用来表征字符的结束。停止位可以是1位、1.5 位或2位。接收端收到停止位后,知道上一字符已传送完毕
2、 同步通信
同步通信依靠同步字符保持通信同步。 同步通信是由1~2个同步字符和多字节数 据位组成,同步字符作为起始位以触发同步时 钟开始发送或接收数据;多字节数据之间不允 许有空隙,每位占用的时间相等;空闲位需发 送同步字符。 同步通信传输速度较快,但要求有准确的 时钟来实现收发双方的严格同步,对硬件要求 较高,适用于成批数据传送。
MODEM控制逻辑: CTS-:清除发送信号 RTS-:请求发送信号 DTR-:数据终端准备好信号 DSR-:数据装置准备好信号 RLSD-:接收线路信号检测信号 RI-:振铃指示信号 OUT1-:由用户编程指定的输出端 OUT2-:与OUT1一样,可以由用户 编程指定(PC用)
3.波特率因子 波特率因子(BRD)是16位数,它与8250的 数据传输速率(波特率)有关。当使用8250的 内部时钟频率为1.8432MHz时,则波特率因子 BRD与波特率Baud之间的关系如下式所示:
BRD=时钟频率/(16×Baud)。
例如,若要计算波特率为1200b/s的波特率 除数,则有: BDR=1843200/(16×1200)=0060H=96。
管脚信号说明
数据总线缓冲器:D0~D7:双向数 据线 选择与控制逻辑: CS0、CS1、CS2-:输入片选信号 A0、A1、A2:8250内部寄存器选择 信号
MR:主复位输入信号,高电平有效 ADS-:地址选通信号=AEN DISTR、DISTR-:数据输入选通信号 DOSTR、DOSTR-:数据输出选通信号 DDIS:驱动器禁止信号,在CPU从 8250读取数据时为低电平,其他时 间为高电平禁止外部收发器对系统 总线的驱动 CSOUT:片选输出信号 XTAL1、XTAL2:外部时钟端 中断控制逻辑: INTR:中断请求输出信号
波特率发生器
除数寄存器低位
MODE控制寄存器
MODE状态寄存器
控制逻辑
中断允许寄存器 中断识别寄存器 控制逻辑
INTRPT
3. 连接
PC / XT异步通信适配器电路
四、寄存器与BPS 1.地址分配及其复用 3根地址信号线:A2 A1 A0 8个地址,7个可用,10个可编程物理端口,复 用。