51单片机的串行口为可编程的,用SM0、SM1设置串行口的工作方式。
1.方式0
串行口作同步移位寄存器用,波特率固定为fOSC/12 。 数据8位/帧,低位在前,无起始位、奇偶位及停止位。
数据由RXD(P3.0)端输入/输出,同步移位脉冲由TXD(P3.1)端输出。
多用于外接移位寄存器以扩展I/O端口
=1。当上述两条的任一条不满足时,数据丢失。
SM2=0,则不受第9数据位限制,不用于多机通信,第9数据位可作 为奇偶校验位。也可不用第9数据位,即不理睬第9数据位的值,当方式1 一样使用,为点对点通信,但要注意帧数据格式与方式1不同,不是10位 而是11位。
0 D0 D1 D2 D3 D4 D5 D6 D7 1
发送过程: MOV SBUF,A
CPU将数据写到SBUF,启动发送,数据从TXD 端输出。发完一帧, 硬件自动置TI=1。
接收过程: MOV A,SBUF
数据从RXD输入。必须先设置REN=1,允许接收。如REN=0,禁止接收。 ① RI=0; ② SM2=0或接收到的停止位=1,则将8位数据装入SBUF, 停止位1装入RB8,RI置1。否则数据丢失。在方式1下,通常设置SM2=0。 方式1下的波特率是可变的.取决于定时器TI 的溢出率
传送适用于近距离、传送速度高的场合。
2.串行通信 串行通信时,传送数据的各位按顺序一位一位地传送。 其优点是传输线少,传送通道费用低,故适合长距离数据传送。缺
点是传送速度较低。
PC机与外部设备(如打印机等)通信时,如果距离小于30m,采用 并行通信方式;当距离大于30m时,则采用串行通信方式。51单片机具 有并行和串行二种基本通信方式。
3.方式2和方式3
为11位异步通信接口。由TXD发送,RXD接收。 一帧信息由ll位组成,l位起始位0,8位数据位,1位可编程位(第9数 据位D8)和1位停止位1。