单片机工作方式

2019-04-15 18:51发布

串口的工作方式
—51
系列单片机
 
串行口分四种工作方式,由
SCON
中的
SMO

SM1
二位选择决定。
 
 
1.
方式

 

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.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
和方式

 
方式
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
接收发送来的数
据。