第五章数字量输入输出6of7.ppt
文本预览下载声明
2003.5.28 三、可编程串行接口Ins 8250 8250实现了起止式串行异步通信协议,支持全双工通信: 通信字符可选5、6、7、8位数据位 停止位可选1、1.5、2位 可选择奇校验、偶校验、不校验或校验位强制为“1”/“0” 具有奇偶校验错、帧错和溢出等错错误检测电路 8250支持的数据传输速率为50~9600bps 8250内部有10个可寻址的8位寄存器,分为3类:数据类,控制类,状态类。 1. 串行数据的发送 双缓冲寄存器结构,保证数据的连续发送 2. 串行数据的接收 3. 接收错误的处理 奇偶错误PE(Parity Error) 若接收到的字符的“1”的个数不符合奇偶校验要求 帧错误FE(Frame Error) 若接收到的字符格式不符合规定(如缺少停止位) 溢出错误OE(Overrun Error) 若接收移位寄存器接收到一个数据,并送至输入缓冲器时,CPU还未取走前一个数据,就会出现数据溢出 若接收缓冲器的级数多,则溢出错误的几率就少 4、 8250的引脚 连接CPU的部分 连接外设的部分 注意:8250不是Intel公司的产品,所以该芯片引脚名称与前面学习的8253、8255等Intel产品有所不同,但是引脚功能却是类似的 处理器接口引脚(1) 数据线D0-D7:在CPU与8250之间交换信息 地址线A0-A2:寻址8250内部寄存器 片选线:包括 3个片选输入信号CS0、CS1、CS2 1个片选输出信号CSOUT。 当3个片选输入都有效时,才选中8250芯片,同时CSOUT输出高电平有效(作为选中此片的指示)。 地址选通信号ADS:当该信号低有效时,锁存上述地址线和片选线的输入状态,保证读写期间的地址稳定 处理器接口引脚(2) 读控制线 数据输入选通DISTR(高有效)和DISTR(低有效)中一个信号有效,CPU从8250内部寄存器读出数据 相当于I/O读信号 写控制线 数据输出选通DOSTR(高有效)和DOSTR(低有效)中一个有效,CPU就将数据写入8250内部寄存器 相当于I/O写信号 8250读写控制信号有两对,每对信号作用完全相同,只不过有效电平不同而己 处理器接口引脚(3) 驱动器禁止信号DDIS:CPU从8250读取数据时,DDIS引脚输出低电平,用来禁止外部收发器对系统总线的驱动;其他时间,DDIS为高电平 主复位线MR:硬件复位信号 中断请求线INTRPT:8250有4级中断、共10个中断源,当任一个未被屏蔽的中断源有请求时,INTRPT均输出高电平向CPU请求中断 PC/XT 中 COMi的中断请求信号 时钟信号 时钟输入引脚XTAL1:8250的基准工作时钟 时钟输出引脚XTAL2:基准时钟信号的输出端 波特率输出引脚BAUDOUT:基准时钟经8250内部波特率发生器分频后产生发送时钟 接收时钟引脚RCLK:接收外部提供的接收时钟信号。 若采用发送时钟作为接收时钟,则只要将RCLK引脚和BAUDOUT引脚直接相连 串行异步接口引脚 输出线 OUT1和OUT2: 两个可由用户定义用途的输出信号 由调制解调器控制寄存器的D2和D3位控制其输出 使用时,一般低电平有效,复位时恢复为高 (一) 可编程串行接口Ins 8250 结构 8250的寄存器 8250内部有9种可访问的寄存器,其中,除数寄存器是16位的,占用两个地址连续的8位端口 内部寄存器通过引脚A0-A2来进行寻址; 利用通信线路控制寄存器的最高位,即除数寄存器访问位DLAB,来区别共用两个端口地址的不同寄存器 DLAB=1,拟访问除数寄存器的高8位及低8位 DLAB=0 ,拟访问其他控制或状态寄存器 (二) 寄存器及寻址 P289 表5.10 A9A8A7A6 A5A4A3A2A1A0 DLAB(标志位) 寄存器 000 0 写发送寄存器/读接受寄存器 000 1 除数寄存器低字节 001 1 除数寄存器高字节 001 0 中断允许 010 中断识别 011 线路控制 100 MODEM 控制 101 线路状态 110 MODEM 状态 (二) 寄存器及寻址 P289 表5.10 注意: A2A1A0 = 011 时 访问线路控制寄存器 其D7位称为 DLAB 除数标志位 而当 DLAB = 1 时 A2A1A0 = 000 时 访问除数寄存器低字节 A2A1A0
显示全部