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

出处:电子发烧友 发布于:2019-04-26 13:43:03

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


  

  串行口的控制寄存器共有两个:特殊功能寄存器SCON和PCON。下面介绍这两个特殊功能寄存器各位的功能。
  1、串行口控制寄存器SCON
  串行口控制寄存器SCON,字节地址988H,可位寻址,位地址为98H~9FH。SCON的格式如下图所示。
  

  下面介绍SCON中各位的功能。
  (1) SM0、SMl:串行口4种工作方式选择位。
  SM0、SM1两位的编码所对应的4种工作方式见下表。
  表 串行口的4种工作方式
  

  (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的格式如下图所示。
 

  下面介绍PCON中各个位的功能。其中,仅仅是位SMOD与串行口有关。
  SMOD位:波特率选择位。
  例如,方式1的波特率计算公式为
  

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

关键词:51单片机单片机

版权与免责声明

凡本网注明“出处:维库电子市场网”的所有作品,版权均属于维库电子市场网,转载请必须注明维库电子市场网,https://www.dzsc.com,违反者本网将追究相关法律责任。

本网转载并注明自其它出处的作品,目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品出处,并自负版权等法律责任。

如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。

相关技术资料
广告
上传BOM文件: BOM文件
*公司名:
*联系人:
*手机号码:
QQ:
应用领域:

有效期:
OEM清单文件: OEM清单文件
*公司名:
*联系人:
*手机号码:
QQ:
有效期:

扫码下载APP,
一键连接广大的电子世界。

在线人工客服

买家服务:
卖家服务:

0571-85317607

客服在线时间周一至周五
9:00-17:30

关注官方微信号,
第一时间获取资讯。

建议反馈

联系人:

联系方式:

按住滑块,拖拽到最右边
>>
感谢您向阿库提出的宝贵意见,您的参与是维库提升服务的动力!意见一经采纳,将有感恩红包奉上哦!