您的位置 首页 新品

串行口通讯原理及操作流程

51单片机的串行口是一个可编程全双工的通信接口,具有UART(通用异步收发器)的全部功能,能同时进行数据的发送和接收,也可以作为同步移位

51单片机的串行口是一个可编程全双工的通讯接口,具有UART(通用异步收发器)的悉数功用,能一起进行数据的发送和接纳,也能够作为同步移位寄存器运用。

51单片机的串行口主要由两个独立的串行数据缓冲寄存器SBUF(发送缓冲寄存器和接纳缓冲寄存器)和发送操控器、接纳操控器、输入移位寄存器及若干操控门电路组成。

51 单片机能够经过特别功用寄存器SBUF队串行接纳或串行发送寄存器进行拜访,两个寄存器共用一个地址99H,但在物理上是两个独立的寄存器,由指令操作决议拜访哪一个寄存器。履行写指令时拜访串行发送寄存器;履行读指令时,拜访串行接纳寄存器。(接纳器具有双缓冲结构,即在接纳寄存器中读出前一个已接纳到的字节之前,便能接纳第二个字节,假如第二个字节已接纳结束,而第一个字节还没有读出,则将丢掉其间一个字节,编程时应引起留意。关于发送器,由于是由 cpu操控的,所以不需要考虑。

与串行口严密相关的一个特别功用寄存器是串行口操控寄存器SCON,它用来设定串行口的工作方法、接纳/发送操控以及状况标志等。

串行口操控寄存器SCON

串行口操控寄存器SCON在特别功用寄存器中,字节地址为98H,可位寻址,单片机复位时SCON悉数被清零。

位序号

D7

D6

D5

D4

D3

D2

D1

D0

位符号

SM0

SM1

SM2

REN

TB8

RB8

T1

R1

SM0,SM1为工作方法挑选位。串行口有四种工作方法,它们由SM0、SM1设定。其间方法一最为常用。

SM2为多机通讯操控位。

REN为答应串行接纳位。

TB8为方法2、3中方法数据的第九位。

RB8为方法2、2中接纳数据的第九位。

TI为发送中止标志位,在方法0时,当串行发送第8位数据结束时,或在其他方法,串行发送中止位的开端时,由内部硬件使TI置一,向CPU宣布中止恳求。在中止服务程序中,有必要运用软件将其清零,撤销此中止恳求。

RI为接纳中止标志位。在方法0时,当串行接纳第8位数据结束时,或在其他方法,串行接纳中止位的中心时,由内部硬件使RI置一,向CPU宣布中止恳求。在中止服务程序中,有必要运用软件将其清零,撤销此中止恳求。

串口工作方法1简介(0、2、3今后再说),串行口方法传送1帧数据共10位,其间一位开端位(0),八位数据位(最低位在前,高位在后),一位中止位(1)。帧与帧之间能够有闲暇,也能够无闲暇。TXD(P3.1)位数据发送引脚,RXD(P3.0)为数据接纳引脚。其传输波特率是可变的,关于51单片机,波特率由定时器1的溢出率决议。

串行口方法1编程与完成

当数据被写入SBUF寄存器后,单片机主动开端从开端位发送数据,发送到中止位的开端时,由内部硬件使TI置1,向CPU恳求中止,接下来可在中止服务程序中做相应的处理,也可挑选不进入中止。

用软件置REN为1时,接纳器以所挑选波特率的16倍速率采样RXD引脚电平,检测到RXD引脚输入电平产生负跳变时,则阐明开端位有用,将其移入输入移位寄存器,并开端接纳这一帧信息的其他位。接纳过程中,数据从移位寄存器右边移入,开端位移至输入移位寄存器最左面时,操控电路进行最终一次移位。当 RI=0,且SM2=0(或接纳到的中止位为1时),将接纳到的9位数据的前8位数据装入接纳SBUF,第9位(中止位)进入RB8,并置RI=1,向 CPU恳求中止。

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

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

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

微信扫一扫关注我们

返回顶部