0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

了解单片机串口相关的寄存器

2oON_changxuemc 来源:lq 2019-04-25 16:47 次阅读

51单片机内部有一个全双工串行接口。什么叫全双工串口呢?一般来说,只能接受或只能发送的称为单工串行;既可接收又可发送,但不能同时进行的称为半双工;能同时接收和发送的串行口称为全双工串行口。串行通信是指数据一位一位地按顺序传送的通信方式,其突出优点是只需一根传输线,可大大降低硬件成本,适合远距离通信。其缺点是传输速度较低。

与之前一样,首先我们来了解单片机串口相关的寄存器

SBUF 寄存器:它是两个在物理上独立的接收、发送缓冲器,可同时发送、接收数据,可通过指令对SBUF 的读写来区别是对接收缓冲器的操作还是对发送缓冲器的操作。从而控制外部两条独立的收发信号线RXD(P3.0)、TXD(P3.1),同时发送、接收数据,实现全双工。

串行口控制寄存器SCON(见表1) 。

表1 SCON寄存器

51单片机串行通信的原理解析

表中各位(从左至右为从高位到低位)含义如下。

SM0 和SM1 :串行口工作方式控制位,其定义如表2 所示。

表2 串行口工作方式控制位

其中,fOSC 为单片机的时钟频率;波特率指串行口每秒钟发送(或接收)的位数。

SM2 :多机通信控制位。 该仅用于方式2 和方式3 的多机通信。其中发送机SM2 = 1(需要程序控制设置)。接收机的串行口工作于方式2 或3,SM2=1 时,只有当接收到第9 位数据(RB8)为1 时,才把接收到的前8 位数据送入SBUF,且置位RI 发出中断申请引发串行接收中断,否则会将接受到的数据放弃。当SM2=0 时,就不管第位数据是0 还是1,都将数据送入SBUF,并置位RI 发出中断申请。工作于方式0 时,SM2 必须为0。

REN :串行接收允许位:REN =0 时,禁止接收;REN =1 时,允许接收。

TB8 :在方式2、3 中,TB8 是发送机要发送的第9 位数据。在多机通信中它代表传输的地址或数据,TB8=0 为数据,TB8=1 时为地址。

RB8 :在方式2、3 中,RB8 是接收机接收到的第9 位数据,该数据正好来自发送机的TB8,从而识别接收到的数据特征。

TI :串行口发送中断请求标志。当CPU 发送完一串行数据后,此时SBUF 寄存器为空,硬件使TI 置1,请求中断。CPU 响应中断后,由软件对TI 清零。

RI :串行口接收中断请求标志。当串行口接收完一帧串行数据时,此时SBUF 寄存器为满,硬件使RI 置1,请求中断。CPU 响应中断后,用软件对RI 清零。

电源控制寄存器PCON(见表3) 。

表3 PCON寄存器

表中各位(从左至右为从高位到低位)含义如下。

SMOD :波特率加倍位。SMOD=1,当串行口工作于方式1、2、3 时,波特率加倍。SMOD=0,波特率不变。

GF1、GF0 :通用标志位。

PD(PCON.1) :掉电方式位。当PD=1 时,进入掉电方式。

IDL(PCON.0) :待机方式位。当IDL=1 时,进入待机方式。

另外与串行口相关的寄存器有前面文章叙述的定时器相关寄存器和中断寄存器。定时器寄存器用来设定波特率。中断允许寄存器IE 中的ES 位也用来作为串行I/O 中断允许位。当ES = 1,允许 串行I/O 中断;当ES = 0,禁止串行I/O 中断。中断优先级寄存器IP的PS 位则用作串行I/O 中断优先级控制位。当PS=1,设定为高优先级;当PS =0,设定为低优先级。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 寄存器
    +关注

    关注

    30

    文章

    5028

    浏览量

    117719
  • 51单片机
    +关注

    关注

    269

    文章

    5649

    浏览量

    120699
  • 串行口
    +关注

    关注

    1

    文章

    42

    浏览量

    10742

原文标题:51单片机串行通信的原理解析

文章出处:【微信号:changxuemcu,微信公众号:畅学单片机】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    51单片机串口通信实例

    串口相关寄存器。  SBUF 寄存器:它是两个在物理上独立的接收、发送缓冲,可同时发送、接收数据,可通过指令对SBUF 的读写来区别是对
    发表于 11-01 17:09

    单片机串口通信需要用哪些寄存器

    串口进行通讯时告诉单片机一些注意事项,如什么时候开始传送、什么时候开始接收等。PCON告诉单片机怎么通过计算知道定时器具体走了多久来发让单片机发送脉冲。下面来具体说下如何设置各个
    发表于 11-03 12:08

    51单片机与中断相关寄存器简介

    51单片机与中断相关寄存器简介中断控制寄存器IE中断优先级控制寄存器IP定时控制
    发表于 11-18 06:37

    了解单片机中的特殊功能寄存器

    嵌入式开发学习笔记6-了解单片机中的特殊功能寄存器(定时/计数)定时/计数
    发表于 12-07 11:16

    ATMEGA8串口寄存器介绍

    单片机avr ATMEGA8各个串口寄存器的系统介绍
    发表于 12-14 14:20 1次下载

    51单片机寄存器功能一览表

    本文主要详细介绍51单片机寄存器功能,首先介绍了51单片机引脚图及功能,其次阐述了51单片机寄存器功能,具体的跟随小编来
    发表于 05-22 16:12 4.9w次阅读
    51<b class='flag-5'>单片机</b><b class='flag-5'>寄存器</b>功能一览表

    使用单片机进行串口通信实例的详细资料免费下载

    是指数据一位一位地按顺序传送的通信方式,其突出优点是只需一根传输线,可大大降低硬件成本,适合远距离通信。其缺点是传输速度较低。与之前一样,首先我们来了解单片机串口相关
    发表于 08-08 17:33 1次下载
    使用<b class='flag-5'>单片机</b>进行<b class='flag-5'>串口</b>通信实例的详细资料免费下载

    使用51单片机实现uart通信的详细资料说明

    是指数据一位一位地按顺序传送的通信方式,其突出优点是只需一根传输线,可大大降低硬件成本,适合远距离通信。其缺点是传输速度较低。与之前一样,首先我们来了解单片机串口相关
    发表于 06-28 17:42 0次下载
    使用51<b class='flag-5'>单片机</b>实现uart通信的详细资料说明

    51单片机中断相关寄存器的详细说明

    本文档的主要内容详细介绍的使用51单片机中断相关寄存器的详细说明。
    发表于 06-26 17:43 0次下载
    51<b class='flag-5'>单片机</b>中断<b class='flag-5'>相关</b><b class='flag-5'>寄存器</b>的详细说明

    51单片机与中断相关寄存器

    51单片机与中断相关寄存器简介中断控制寄存器IE中断优先级控制寄存器IP定时器控制寄存器TCO
    发表于 11-12 11:36 8次下载
    51<b class='flag-5'>单片机</b>与中断<b class='flag-5'>相关</b>的<b class='flag-5'>寄存器</b>

    STC15W408AS单片机寄存器串口收发示例

    STC15W408AS单片机寄存器串口收发示例
    发表于 11-18 14:06 26次下载
    STC15W408AS<b class='flag-5'>单片机</b><b class='flag-5'>寄存器</b>板<b class='flag-5'>串口</b>收发示例

    32单片机 C语言 寄存器(四)

    32单片机C语言相关知识以及寄存器地址名称映射分析
    发表于 11-29 10:06 12次下载
    32<b class='flag-5'>单片机</b> C语言 <b class='flag-5'>寄存器</b>(四)

    STM32串口通信相关寄存器和中断回调函数

    STM32串口通信相关寄存器状态寄存器 (USART_SR)数据寄存器 (USART_DR)波特率寄存器
    发表于 12-28 19:11 6次下载
    STM32<b class='flag-5'>串口</b>通信<b class='flag-5'>相关</b><b class='flag-5'>寄存器</b>和中断回调函数

    单片机寄存器和存储器哪个好

    单片机寄存器和存储器哪个好 单片机的运用在生活中是很常见的,随着科技的发展,单片机更新速度和发展速度也非常快。对于单片机来说,
    发表于 03-21 15:18 404次阅读

    单片机寄存器有哪些 单片机寄存器怎么理解 寄存器单片机的关系

    单片机寄存器是一种特殊的存储器件,用于存储和处理程序中的数据和指令。可以将单片机寄存器看作是CPU内部的工作区域,类似于人的大脑,用于暂时存储和处理当前的任务和信息。
    发表于 04-01 15:47 4682次阅读