- 1、本文档共47页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第八章3串行接口8250
三、 8250的寄存器 8250内部有9种(10个)可访问的寄存器,其中,除数寄存器是16位的,占用两个地址连续的8位端口(即两个分频次数锁存器) 内部寄存器通过引脚A0-A2来进行寻址; 利用传输线控制寄存器的最高位,即除数寄存器访问位DLAB,来区别共用两个端口地址的不同寄存器(P249表8-4) DLAB=1,拟访问除数寄存器的高8位及低8位 DLAB=0 ,拟访问其他控制或状态寄存器 8250内部寄存器的地址 DLAB A2 A1 A0 寄存器操作 com1 com2 0 0 0 0 读接收缓冲器/写发送保持寄存器 3F8+0 2F8+0 0 0 0 1 中断允许寄存器 3F8+1 2F8+1 * 0 1 0 中断识别寄存器(只读) 3F8+2 2F8+2 * 0 1 1 通信线路控制寄存器 3F8+3 2F8+3 * 1 0 0 调制解调器控制寄存器 3F8+4 2F8+4 * 1 0 1 通信线路状态寄存器 3F8+5 2F8+5 * 1 1 0 调制解调器状态寄存器 3F8+6 2F8+6 * 1 1 1 不用 3F8+1 2F8+1 1 0 0 0 除数寄存器(低8位) 3F8+0 2F8+0 1 0 0 1 除数寄存器(高8位) 3F8+1 2F8+1 1. 接收缓冲寄存器 存放串行接收后转换成并行的数据 CPU 接收缓冲寄存器 接收移位寄存器 同步控制 8250 SIN 2. 发送缓冲寄存器 包含将要串行发送的并行数据 CPU 发送缓冲寄存器 发送移位寄存器 同步控制 8250 SOUT 3. 除数寄存器(分频次数锁存器) 除数寄存器保存设定的分频系数 分频系数=基准时钟频率÷(16×比特率) 起 始 位 时钟 (RCLK) 数据线 (SIN) T 16 T 16 T 8 T 4. 传输线控制寄存器 DLAB SBRK SBP EPS PEN STB WLS1 WLS0 寄存器选择 0 正常值 1 除数寄存器 中止字符 0 无作用 1 发送中止字符 校验位设置 **0 无校验位 001 设置奇校验 011 设置偶校验 101 校验位为1 111 校验位为0 停止位个数 0 1位 1 1.5位(数据位为5位时) 1 2位(数据位为6~8位时) 数据位个数 00 5位 01 6位 10 7位 11 8位 指定串行异步通信的字符格式 D5 D4 D3 D2 D1 D0 D6 D7 5. 传输线状态寄存器 0 TSRE THRE BI FE PE OE DR 为1,表示发送移位寄存器空; 当数据由发送保持寄存器移入 发送移位寄存器时,该位为0 提供串行异步通信的当前状态供CPU读取和处理 为1,表示发送保持寄存器空, 当CPU将字符写入发送保持 寄存器后,该位为0 为1,表示正在传输中止字符 为1,表示出现帧错误 为1,表示出现奇偶错 为1,表示出现溢出错 为1,表示接收数据缓冲器收到 一个数据,既接收数据准备好; 当CPU读走数据后,该位为0 D0 D1 D2 D3 D4 D5 D6 D7 为1使8250为循环工作方式 否则为正常工作方式 6. 调制解调器(Modem)控制寄存器 设置8250与数据通信设备之间联络应答的输出信号 0 0 0 LOOP OUT2 OUT1 RTS DTR 为1使-OUT2引脚为低 否则为高 为1使-OUT1引脚为低 否则为高 为1使-RTS引脚为低 否则为高 为1使-DTR引脚为低 否则为高 D0 D1 D2 D4 D7 – D5 D3 7. 调制解调器(Modem)状态寄存器 dCTS dRSLD CTS DSR RI dDSR dRI RLSD D0 D1 D2 D3 D4 D5 D6 D7 高4位中某位为1,说明相应输入信号当前为低电平有效 低4位中某位为1,则说明从上次CPU读取该状态字后,相应输入信号已发生改变,从高变低或反之 MSR反映4个控制输入信号的当前状态及其变化 MSR低4位中任一位置1,均将产生调制解调器状态中断,当CPU读取该寄存器或复位后,低4位被清零 4级中断( 4个优先级、10个源) 接收线路状态中断 奇偶错 溢出错 帧错 收到中止字符 接收器数据准备好中断 发送保持寄存器空中断 调制解调器状态中断 清除发送状态改变 数据终端准备好状态改变 振铃接通变成断开 接收线路信号检测状态改变 优先权高 优先权低 8. 中断允许寄存器 8250设计有4级中断和2个中断寄存器 4级中断指优先权的等级位4级,它是按照串行通信过程中事件的紧迫程度安排的、是固定的 用户可利用中断允许或禁止进行
文档评论(0)