首页 > 编程知识 正文

51单片机脉冲计数器程序,51单片机串口波特率

时间:2023-05-04 10:18:44 阅读:136176 作者:3120

8051单片机波特率计算公式(集c语言例程)水寒8051 182 views 0 Comments发表评论

8051单片机使用定时器1在方式2的情况下作为串行端口的波特率发生器工作,其波特率=(2smod/32 ) (定时器T1溢出率),其中smod为PCON7,波特率为

在波特率式中,T1溢出率=溢出周期倒数; 溢出周期=(256-th1 )12/Fosc; 最终公式:

我们一般不太关注波特率的计算,关心选择的传输速度(波特率),计时器1 )自动重新加载模式)的初始值) TH1 )进行逆运算,所以导出上述公式得到TH1的公式。

关于串行发送程序,水寒写了例行程序,请作为参考。 (我正在使用STC12C5A40S2调试。 原则上在STC89C5x、AT89C5x等8051核单片机上成功实现。 因为程序很简单,所以没有尝试,但是应该没有问题)

#include 'Reg52.H '

/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *。

(1)波特率加倍: SMOD=1) Max_Baud=FOSC/12/16

)波特率不会加倍(SMOD=0):Max_Baud=FOSC/12/32

例如,22.1184MHz晶振,波特率为2倍时,最大波特率=22118400/12/16=115200 * * * * * * * * * * * * * * * * * * * * * * *最大波特率

#define BAUD 9600 //波特率

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。