单片机串行接口工作方式

时间:2023-03-15来源:佚名
AT89S52单片机的串行口有方式0、方式1、方式2、方式3四种工作方式。方式0主要用于扩展并行输入输出口,方式1、2、3用于串行通信。对这4中工作方式的学习,主要是通过分析各个方式下的发送和接收逻辑来掌握。单片机的串行通信方式包括单片机与单片机之间的双机或多机通信、单片机与PC机的通信等,需要留意。
一、串行口方式0:同步移位寄存器方式

串行口的工作方式0为移位寄存器输入输出方式,方式0发送或接收完8位数据后由硬件置位发送中断标志TI或接收中断标志RI。

1.方式0发送

串行数据从RXD引脚输出,TXD引脚输出移位脉冲。CPU将数据写入发送寄存器(SBUF)时,立即启动发送,将8位数据以fosc/12的固定波特率从RXD输出,低位在前,高位在后,直至最高位(D7位)数字移出后,停止发送数据和移位时钟脉冲。

MOV SCON, #10H ; 串行口方式0

MOV A, SBUF ; 接收数据

JNB RI, $ ; 等待数据接收完毕

2.方式0接收

方式0接收前,务必先置位REN=1,允许接收数据。此时,RXD为串行数据输入端,TXD仍为同步脉冲移位输出端。当RI=0和REN=1同时满足时,就会启动一次接收过程。接收器以fosc/12的固定波特率接收TXD端输入的数据。当接收到第8位数据时,将数据移入接收寄存器,并由硬件置位RI,向CPU申请中断。

MOV SCON, #00H ; 串行口方式0

MOV SBUF, A ; 将数据送出

JNB TI, $ ; 等待数据发送完毕

工作方式0一般用于对并行输入输出口的扩展,如图1所示。


单片机串行接口工作方式
图1 方式0的应用
二、方式1:8位UART方式

当SM0=0、SM1=l时,串行口选择方式1,单片机工作于8位数据异步通讯方式(UART)。在方式1时,传送一帧信息为10位,即1位起始位(0),8位数据位(低位在先)和1位停止位(1)。方式1的数据格式如图2所示。


单片机串行接口工作方式
图2 方式1的数据格式

1.方式1发送

当CPU执行MOV A,SBUF指令将数据写入发送缓冲SBUF,启动发送。先把起始位输出到TXD,然后把移位寄存器的输出位送到TXD。接着发出第一个移位脉冲(SHIFT),使数据右移一位,并从左端补入0。此后数据将逐位由TXD端送出,而其左面不断补入0。发送完一帧数据后,就由硬件置位TI。

单片机串行接口工作方式
图3 方式1发送

2.方式1接收

当REN=1且接收到起始位后,在移位脉冲的控制下,把接收到的数据移入接收缓冲寄存器(SBUF)中,停止位到来后,把停止位送入RB8中,并置位RI,通知CPU接收到一个字符。

单片机串行接口工作方式
图4 方式1接收

三、方式2和方式3:9位数据异步通讯方式

当SM0=1、SM1=0时,串行口选择方式2;当SM1=1、SM0=1时,串行口选择方式3。方式2和方式3的工作原理相似,定义为9位的异步通讯接口,发送(通过TXD)和接收(通过RXD)一帧信息都是11位,1位起始位(0)、8位数据位(低位在先)、1位可编程位(即第9位数据)和1位停止位(1)。其数据格式如图5所示。

单片机串行接口工作方式
图5 方式2和3的数据格式

方式2和方式3唯一的差别是方式2的波特率是固定的,方式3的波特率是可变的。

1.方式2和方式3发送

当CPU执行一条数据写入SUBF的指令时,启动发送器发送。把起始位(0)放到TXD端,经过一位时间后,数据由移位寄存器送到TXD端,通过第一位数据,出现第一个移位脉冲。当TB8的内容移到位寄存器的输出位置时,其左面一位是停止位“1”,再往左的所有位全为“0”。这种状态由零检测器检测到后,就通知发送控制器作最后一次移位,然后置TI=1,请求中断。发送过程如图6所示。

单片机串行接口工作方式
图6 方式2和3的发送

2.方式2和方式3接收

接收时,数据从右边移入输入移位寄存器,在起始位0移到最左边时,控制电路进行最后一次移位。当RI=0,且SM2=0(或接收到的第9位数据为1)时,接收到的数据装入接收缓冲器SBUF和RB8(接收数据的第9位),置RI=1,向CPU请求中断。如果条件不满足,则数据丢失,且不置位RI,继续搜索RXD引脚的负跳变。接收的过程如图7所示。

单片机串行接口工作方式
图7 方式2和3的接收

四、波特率的计算

波特率反映串行口传输数据的速率,它取决于振荡频率、PCON寄存器的SCON位以及定时器的设定。在串行通讯中,收发双方的数据传送率(波特率)要遵循一定的约定。(http://www.gdzrlj.com版权所有)AT89S52串行口的四种工作方式中,方式0和2的波特率是固定的,而方式1和3的波特率是可变的,由定时器的溢出率控制。

方式0为固定波特率:波特率=fosc/12

方式2可选两种波特率:波特率=(2SMOD/64)×fosc

当SMOD=1时,波特率=fosc/32;

当SMOD=0时,波特率=fosc/64。

方式1、3为可变波特率,用T1作波特率发生器。

波特率=(2SMOD/32)×T1溢出率,T1溢出率为T1溢出一次所需时间的倒数。

单片机串行接口工作方式

例如:计算波特率。要求用T1工作于方式2来产生波特率2400,已知晶振频率=12MHz。

解:求出T1的初值:

单片机串行接口工作方式

常用波特率和T1初值可参考教材中的表6-2。
五、多机通信

在集散式分布系统中,往往采用一台主机和多台从机。其中主机发送的信息可以被各个从机接收,而各从机的信息只能被主机接收,从机与从机之间不能互相直接通信。

图8为多机通信连线示意图,系统中左边为主机,其余的为1~n号从机,并保证每台从机在系统中的编号是惟一的。

单片机串行接口工作方式
图8 多通信示意图

相关阅读

电机一启动断路器就跳闸?别瞎换零件!按这几步查,一找一个准

电机一启动,断路器“啪”的一声就跳闸,这是厂里电工最常碰到的问题。很多人第一反应就是换断路器、修电机线圈,忙活大半天,钱花了,问题还没解决。其实根本不用这么折腾...
2026-04-13
电机一启动断路器就跳闸?别瞎换零件!按这几步查,一找一个准

干货实用!电气故障检修的三步骤与八个技巧

电气故障检修的三步骤 1. 观察和调查故障现象: 电气故障现象是多种多样的。例如,同一类故障可能有不同的故障现象,不同类故障可能有同种故障现象,这种故障现象的同一性和多...
2023-06-27

总结:电容在电路的基本常识!

放大电路中耦合电容和旁路电容如何判别? 耦合电容负极不接地,而是接下一级的输入端,旁路电容负极接地。 运放的多级交流放大电路如何选用电容耦合? 其实很简单,一般瓷片电容...
2023-03-31
总结:电容在电路的基本常识!

电工技术科普——照明控制线路的检修调试,强烈建议收藏

照明控制线路的检修调试 当照明控制线路出现异常时,会影响到照明灯的工作,检修调试之前,先要做好照明线路的故障分析,为检修调试做好铺垫。 室内照明控制线路的检修调试 当...
2023-06-25
电工技术科普——照明控制线路的检修调试,强烈建议收藏

三相异步电动机的转动原理图

有关三相异步电动机的转动原理,介绍了旋转磁场的产生、旋转磁场的旋转方向、旋转磁场的极对数、旋转磁场的转速,电动机的转动原理与转差率等知识,有需要的朋友参考下。 三相...
2023-06-26
三相异步电动机的转动原理图

热销商品

加厚abs安全帽电工建筑工地程施工领导监理透气防砸头盔可印字V型

这款加厚ABS安全帽专为电工、建筑工地施工人员、领导及监理设计,采用高强度ABS工程塑料,抗冲击、防砸性能优异,有效保障头部安全。帽体加厚设计,增强耐用性与防护等级...
5.8

欧普led筒灯3w孔灯超薄桶灯吊顶天花灯过道嵌入式洞灯客厅5w

欧普LED筒灯是一款高品质嵌入式照明产品,适用于客厅、过道、吊顶等多种场景。采用优质LED光源,提供3W和5W两种功率选择,光线柔和均匀,显色指数高,有效还原真实色彩。超...
7.45

水口钳高硬度模型剪钳电子钳工业级口水剪斜嘴钳偏口斜口专用钳子

水口钳高硬度模型剪钳是一款工业级精密工具,专为电子、模型制作及精细作业设计。采用优质高碳钢材质,经热处理工艺打造,具备卓越的硬度和耐磨性,可轻松剪切金属引脚、...
4.8

170电子剪钳II 如意斜口钳 工业斜嘴钳水口钳 模型剪塑胶钳尖嘴钳

170电子剪钳II如意斜口钳是一款专业级精密工具,集工业斜嘴钳、水口钳、模型剪、塑胶钳与尖嘴钳功能于一体,适用于电子维修、模型制作、手工艺及精密作业。其采用优...
4.5

安全帽国标工地加厚施工领导透气安全头盔建筑工程监理免费印字

本款安全帽严格遵循国家GB 2811-2019标准,专为建筑工程、工地施工及监理人员设计。采用高强度ABS工程塑料,加厚壳体有效抗冲击,保障头部安全。帽体轻盈透气,内置可调...
10

网站栏目