51单片机UART串口通信波特率产生过程

整体过程:晶振 → 机器周期 → 定时器1 → UART分频 → 波特率 → 发送bi

1. 晶振:

给单片机提供最原始的节拍,来自于物理现象,51单片机就是利用石英晶片这个物理效应产生时钟。

51单片机的晶振为11.0592MHz,代表每秒振荡 11,059,200 次。

2. 晶振 → 机器周期

51单片机中,12个晶振周期 = 1个机器周期,也就是12 × 83.3ns=1us,代表1个机器周期 = 1us。

3. 机器周期 → 定时器1

8位自动重装:

TH1 = 初值

TL1 = 初值

例:

TH1=0xFD

8位最大能表示255,0xFD转为二进制为253,从253开始数,255-253+1=3;

代表数三次,每次为一个机器周期,3个机器周期为3us,故该计时器为3us溢出一次。

4. 定时器1溢出 → UART分频

51 UART模式1(模式1用得最多):

若SMOD=0,UART时钟 = T1溢出频率 /32

若SMOD=1,UART时钟 = T1溢出频率 /16

5. UART分频 → 波特率

如我们最终需要的波特率为9600Hz:代表每秒发送9600bit,也就是1bit需要1/9600s=104.17us,得到没发送1bit需要104us;

6. UART发送bit

TXD每104us改变一次电平,发送1bit

注:时钟源和UART分频都是为了最终得到的波特率符合我们的要求,所以有多种组合的方案,但一般我们会选取误差最小的那一种方案。

相关推荐
花月mmc5 小时前
【FPGA】神经网络内容简介预告
嵌入式硬件·深度学习·神经网络·fpga开发
en.en..5 小时前
STM32 HAL 库 | 核心知识点整理
单片机·嵌入式硬件
无敌贵点大王6 小时前
从寄存器层面重学STM32(9)——DMA理论
stm32·单片机·嵌入式硬件
希和20276 小时前
51 单片机入门笔记:江科大课程代码逐行讲解(按键控制 LED 流水灯)
笔记·单片机·mongodb
希和20277 小时前
51 单片机按键控制 LED:江科大课程代码小白笔记
笔记·单片机·嵌入式硬件
希和20277 小时前
51 单片机 LED 流水灯:从直接法到循环法(江科大课程笔记)
笔记·单片机·mongodb
Zwawa19 小时前
用两个按键做一个OLED菜单:先把选择和执行分开
c语言·单片机·嵌入式
Dev_XH1 天前
【成品设计】基于CH32H417的CH32H417AIOT家庭微电网
单片机·嵌入式硬件·物联网·ai
国科安芯1 天前
人在回路中的总线:商业空间站环境控制与生命保障系统CANFD网络的可靠性与功能安全
网络·嵌入式硬件·安全·架构·php·抗辐射
国科安芯1 天前
算力上天之后的电与静:星上边缘计算载荷带外管理网络的低功耗调度与辐射容错
网络·人工智能·嵌入式硬件·安全·边缘计算·低轨卫星·商业航天