STC单片机串行通信波特率设置解析
需积分: 50 26 浏览量
更新于2024-08-10
收藏 5.62MB PDF 举报
"串行通信中波特率的设置在STC12C5620AD系列单片机中是一个关键的参数,它直接影响到数据传输的速度和效率。串行通信的波特率设置取决于所选用的工作模式。"
在STC12C5620AD系列单片机中,串行通信的波特率可以分为几种不同的情况:
1. **工作模式0**:在这种模式下,波特率与系统时钟频率SYSclk以及UART_M0x6/AUXR.5位有关。如果UART_M0x6/AUXR.5设置为0,波特率等于SYSclk/16;若设置为1,波特率同样为SYSclk/16。一旦SYSclk选定且UART_M0x6/AUXR.5设定好,模式0的波特率便固定不变。
2. **工作模式2**:在这个模式下,波特率不仅与SYSclk有关,还受到PCON中的SMOD位的影响。基本公式为:波特率 = 2 * SMOD / 64 * (SYSclk)。当SMOD为0时,波特率为SYSclk/64;当SMOD为1时,波特率为SYSclk/32。通过软件设置PCON的SMOD位,可以选择两种不同的波特率,因此模式2的波特率基本固定。
3. **工作模式1和3**:这两种模式的波特率是可变的,因为它们不仅依赖于SYSclk,还与定时器/计数器1(T1)的溢出率相关。基本表达式为:波特率 = 2 * SMOD / 32 * (定时器溢出率)。溢出率由TH1的值决定,具体计算为:当T1的预置值为0时,溢出率为SYSclk / (256 - TH1);当预置值不为0时,溢出率为SYSclk / (256 - TH1)。通过调整TH1的值,可以灵活地改变波特率。在实际应用中,模式1和模式3由于其灵活性常被选择。
为了设置SMOD位,可以使用如下的汇编指令:
- 使SMOD=0:`MOV PCON,#00H`
- 使SMOD=1:`MOV PCON,#80H`
需要注意的是,SMOD仅占据电源控制寄存器PCON的最高位,其他位的设置应根据具体应用需求来确定。
STC12C5620AD系列单片机是南通国芯微电子有限公司的产品,具备高速、低功耗、强抗静电和抗干扰等特点,并支持在线编程(ISP)。其内部结构、管脚图、选型表和应用电路图等信息可以在相关手册中找到,便于用户进行开发和设计。
2020-07-27 上传
2019-10-29 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
2021-10-03 上传
菊果子
- 粉丝: 51
- 资源: 3771
最新资源
- Java集合ArrayList实现字符串管理及效果展示
- 实现2D3D相机拾取射线的关键技术
- LiveLy-公寓管理门户:创新体验与技术实现
- 易语言打造的快捷禁止程序运行小工具
- Microgateway核心:实现配置和插件的主端口转发
- 掌握Java基本操作:增删查改入门代码详解
- Apache Tomcat 7.0.109 Windows版下载指南
- Qt实现文件系统浏览器界面设计与功能开发
- ReactJS新手实验:搭建与运行教程
- 探索生成艺术:几个月创意Processing实验
- Django框架下Cisco IOx平台实战开发案例源码解析
- 在Linux环境下配置Java版VTK开发环境
- 29街网上城市公司网站系统v1.0:企业建站全面解决方案
- WordPress CMB2插件的Suggest字段类型使用教程
- TCP协议实现的Java桌面聊天客户端应用
- ANR-WatchDog: 检测Android应用无响应并报告异常