您的位置 首页 观点

AT89S51单片机串行口的内部结构及作业原理介绍

AT89S51单片机串行口的内部结构及工作原理介绍-因为多机通信是在方式2和方式3下进行的,因此SM2位主要用于方式2或方式3中。当串行口以方式2或方式3接收时,如果SM2=1,则只有当接收到的第9位数据(RB8)为1时,才使RI置l,产生中断请求,并将接收到的前8位数据送人SBUF;当接收到的第9位数据(RB8)为0时,则将接收到的前8位数据丢弃。

AT89S51单片机串行口的内部结构如下图所示。它有两个物理上独立的接纳、发送缓冲器SBUF(归于特别功用寄存器),可一起发送、接纳数据。发送缓冲器只能写入不能读出,接纳缓冲器只能读出不能写入,两个缓冲器共用一个特别功用寄存器字节地址(99H)。

AT89S51单片机串行口的内部结构及作业原理介绍

串行口的操控寄存器共有两个:特别功用寄存器SCON和PCON。下面介绍这两个特别功用寄存器各位的功用。

1、串行口操控寄存器SCON

串行口操控寄存器SCON,字节地址988H,可位寻址,位地址为98H~9FH。SCON的格局如下图所示。

AT89S51单片机串行口的内部结构及作业原理介绍

下面介绍SCON中各位的功用。

(1) SM0、SMl:串行口4种作业方法挑选位。

SM0、SM1两位的编码所对应的4种作业方法见下表。

表 串行口的4种作业方法

AT89S51单片机串行口的内部结构及作业原理介绍

(2) SM2:多机通讯操控位。

由于多机通讯是在方法2和方法3下进行的,因而SM2位首要用于方法2或方法3中。当串行口以方法2或方法3接纳时,假如SM2=1,则只要当接纳到的第9位数据(RB8)为1时,才使RI置l,发生中止请求,并将接纳到的前8位数据送人SBUF;当接纳到的第9位数据(RB8)为0时,则将接纳到的前8位数据丢掉。而当SM2=0时,则不管第9位数据是l仍是0,都将前8位数据送入SBUF中,并使RI置1,发生中止请求。

在方法1时,假如SM2=1,则只要收到有用的中止位时才会激活RI。

在方法0时,SM2有必要为0。

(3)REN:答应串行接纳位。

由软件置1或清0。

REN=1,答应串行口接纳数据。

REN=O,制止串行口接纳数据。

(4)TB8:发送的第9位数据。

在方法2和方法3时,TB8是要发送的第9位数据,其值由软件置l或清O。在双机串行通讯时,TB8一般作为奇偶校验位运用;在多机串行通讯中用来表明主机发送的是地址帧仍是数据帧,TB8=1为地址帧,TB8=0为数据帧。

(5) RB8:接纳的第9位数据。

作业在方法2和方法3时,RB8寄存接纳到的第9位数据。在方法1,假如SM2=0,RB8是接纳到的中止位。在方法0,不运用RB8。

(6)TI:发送中止标志位。

串行口作业在方法0时,串行发送的第8位数据结束时TI由硬件置1,在其他作业方法中,串行口发送中止位的开始时置TI为1。TI=1,表明一帧数据发送结束。TI位的状况可供软件查询,也可请求中止。CPU呼应中止后,在中止服务程序中向SBUF写入要发送的下一帧数据。TI有必要由软件清0。

(7) RI:接纳中止标志位。

串行口作业在方法0时,接纳完第8位数据时,RI由硬件置1。在其他作业方法中,串行接纳到中止位时,该方位l。RI=1,表明一帧数据接纳结束,并请求中止,要求CPU从接纳SBUF取走数据。该位的状况也可供软件查询。RI有必要由软件清0。

SCON的一切位都可进行位操作清0或置1。

2、特别功用寄存器PCON

特别功用寄存器PCON字节地址为87H,不能位寻址。PCON的格局如下图所示。

AT89S51单片机串行口的内部结构及作业原理介绍

下面介绍PCON中各个位的功用。其间,仅仅是最高位SMOD与串行口有关。

SMOD位:波特率挑选位。

例如,方法1的波特率计算公式为

AT89S51单片机串行口的内部结构及作业原理介绍

当SMOD=1时,要比SMOD=O时的波特率加倍,所以也称SMOD位为波特率倍增位。

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

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

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

微信扫一扫关注我们

返回顶部