1.串口控制寄存器SCON
SM2:多机通信控制位
REN:允许接收控制位
TB8:发送第九位数据
RB8:接收第九位数据
TI:发送中断标志位
RI:接收中断标志位
2.电源控制寄存器PCON
当SMOD位为1,则串行口方式1、方式2、方式3的波特率加倍。
3.串口的工作方式
(1)方式0
方式0通常来接移位寄存器,扩展I/O口,方式0工作波特率固定为fosc/12。数据通过RXD输出输入,同步时钟通过TXD输出。
发送过程:在TI=0时,向SBUF写入数据启动发送过程,发完后,TI置位为1。
接收过程:在RI=0时,数据全部送入SBUF中,接收中断标志位RI置位为1。
SCON=0x00选用方式0,SBUF=i开始发送,TI=0,程序停在while处;当发送完成后TI为1,程序向后执行。
(2)方式1
发送和接收和方式0类似,fosc为机器周期。
方式1的波特率由定时计数器T1的溢出率和电源控制器PCON中的SMOD决定。波特率=2SMOD×(T1的溢出率)/32.
T1的初值=256-fosc×2的SMOD次幂/(12×波特率×32)
设SMOD=0,fosc为12MHZ,波特率为1200,计算T1=E6H。
使用程序: