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

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

3天内不再提示

单片机串行口介绍,8051单片机的通信方式

MCU开发加油站 来源:未知 作者:李倩 2018-04-12 14:22 次阅读

串行口是单片机与外界进行信息交换的工具,8051单片机通信方式有两种:

并行通信:数据的各位同时发送或接收。

串行通信:数据一位一位次序发送或接收。

串行通信的方式

异步通信

用一个起始位0表示字符的开始,用停止位1表示字符的结束,中间夹着8个数据位,字符能一个接一个传送

CPU与外设之间必须有字符格式和波特率两项规定

字符格式规定能使双方把0和1串理解成同一种意义,原则上自由制定,通用角度使用标准如ASCII

波特率即数据传输速率,每秒传送的二进制位数,如120字符/s,每个字符10数位,则传送波特率为1200波特

同步通信

去掉了开始结束标志提高速度,但由于数据块传递开始要用同步字符来指示,同时要求由时钟来实现发送端与接收端之间的同步,故硬件较复杂。

通信方向

在串行通信中,把通信接口只能发送或接收的单向传送办法叫单工传送;把数据能双向传递称为双工传送。半双工传送两机之间不能同时进行发送和接收,任一时该,只能发或者只能收信息。全双工传送是能同时发送接收。

串行接口结构

51单片机一个可编程的全双工串行通信接口。可用作异步通信方式(UART),与串行传送信息的外部设备相连接。或用于通过同步或异步标准通信协议进行全双工的8051多机系统,使用TTL或CMOS移位寄存器来扩充I/O口。

8051单片机通过管脚RXD(P3.0,串行数据接收端)和管脚TXD(P3.1,串行数据发送端)与外界通信。SBUF是串行口缓冲寄存器,包括发送寄存器和接收寄存器。它们有相同名字和地址空间,但不会出现冲突,因为它们两个一个只能被CPU读出数据,一个只能被CPU写入数据。

串行口的控制与状态寄存器

串行口控制寄存器 SCON

用于定义串行口的工作方式及实施接收和发送控制,字节地址为98H

SM0、SM1:串行口工作方式选择位

串行口的工作方式

方式0

○为移位寄存器输入/输出方式。可外接移位寄存器以扩展I/O口,也能外接同步输入/输出设备。8位串行数据者是从RXD输入或输出,TXD用来输出同步脉冲。○输出:发送完毕后终端标志T1硬件置位。(同其他)○输入:当 RI =0和REN =1同时满足开始接收,接收到第八位后数据移至寄存器,硬件置位RI。

方式1

○为波特率可变的10位异步通信方式。○输出:当执行一条指令将数据写入发送缓冲SBUF时,就启动发送,发送完一帧硬件置位T1○输入:检测1-0跳变,使用前用软件清零RI和SM2

方式2

○为固定波特率的11位UART方式。它比方式1增加了一位可程控为1或0的第9位数据。○输出:11位,附加第九位是SCON的TB8位,可作为多机通信中地址/数据信息标志位、奇偶校正位。别的同其他○输入:123同

方式3

为波特率可变的11位UART方式。除波特率外,其余与方式2相同。

波特率选择

方式0:方式0的波特率固定为主振频率的1/12。

方式2:

波特率由 PCON 中的SMOD位决定

波特率=2SOMD/64*fosc,SMOD=0或1

方式1和3:

波特率=定时器T1溢出率

T1溢出率= T1计数率/产生溢出所需的周期数

T1计数率取决于它工作在定时器状态还是计数器状态。

○当工作于定时器状态时,T1计数率为fosc/12;○当工作于计数器状态时,T1计数率为外部输入频率,此频率应小于fosc/24。

产生溢出所需周期与定时器T1的工作方式、T1的预置值有关。

○定时器T1工作于方式0:溢出所需周期数=8192-x○定时器T1工作于方式1:溢出所需周期数=65536-x○定时器T1工作于方式2:溢出所需周期数=256-x

因为方式2为自动重装入初值的8位定时器/计数器模式,所以用它来做波特率发生器最恰当。

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

    关注

    5999

    文章

    43964

    浏览量

    620711
  • 串行口
    +关注

    关注

    1

    文章

    42

    浏览量

    10737

原文标题:单片机串行口介绍

文章出处:【微信号:mcugeek,微信公众号:MCU开发加油站】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    51单片机串行口扩展方法

    本帖最后由 luna 于 2011-3-3 11:28 编辑 在以单片机为核心的多级分布式系统中,常常需要扩展单片机串行通信口,本文分别介绍
    发表于 03-02 12:13

    单片机串行口通信程序设计

    1.串行口方式0应用编程 8051单片机串行口方式0为移位寄存器
    发表于 01-21 14:21

    单片机串行口通信程序设计例子

    单片机串行口通信程序设计例子
    发表于 06-05 21:37

    单片机教程(21)串行口介绍

    介绍串行口单片机与外界进行信息交换的工具。8051单片机通信
    发表于 06-21 09:19

    单片机教程(22)串行口通信程序设计

    1.串行口方式0应用编程 8051单片机串行口方式0为移位寄存器
    发表于 06-21 09:31

    51单片机串行口是什么

    实验原理51 单片机串行口是一个可编程的全双工的通信接口,具有 UART(通用异步收发器)的全部功能,能同时进行数据的发送和接收,也可以作为同步移位寄存器使用。51 单片机
    发表于 07-16 07:06

    单片机--串行口实验 精选资料下载

    实验目的和任务目的:利用“模块化单片机教学实验平台”,加深对单片机串行口的理解。任务:利用单片机串行口完成程序设计。实验内容使用AT89
    发表于 07-19 06:52

    单片机串行口及应用通信方式

    单片机串行口及应用通信方式:​1.并行通信:数据的各位同时进行传送。速度快、效率高、成本高​2.串行
    发表于 07-20 06:44

    89C51单片机异步串行口通信原理和编程

    单片机双机通信一、实验目的二、实验内容三、实验步骤四、C代码如下五、实验结果六、实验体会一、实验目的掌握89C51单片机异步串行口通信原理
    发表于 11-09 07:32

    单片机串行口的相关资料下载

    、关于同步通信和异步通信六、关于同步通信和异步通信的比七、几种常见电平信号的区别八、单片机串行口
    发表于 11-26 06:28

    单片机串行口的相关资料分享

    串行口单片机与外界进行信息交换的工具。■ 8051单片机通信方式有两种:并行
    发表于 12-08 07:20

    如何使用单片机串行口通信

    一、目标单片机P1端口外接8位拨码开关;乙P0外接8只LED。要求使用单片机串行口通信,在
    发表于 01-20 07:55

    单片机教程二十:单片机串行口介绍

    单片机教程二十:单片机串行口介绍 介绍串行口单片机
    发表于 05-15 23:16 1524次阅读
    <b class='flag-5'>单片机</b>教程二十:<b class='flag-5'>单片机</b><b class='flag-5'>串行口</b><b class='flag-5'>介绍</b>

    单片机教程二十一:单片机串行口通信程序设计

    单片机教程二十一:单片机串行口通信程序设计 1.串行口方式0应用编程
    发表于 05-15 23:17 957次阅读

    单片机串行口的并行通信技术

    单片机串行口是最常用的端口, 对于存在两个或多个串行口单片机来说, 充分利用串行口进行通信
    发表于 12-09 15:19 103次下载
    <b class='flag-5'>单片机</b><b class='flag-5'>串行口</b>的并行<b class='flag-5'>通信</b>技术