C51单片机串行通信:移位寄存器与波特率解析
需积分: 10 172 浏览量
更新于2024-07-13
收藏 3.63MB PPT 举报
"这篇资源主要介绍了C51单片机中的串行通信方式,特别是关于移位寄存器的工作模式,以及与串行接口相关的硬件结构和寄存器功能。"
在C51单片机中,串行通信是通过单片机的串行接口实现的,通常涉及到RXD(接收数据)和TXD(发送数据)两条线路。在描述中提到的“方式0——移位寄存器”是一种同步通信方式,主要用于扩展I/O接口。在这个模式下,串行数据通过RXD线输入和输出,同步时钟则由TXD线提供。数据传输遵循低位在前,高位在后的规则,且长度固定为8位。值得注意的是,这种方式的波特率是固定的,等于系统时钟频率fosc除以12。
C51串行口提供了四种不同的工作方式:方式0、方式1、方式2和方式3。方式0是同步移位寄存器方式,其波特率直接由系统时钟决定;而方式1、2和3则是异步通信方式,其中方式1和3的波特率由定时器T1来设定,而方式2的波特率直接来源于系统时钟。这四种方式分别适用于不同的应用场景,如简单的扩展I/O或需要不同波特率的通信场合。
在硬件层面,MCS-51串行口包含了一些特殊功能寄存器,如SBUF(串行数据缓冲区)、SCON(串行控制寄存器)和PCON(电源控制寄存器)。SBUF是用于收发数据的寄存器,具有两个物理寄存器,但共用同一个地址。发送数据时,CPU将数据写入SBUF,然后由发送时钟控制依次发送数据位,包括起始位、数据位和停止位。接收数据时,SBUF会读取移位寄存器中的接收到的数据,并根据接收到的起始位和数据位触发中断标志RI。
SCON寄存器是控制串行通信的核心,其中的SM0和SM1位用来选择工作方式,SM2位用于多机通信控制,REN位控制是否允许接收,TB8和RB8位分别代表发送和接收的第9位数据,而TI和RI是发送和接收的中断标志。TI在发送完数据后会被硬件自动置位,当CPU响应中断后,需要通过软件清零TI,否则会影响后续的数据发送。
C51单片机的串行通信涉及到一系列复杂的硬件和软件机制,包括移位寄存器操作、波特率设定、中断处理和多种工作模式的选择,这些都是理解和应用C51单片机进行串行通信时需要掌握的关键知识点。
2023-05-23 上传
2009-12-28 上传
2022-06-19 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
我欲横行向天笑
- 粉丝: 32
- 资源: 2万+
最新资源
- AlanMvvm快速开发框架,基于MVVM模式组件化开发集成谷歌官方推荐的JetPack组件库:LiveData、V.zip
- 孢粉测定法:可靠地估计授粉昆虫的体型和同变性状
- 湖光秋月两相和—2020年5G 云VR研究报告.rar
- js-callgraph:为JavaScript和Typescript构造近似的静态调用图
- lock:锁库提供PHP代码的序列化执行
- homebridgeStatusWidget
- 读文件的几个字节加密再写回去.zip
- Excel模板大学普通高等学校专接本招生计划及参考教材.zip
- 煤炭开采Ⅱ行业-榆林煤矿复产进度较慢,产地供给偏紧支撑港口煤价.rar
- doing-cli:简化了针对天蓝色devops的开发工作流程
- 侧边栏:NavigationView 网络请求用的Retrofit 图片加载用的Fresco 数据库使用xutils.zip
- MoviesandSeries
- C-22-Fairy-and-Star-2
- apostrophe-address-widgets:ApostropheCMS地址小部件
- Excel模板大学校部机关处室学生勤工助学酬金公示.zip
- ListChecker