返回主页 单片机教程XL2000开发板 单片机学习 自制编程器 单片机资料 软件下载 电子技术产品介绍如何购买 进入论坛

 单片机教程 栏目导航   第一页..单片机入门教程    第二页..单片机c语言   第三页..红外遥控和步进电机    第四页..单片机问答

4.3.3 串口的工作方式---51系列单片机设计实例教程

串行口分四种工作方式,由SCON中的SMO、SM1二位选择决定。

1.方式0

(1)特点

1.用作串行口扩展,具有固定的波特率,为Fosf/12。

2.同步发送/接收,由TXD提供移位脉冲,RXD用作数据输入/输出通道。

3.发送/接收8位数据,低位在先。

(2)发送操作

当执行一条“MOV SBUF,A”指令时,启动发送操作,由TXD输出移位脉冲,由RXD串行发送SBUF中的数据。发送完8位数据后自动置TI=1,请求中断。要继续发送时,T1必须有指令清零。

(3)接收操作

在RI=0条件下,置REN=1,启动一帧数据的接收,由TXD输出移位脉冲,由RXD接收串行数据到A中。接收完一帧自动置位RI,请求中断。想继续接收时,要用指令清零RI。

2.方式1

(1)特点

1.8位UART接口。

2.帧结构为10位,包括起始位(为0),8位数据位,1位停止位。

3.波特率由指令设定,由T1的溢出率决定。

(2)发送操作

当执行一条“MOV SBUF,A”指令时,启动发送操作,A中的数据从TXD端实现异步发送。发送完一帧数据后自动置TI=1,请求中断。要继续发送时,TI必须由指令清零。

(3)接收操作

当置REN=1时,串行口采样RXD,当采样到1至0的跳变时,确认串行数据帧的起始位,开始接收一帧数据,直到停止位到来时,把停止位送入RB8中。置位RI请求中断。CPU取走数据后用指令清零RI。

3.方式2和方式3

方式2和方式3具有多机通信功能,这两种方式除了波特率不同以外,其余完全相同。

(1)特点

1.9位UART接口。

2.帧结构为11位,包括起始位(为0)、8位数据位、1位可编程位TB8/RB8和停止位(为1)。

3.波特率在方式2时为固定FOSC/32或FOSC/64,由SMOD位决定,当SMOD=1时,波特率为FOSC/32;当SMOD=0时,波特率为FOSC/64。方式3的溢出率由T1的溢出率决定。

(2)发送操作

发送数据之前,由指令设置TB8(如作为奇偶校对位或地址/数据位),将要发送的数据由A写入SBUF中启动发送操作。在发送中,内部逻辑会把TB8装入发送移位寄存器的第9位位置,然后发送一帧完整的数据,发送完毕后置位TI。TI须由指令清零。

(3)接收操作

当置位SEN位且RI=0时,启动接收操作,帧结构上的第9位送入RB8中,对所接收的数据视SM2和RB8的状态决定是否会使RI置位。

当SM2=0时,RB8不论什么状态RI都置1,串行口都接收数据。

当SM2=1时,为多机通信方式,接收到的RB8为地址/数据表识位。

当RB8=1时,接收的信息为地址帧,此时置位RI,串行口接收发送来的数据。

当RB8=0时,接收的信息为数据帧,若SM2=1时,RI不会置位,此数据丢弃;若SM2=0,则SBUF接收发送来的数据。

 

51系列单片机设计实例教程12题

单片机指令的应用例子

定时器/计数器的基本结构与操作方式

定时器/计数器的SFR

定时器/计数器的工作方式

定时器/计数器的编程和使用

单片机定时器应用举例

中断系统的基本组成

单片机中断系统中的SFR

中断响应的自主操作过程

串行口的基本结构与操作方式

串行口的特殊功能寄存器

单片机串口的工作方式

如果对本文有疑问,请到论坛提问 编辑:51单片机学习网 @ 2009-10-20校对 中国开发板最佳品牌  版权:部分由编辑摘引,权利属原著作人