51单片机的串行口有方式0、方式1、方式2和方式3四种工作方式。下面分别介绍。
1.方式0
当设定SM1、SM0为00时,串行口工作于方式0,它又叫同步移位寄存器输出方式。在方式0下,数据从RXD(P3.0)端串行输出或输入,同步信号从TXD(P3.1)端输出,发送或接收的数据为8位,低位在前,高位在后,没有起始位和停止位。数据传输率固定为振荡器频率的1/12,也就是每一机器周期传送一位数据。方式0可以外接移位寄存器,将串行口扩展为并行口,也可以外接同步输入/输出设备。执行任何一条以SBUF为目的的寄存器指令,就开始发送。
在串行口方式0下工作并非是一种同步通信方式。它的主要用途是和外部同步移位寄存器外接,以达到扩展并行I/O口的目的。
2.方式1
当设定SM1、SM0为01时,串行口工作于方式1。方式1为数据传输率可变的8位异步通信方式,由TXD发送,RXD接收,一帧数据为10位:1位起始位(低电平)、8位数据位(低位在前)和1位停止位(高电平)。数据传输率取决于定时器的溢出速率(1/溢出周期)和数据传输率是否加倍的选择位SMOD。(www.xing528.com)
对于有定时/计数器2的单片机,当T2CON寄存器中RCLK和TCLK置位时,用定时器2作为接收和发送的数据传输率发生器;当RCLK=TCLK=0时,用定时器1作为接收和发送的数据传输率发生器。两者还可以交叉使用,即发送和接收采用不同的数据传输率。类似于模式0,发送过程是由执行任何一条以SBUF为目的的寄存器指令引起的。
3.方式2
当设定SM0、SM1两位为10时,串行口工作于方式2,此时串行口被定义为9位异步通信接口。采用这种方式可接收或发送11位数据,以11位为一帧,比方式1增加了一个数据位,其余相同。第9个数据即D8位用作奇偶校验或地址/数据选择,可以通过软件来控制它,再加特殊功能寄存器SCON中的SM2位的配合,可使51单片机串行口适用于多机通信。发送时,第9位数据为TB8;接收时,第9位数据送入RB8。方式2的数据传输率固定,只有两种选择,为振荡频率的1/64或1/32,可由PCON的最高位选择。
4.方式3
当设定SM0、SM1两位为11时,串行口工作于方式3。方式3与方式2类似,唯一的区别是方式3的数据传输率是可变的,而帧格式与方式2一样为11位一帧,所以方式3也适用于多机通信。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。