7.3.3 8251寄存器与控制字
8251A是可编程通用串行接口芯片,具体应用时必须对它进行初始化编程,同时必须了解其寄存器功能。8251A的初始化编程包括设定工作方式(同步、异步)、传输率、数据位数、校验方式、停止位数等。如果是同步方式还必须设置是内同步,还是外同步。
1.方式选择命令字
方式选择命令字有同步方式控制字和异步方式控制字,当D1D0=00时为同步方式控制字,这时D7D6用于选择同步方式;当D1D0≠00时为异步方式控制字,这时D7D6用于选择停止位数。8251A方式选择控制字格式如图7.10所示。
图7.10 8251A方式选择控制字
在同步方式下,发送和接收的波特率分别与线的输入时钟频率相同。在异步方式中,D1D0的三种组合可确定波特率因子,这时
的频率,波特率和波特率因子关系为:
=波特率因子×波特率。其中:
为8251发送、接收数据时钟频率;波特率为串行通信速率;波特率因子为8251的串行传输倍率。
2.工作命令字
工作命令字的作用是确定8251A的实际操作,使8251A处于某种工作状态,以便接收和发送数据。工作命令字的格式如图7.11所示。
图7.11 8251A工作命令字
3.状态字
8251A内部设有状态寄存器,CPU可用输入指令IN获取状态寄存器的内容,判定8251A当前的工作状态。8251A状态寄存器定义如图7.12所示。
图7.12 8251A状态寄存器
状态寄存器的RxRDY、TxE、SYNDET和DSR位的电平与芯片同名引脚电平相同,仅有TxRDY位的含义与引脚TxRDY不同。对于状态寄存器的TxRDY位只要发送寄存器
空就置位,而芯片引脚的TxRDY还要满足和TxE=1时才置位。
状态寄存器的D3、D4、D5分别作为奇偶错、溢出错和帧出错的指示,当输出传输过程中出现某种错误时,相应状态位就被置1。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。