SCI异步通信格式既可以使用单线通信(单路),也可以使用两线通信(双路)。在这种模式下,每一帧都由一个起始位、1~8个数据位、一个可选的奇偶校验位和1~2个停止位组成。每个数据位有8个SCICLK周期。
收到一个有效的起始信号后,接收器开始工作。一个有效的起始信号是通过4个连续的内部SCICLK周期的零位来识别,如图10-6所示。如果任何一位不是0,则处理器停止启动过程,并且开始寻找下一个起始位。
图10-6 SCI异步通信格式
对于紧跟在起始位后的位,处理器通过对每个位的中间3次采样值来确定该位的值。这些采样分别出现在第4个、第5个和第6个时钟周期,而且根据多数表决(3取2)原则确定该位的值。图10-6所示为异步通信格式示意图,图中说明了如何查找起始位以及多数表决原则执行的位置。
由于接收器自动与帧同步,所以外部发送和接收器件都不需要使用同步串行时钟。同步串行时钟可以由器件各自产生。
图10-7所示为接收器信号时序的一个例子,条件是:
1)地址位唤醒模式(地址位不出现在空闲线模式中)。
2)每个字符由6位组成。
图10-7 通信模式中SCIRX信号时序图
说明:
1)RXENA标志位(SCICTL1寄存器的位0)置1,使能接收器。
2)数据到达SCIRXD引脚,检测到起始位。
3)数据从RXSHF移至接收缓冲器(SCIBRXUF),申请中断。RXRDY标志位(SCIR-XST.6)置1表示接收到一个新的字符。
4)程序读SCIRXBUF寄存器,RXRDY标志自动清零。(www.daowen.com)
5)SCIRXD引脚接收到新的数据字节,检测到起始位,然后清除。
6)RXENA清零,禁止接收器。RXSHF寄存器继续组合数据,但是不会将数据传送到接收缓冲寄存器。
图10-8所示是发送器信号时序图的一个例子。条件是:
1)地址位唤醒模式(地址位不会出现在空闲线模式中)。
2)每个字符包含3个位。
图10-8 通信模式中SCITX信号时序图
说明:
1)TXENA位(SCICTL1寄存器的位1)置l,使能发送器,发送数据。
2)写SCITXBUF,发送器非空,TXRDY标志清零。
3)SCI发送器将数据传送到移位寄存器(TXSHF),发送器准备接收第二个字符(置TXRDY为1),并且申请中断(当置TXINT ENA位为1,使能中断)。
4)在TXRDY置1后,程序将第二个字符写入SCITXBUF寄存器(当第二个字符写入到SCITXBUF寄存器后,会再次清除TXRDY)。
5)第一个字符发送完毕,开始传第二个字符传送至移位寄存器TXSHF。
6)TXENA位清零,禁止发送器,SCI完成当前字符的发送。
7)第二个字符发送完毕,发送器空,并已经为发送新的字符做好准备。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。