当前位置: 首页 > article >正文

51单片机-80C51的串行口

目录

1、80C51的串行口

1.1、80C51串行口的控制寄存器

1.2、80C51串行口的工作方式

1.3、波特率的计算

1.4、串口如何使用

2、单片机与单片机的通信


1、80C51的串行口

有两个物理上独立的接收、发送缓冲器SBUF,它们占用同一个地址99H;接收器是双缓冲结构;发送缓冲器,因为发送时CPU是主动的,不会产生重叠错误。

1.1、80C51串行口的控制寄存器

(1)SCON是一个特殊功能寄存器,用以设定串行口的工作方式、接收/发送控制以及设置状态标志:

  •  SM2,多机通信控制位,主要用于方式2和方式3。当接收机的SM2=1可以利用收到的RB8来控制是否激活RI(RB8=0时不激活RI,收到的信息丢弃;RB8=1时收到的数据进入SBUF,并激活RI,进而在中断服务中将数据从SBUF读走)。当SM2=0时,不论收到的RB8为0和1,,均可以使收到的数据进入SBUF,并激活RI(即此时RB8不具有控制RI激活的功能)。通过控制SM2,可以实现多机通信。

在方式0时,SM2必须是0。在方式1时,如果SM2=1,则只有接收到有效停止位时,RI才置1。

SCON寄存器中的RB8位是由硬件自动控制的‌。在多机通信中,RB8位用于存放接收到的第9位数据,代表接收到的某种特征,因此应根据其状态对接收数据进行操作‌12。

SCON寄存器(Serial Control Register)用于控制串行通信的方式选择、接收和发送,并指示串口的状态。它包括多个位,其中RB8位在多机通信中起到重要作用。当串口接收到数据时,RB8位会自动存放接收到的第9位数据,这个过程是由硬件自动完成的‌

  •  REN,允许串行接收位。由软件置REN=1,则启动串行口接收数据;若软件置REN=0,则禁止接收。
  • TB8,在方式2或方式3中,是发送数据的第九位,可以用软件规定其作用。可以用作数据的奇偶校验位,或在多机通信中࿰

http://www.kler.cn/a/559115.html

相关文章:

  • ArcGIS Pro进行坡度与坡向分析
  • 数据库-分库分表的概念
  • DeepSeek-R1本地部署保姆级教程
  • 第1章大型互联网公司的基础架构——1.10 其他NoSQL数据库
  • AI边缘计算盒子价格各异,如何精准选型成企业难题
  • 基于Matlab实现串口实时显示波形GUI界面(源码)
  • Deepin(Linux)设置开机自动启动 MySQL
  • 【深度学习】Transformer 的常见的位置编码有哪些
  • 【行业解决方案篇十二】【DeepSeek教育科技:个性化学习路径推荐】
  • Qt常用控件之进度条QProgressBar
  • 数据库二三事(6)
  • 【C语言】指针(6)
  • 《Keras 3 :使用 Vision Transformers 进行物体检测》:此文为AI自动翻译
  • Node.js中如何修改全局变量的几种方式
  • git,bash - 从一个远端git库只下载一个文件的方法
  • 架构对比分析
  • QT中经常出现的用法:组合
  • 【Linux系统】—— 冯诺依曼体系结构与操作系统初理解
  • vue3 elementUi Table 数据下拉懒加载
  • 37、深度学习-自学之路-自己搭建深度学习框架-2、自动梯度计算