电工文库|80C51单片机串行通信工作方式

   更新日期:2017-03-25     来源:建材之家    作者:水电之家    浏览:28    评论:0    
核心提示:1. 串行工作方式0 在方式0下,串行口是作为同步移位寄存器使用。这时以RXD(P3.0)端作为数据移位的入口和出口,而由TXD(P3.1)端提供移位脉冲。移位数据的发送和接收以8位为一帧,不设起始位和停止位,低位在前高位在后。其帧格式为: ....D0D1D2D3D4D5D6D7......(1)数据发送与接收 使用方式0实现数据的移位输入输出时,实际上是把串行口变成并行口使用。串行口作为并行输

显微镜下的黄龙玉

推荐简介:近些年黄龙玉的价格逐渐攀升,有越来越多的人都开始纷纷收藏黄龙玉,随着求购者需求的增多,市面上也出现了不少假的黄龙玉,那有什么仪器可以对黄龙玉的玉色是自然色,还是增强色进行鉴别呢?严格上来说,颜色没有真假,但是玉皮却有真假,用辅助仪器来判断玉色的手段常见的有三种:1.查尔斯滤色镜,又称祖母绿滤色镜,其分辨颜色有专门的颜色对照表可供参考。2.显微镜,一般用于观察玉石的表面特征,玉石内部接近表面的结构......
水电之家讯:1. 串行工作方式0

在方式0下,串行口是作为同步移位寄存器使用。这时以RXD(P3.0)端作为数据移位的入口和出口,而由TXD(P3.1)端提供移位脉冲。移位数据的发送和接收以8位为一帧,不设起始位和停止位,低位在前高位在后。其帧格式为:

....

D0

D1

D2

D3

D4

D5

D6

D7

......

(1)数据发送与接收

使用方式0实现数据的移位输入输出时,实际上是把串行口变成并行口使用。

串行口作为并行输出口使用时,要和CD4049或74LS164配合使用,其电路连接如图10。

图(b)为74LS164的引脚图,芯片各引脚功能如下:

Q0~Q7为并行输出引脚。

DSA、DSB为 串行输入引脚。

清零引脚,低电平时,使74LS164输出清零。

CP为时钟脉冲输入引脚,在CP脉冲的上升沿作用下实现移位。在CP=0, =1时,74LS164保持原来数据状态不变。

利用串行口与74LS164实现八位串入并行输出的连接如图(a)所示,当8位数据全部移出后,SCON寄存器的TI位被自动置1。用P1.0输出低电平可将164输出清零。

如果把能实现“并入串出”功能的CD4014或74LS165与串行口配合使用,就可以把串行口变为并行输入口使用。如图所示。

图(b)为74LS165引脚图,当=1时,允许串行移位, =0时允许并行输入。当CPINH=1时,从CP引脚输入的每一个正脉冲使QH输出移位一次。REN=0,



并行输入

禁止接收;REN=1,允许接收。当软件置位REN时,即开始从RXD端以fosc/12波特率输入数据(低位在前),当接收到8位数据时,置位中断标志RI,在中断处理程序中将REN清零停止接收数据,并用P1.0引脚将清零,停止串行输出,转而并行输入。当SBUF中的数据取走后,再将REN置1准备接收数据,并用用P1.0将 置1,停止并行输入,转串行输出。

(2)波特率

方式0时,移位操作的波特率是固定的,波特率=fosc/12。

(3) 应用举例

例1 使用74LS164的并行输出端接8支发光二极管,利用它的串入并出功能,把发光二极管从右向左依次点亮,并反复循环之。

假定发光二极管为共阴极型,则电路连接如图所示。



当串行口把8位状态码串行移位输出后,TI置1。如把TI作为状态查询标志,则使用查询方法完成的参考程序如下:



注意:串行口先移出最低位D0,而74LS164通过同步脉冲移到Q0,随着8个字节的逐步移出,D0位通过8个同步脉冲移到Q7。

此外,串行口并行I/O扩展功能还常用于LED显示器接口电路。

2.串行工作方式1

方式1是10位为一帧的异步串行通信方式。共包括1个起始位,8个数据位和1个停止位。其帧格式为:

起始位<?XML:NAMESPACE PREFIX = O />

D0

D1

D2

D3

D4

D5

D6

D7

停止

(1)数据发送与接收

方式1的数据发送是由一条写发送寄存器(SBUF)指令开始的。随后在串行口由硬件自动加入起始位和停止位,构成一个完整的帧格式,然后在移位脉冲的作用下,由TXD端串行输出。一个字符帧发送完后,使TXD输出线维持在“1”(space)状态下,并将SCON寄存器的TI置1,通知CPU可以发送下一个字符。用动画

接收数据时,SCON的REN位应处于允许接收状态(REN=1)。在此前提下,串行口采样RXD端,当采样到从1向0的状态跳变时,就认定是接收到起始位。随后在移位脉冲的控制下,把接收到的数据位移入接收寄存器中。直到停止位到来之后把停止位送入RB8中,并置位中断标志位RI,通知CPU从SBUF取走接收到的一个字符。

(2)波特率设定

方式0 的波特率是固定的,一个机器周期进行一次移位。但方式1的波特率是可变的,其波特率由定时器1的计数溢出来决定,其公式为: 其中

smod为PCON寄存器最高位的值,smod=1表示波特率加倍,定时器的工作于方式2。

3.串行工作方式2

方式2是11位一帧的串行通信方式,即1个起始位,9个数据位和1个停止位。

在方式2下,字符还是8个数据位。而第9数据位即可作奇偶校验位使用,也可作控制使用,其功能由用户确定,发送之前应先在SCON中的TB8准备好,再向SBUF写入字符的8个数据位,并以此来启动串行发送。一个字符帧发送完毕后,将TI位置1,其过程与方式1相同。方式2的接收过程也与方式1基本类似,所不同的在于第9数据位上,串行口把接收到的8位数据送入SBUF,而把第9数据位送入RB8。

方式2的波特率是固定的,波特率=2smod╳fosc/64

与PCON寄存器中SMOD位的值有关。

4.串行工作方式3

方式3同样是11位为一帧的串行通信方式(1个起始位,9个数据位和1个停止位)其通信过程与方式2完全相同,所不同的仅在于波特率。而方式3的波特率则可由用户根据需要设定。其设定方式与方式1一样,即通过设置定时器1的初值来设定波特率。

5.串行口四种工作方式的比较

四种工作方式的区别主要表现在帧格式及波特率两个方面。见表1。



表1 四种工作方式--帧格式及波特率

在串行通信中,收发双方对发送或接收的速率要有约定。通过软件可对单片机串行接口编程。

在单片机的应用中,常用的晶振频率为:12MHz和11.0592MHz。所以,选用的波特率也相对固定。常用的串行接口波特率以及各参数的关系如表2所示。



表2 常用波特率与定时器1的关系位置

在使用串行口前,应对其进行初始化,主要是设置产生波特率的定时器1、串行接口控制和中断控制。具体步骤如下:

①确定T1的工作方式(编程TMOD寄存器);

②计算T1的初值,装载TH1、TL1;

③启动T1(编程TCON中的TR1位);

④确定串行接口控制(编程SCON寄存器);

⑤串行接口在中断方式工作时,要进行中断设置(编程IE、IP寄存器)。



表3 常用波特率与定时器1的关系位置

在使用串行口前,应对其进行初始化,主要是设置产生波特率的定时器1、串行接口控制和中断控制。具体步骤如下:

①确定T1的工作方式(编程TMOD寄存器);

②计算T1的初值,装载TH1、TL1;

③启动T1(编程TCON中的TR1位);

④确定串行接口控制(编程SCON寄存器);

⑤串行接口在中断方式工作时,要进行中断设置(编程IE、IP寄存器)。

水电之家为您提供最全面的管材,管件,水电,电线,电工,管材水电品牌的装修知识点和各种管材水电的导购与在线购买服务,拥有最便宜的管材水电价格和最优质的售后服务,每天都有秒杀的抢购活动哦!敬请登陆水电之家:http://shuidian.jc68.com/
小程序码
 
打赏
 
更多>文章标签:电工
更多>同类水电电工资讯
0相关评论

推荐图文更多...
点击排行更多...
水电商机信息更多...
水电电工圈更多...
最新视频更多...
推荐产品更多...
天花之家 | 木门之家 | 灯具之家 | 铁艺之家 | 幕墙之家 | 五金头条 | 楼梯头条 | 墙纸头条 | 壁纸头条 | 玻璃头条 | 老姚之家 | 灯饰之家 | 电气之家 | 全景头条 | 照明之家 | 防水之家 | 防盗之家 | 区快洞察 | 潜江建材 | 仙桃建材 | 恩施建材 | 随州建材 | 咸宁建材 | 黄冈建材 | 荆州建材 | 孝感建材 | 荆门建材 | 鄂州建材 | 襄樊建材 | 宜昌建材 | 十堰建材 | 黄石建材 | 长沙建材 | 湘西建材 | 娄底建材 | 怀化建材 | 永州建材 | 郴州建材 |
建材 | 720全景 | 企业之家 | 移动社区 | 关于我们  |  联系方式  |  使用协议  |  版权隐私  |  网站地图 | 排名推广 | 广告服务 | 积分换礼 | RSS订阅 | sitemap | 粤ICP备14017808号-1
(c)2015-2017 BYBC.CN SYSTEM All Rights Reserved
Powered by 电工之家