(4) Intel 8251 的状态寄存器
8251的状态寄存器用于存放8251接口(入/出设备)的工作状态。CPU通过检查该寄存器的内容来了解串行口工作状态,以便正确地执行字符入、出操作,其格式规定如表5.2所示:
表 5.2
|
D7
|
D6
|
D5
|
D4
|
D3
|
D2
|
D1
|
D0
|
|
DSR
|
SYNDET
|
FE
|
OE
|
PE
|
TxE
|
RxRDY
|
TxRDY
|
D0位TxRDY,是发送器准备好信号,输出,高有效,值为1时,表明CPU可以向8251发送数据。
D2位TxE,是发送器为空的信号,输出,高有效,表明实现从并行到串行转换的移位寄存器已经变空,从而整个的发送器都空了。TxE与TxRDY信号的区别在于,TxE只表明数据缓冲器为空,若并行到串行转换的移位操作尚未完成,则TxE仍为低。
D1位是RxRDY,是接收器准备好信号,输出,高有效,其为1时,表明8251已经从串行输入端接收了一个字符,则CPU可以到8251取走该字符数据。
D6位SYNDET只用于同步方式传送,在教学机中未使用同步传送方式,故不涉及此位。
串行接口在程序中的用法,在TEC-2机的监控程序中可以看得很清楚。
PE、OE、FE 3位为1,分别表明接口中出现奇偶错(Parity Error)、溢出错(Overrun Error) 和帧错误(Framing
Error)。这些错误的出现并不禁止8251继续工作。这些错误标志信号可通过命令指令中的D4 (ER) 位使其复位。
|
|