您的位置 首页 分销

51单片机串行口–同步移位寄存器

MCS-51单片机的串行口具有两条独立的数据线——发送端TXD和接收端RXD,它允许数据同时往两个相反的方向传输。一般通信时发送数据由TXD端输

MCS-51单片机的串行口具有两条独立的数据线——发送端TXD和接纳端RXD,它答应数据一起往两个相反的方向传输。一般通讯时发送数据由TXD端输出,接纳数据由RXD端输入。

MCS-51单片机的串行口既能够用于网络通讯,亦可完结串行异步通讯,还能够用作同步移位寄存器。如果在串行口的输入输出引脚上加上电平转化器,就可方便地构成规范的RS-232接口。

MCS-51单片机的串行接口是一个全双工通讯接口,它有两个物理上独立的接纳、发送缓冲器SBUF,能够一起发送和接纳数据。可是发送缓冲器只能写入,不能读出;接纳缓冲器只能读出,不能写入。两个缓冲器共用一个地址(99H)。

数据通讯的基本概念

常用于数据通讯的传输方法有单工、半双工、全双工和多工方法。

  • 单工方法:数据仅按一个固定方向传送。因此这种传输方法的用途有限,常用于串行口的打印数据传输与简略体系间的数据收集。
  • 半双工方法:数据可完结双向传送,但不能一起进行,实践的运用选用某种协议完结收/发开关转化。
  • 全双工方法:答应两边一起进行数据双向传送,但一般全双工传输方法的线路和设备较杂乱。
  • 多工方法:以上三种传输方法都是用同一线路传输一种频率信号,为了充分地运用线路资源,可经过运用多路复用器或多路集线器,选用频分、时分或码分复用技能,即可完结在同一线路上资源共享功用。

依据同步方法,串行数据通讯有两种方法,如图5-5所示。

  • 异步通讯。在这种通讯方法中,接纳器和发送器有各自的时钟,它们的作业对错同步的。异步通讯用一帧来表明一个字符,其内容是一个开始位,紧接着是若干个数据位。
  • 同步通讯。同步通讯格局中,发送器和接纳器由同一个时钟源操控,在异步通讯中,每传输一帧字符都有必要加上开始位和中止位,占用了传输时刻,若要求传送数据 量较大,速度就会慢得多。同步传输方法去掉了这些开始位和中止位,只在传输数据块时先送出一个同步头(字符)标志即可。
  • 同步传输方法比异步传输方法速度快,这是它的优势。但同步传输方法也有其缺陷,即它有必要要用一个时钟来和谐收发器的作业,所以它的设备也较杂乱。

MCS-51的串行口操控寄存器

在完结串行口初始化后,发送数据时,选用MOV SBUF,A指令,即将发送的数据写入SBUF,则CPU主动发动和完结串行数据的输出;接纳数据时,选用MOV A,SBUF指令,CPU就主动将接纳到的数据从SBUF中读出。

操控MCS-51单片机串行接口的操控寄存器有两个——特别功用寄存器SCON和PCON,用以设置串行端口的作业方法、接纳/发送的运转状况、接纳/发送数据的特征、数据传输率的巨细,以及作为运转的中止标志等,其格局如下:

① 串行口操控寄存器SCON。SCON的字节地址是98H,位地址(由低位到高位)分别是98H一9FH。SCON的格局如下:

SM0、SMl:串行口作业方法操控位。

00——方法0;01——方法1;

10——方法2;11——方法3。

SM2:仅用于方法2和方法3的多机通讯操控位。

发送机SM2=1(要求程控设置)。

当为方法2或方法3时:

接纳机 SM2=1时,若RB8=1,可引起串行接纳中止;若RB8=0,不引起串行接纳中止。SM2=0时,若RB8=1,可引起串行接纳中止;若RB8=0,亦可引起串行接纳中止。

  • REN串行接纳答应位:0——制止接纳;1——答应接纳。
  • TB8:在方法2、3中,TB8是发送机要发送的第9位数据。
  • RB8:在方法2、3中,RB8是接纳机接纳到的第9位数据,该数据正好来自发送机的TB8。
  • TI:发送中止标志位。发送前有必要用软件清零,发送过程中TI坚持零电平,发送完一帧数据后,由硬件主动置1。如要再发送,有必要用软件再清零。
  • RI:接纳中止标志位。接纳前,有必要用软件清零,接纳过程中RI坚持零电平,接纳完一帧数据后,由片内硬件主动置1。如要再接纳,有必要用软件再清零。

② 电源操控寄存器PCON。PCON的字节地址为87H,无位地址,其格局如下:

PCON是为在CMOS结构的MCS-51单片机上完结电源操控而附加的,关于HMOS结构的MCS-51系列单片机,除了第7位外,其他都是虚设的。与串行通讯有关的也便是第7位,称作SMOD,它的用途是使数据传输率加倍。

SMOD:数据传输率加倍位。在核算串行方法1,2,3的数据传输率时;0表明不加倍;1表明加倍。

其他有用位阐明如下。

GF1、GF2:通用标志位。

PD:掉电操控位,0表明正常方法,1表明掉电方法。

IDL:闲暇操控位,0表明正常方法,1表明闲暇方法。

除了以上两个操控寄存器外,中止答应寄存器IE中的ES位也用来作为串行I/O中止答应位。当ES=1,答应 串行I/O中止;当ES=0,制止串行I/O中止。中止优先级寄存器IP的PS位则用作串行I/O中止优先级操控位。当PS=1,设定为高优先级;当PS =0,设定为低优先级。

作业方法

MCS-51 单片机能够经过软件设置串行口操控寄存器SCON中SM0(SCON.7)和SMl(SCON.6)来指定串行口的4种作业方法。串行口操作形式挑选如表5-2所示。

表5-2 串行口操作形式挑选表

SM0 SM1

模 式

功 能

波 特 率

0 0

0

同步移位寄存器

fOSC/12

0 1

1

8位UART

可变(T1溢出率)

1 0

0

9位UART

fOSC/64或fOSC/32

1 1

1

9位UART

可变(T1溢出率)

其间,fosc是振荡器的频率,UART为通用异步接纳和发送器的英文缩写。下面临这4种作业形式作进一步介绍。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/bandaoti/fenxiao/258049.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部