8250的寄存器详细说明

8250的寄存器列表如下:
基地址   读/写 寄存器缩写        注释
 0    Write    -      发送保持寄存器(DLAB=0)
  0    Read    -   接收数据寄存器(DLAB=0)
  0    Read/Write    -    波特率低八位(DLAB=1)
  1    Read/Write    IER   中断允许寄存器
  1    Read/Write    -    波特率高八位(DLAB=1)
  2    Read     IIR   中断标识寄存器
  2   Write    FCR   FIFO控制寄存器
  3    Read/Write    LCR    线路控制寄存器
  4    Read/Write    MCR    MODEM控制寄存器
  5   Read    LSR    线路状态寄存器
  6   Read    MSR    MODEM状态寄存器
  7    Read/Write    - Scratch Register

注:com1口的基地址为:3F8; com2口的基地址为:2F8。
在上表中,8250共有12个寄存器,使用了8个地址,其中部分寄存器共用一个地址,由DLAB=0/1来区分,在DLAB=1,用于设定通讯所需的波特率,这里设置波特率为9600bps;
即设置波特率的高八位的寄存器控制字为00h, 设置波特率的低八位的寄存器控制字为0ch;

 

8250的控制寄存器控制/状态字:
1、中断允许寄存器(IER)
 
    7     6    5      4     3     2     1     0
Bit7:未使用;
Bit6:未使用;
Bit5:进入低功耗模式(对于16750芯片有效);
Bit4:进入睡眠模式(对于16750芯片有效);
Bit3:允许MODEM状态中断;(为1允许,为0禁止)
Bit2:允许接收线路状态中断;(为1允许,为0禁止)
Bit1:允许发送保持器空中断;(为1允许,为0禁止)
Bit0:允许接收数据就绪中断;(为1允许,为0禁止)

2、中断识别寄存器
 位        注释
Bit6;7=00          无FIFO
Bit6;7=01          允许FIFO,但不可用

Bit6;7=11          允许FIFO
Bit5               允许64字节FIFO(16750)
Bit4               未使用
Bit3               16550超时中断
Bit2;1=00          MODEM状态中断(CTS/RI/DTR/DCD)
Bit2;1=01          发送保持寄存器空中断
Bit2;1=10          接收数据就绪中断
Bit0=0             有中断产生
Bit0=1             无中断产生

 

3、 FIFO控制寄存器(FCR)
   FCR可写但不可读,该寄存器用于控制16550或16750芯片的FIFO寄存器
  
4、线路控制寄存器(LCR)    00 xx0 011 00 11 10 11
    LCR用于设置通讯所需的一些参数
 位           注释
Bit7=1             允许访问波特率因子寄存器
Bit=0                    允许访问接收/发送及中断允许寄存器
Bit6                     设置间断;0-禁止,1-设置
Bit5,4,3=xx0       无校验
Bit5,4,3=001       奇校验
Bit5,4,3=011       偶校验
Bit5,4,3=101       奇偶保持为1
Bit5,4,3=111             奇偶保持为0
Bit2=0                   一位停止位
Bit2=1                   二位停止位(数据位6~8位),1.5位停止位(5位数据位)
Bit1,0=00         5位数据位
Bit1,0=01         6位数据位
Bit1,0=10         7位数据位
Bit1,0=11         8位数据位

NOPARITY No              = 0
ODDPARITY Odd            = 1
EVENPARITY Even          = 2
MARKPARITY Mark          = 3 校验和总为1
SPACEPARITY SPACE        = 4 校验和总为0


5、 MODEM控制器(MCR)
  MCR可读可写,bit4=1,进入环路测试模式;bit3~0用来控制对应的管脚
位              注释
Bit7                     未使用
Bit6           未使用
Bit5           自动流量控制(仅16750)
Bit4                     环路测试
Bit3           辅助输出2
Bit2                     辅助输出1
Bit1                     设置RTS
Bit0                     设置DSR

6、线路状态寄存器(LSR)
  位          注释
 Bit7         FIFO中接收数据错误
  Bit6              发送移位寄存器空  1 为空,0为非空
  Bit5              发送保持寄存器空  1 为空,0为非空
  Bit4              间断
  Bit3        帧格式错误
  Bit2        奇偶错
  Bit1        超越错
  Bit0        接收数据就绪

7、 MODEM状态寄存器(MSR)
位               注释
Bit7       载波检测
Bit6       响铃指示
Bit5       DSR准备就绪
Bit4       CTS有效
Bit3       DCD已改变
Bit2       RI已改变
Bit1       DSR已改变
Bit0       CTS已改变

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值