找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3571|回复: 10
打印 上一主题 下一主题
收起左侧

哪个坛友知道单片机波特率误差是如何计算出来的?

[复制链接]
楼主
ID:401564 发表于 2020-10-13 19:49 | 显示全部楼层
11.0592MHZ是专门为波特率生产的晶振
你这个表是8051单片机专用的波特率计算,别的单片机不一样算法,不通用的
你知道怎么计算也没有用
在这之前,你要知道波特率是什么意思,不是网上那什么速率什么的,而是要完全明白波特率才行
比如:1200波特率是表示1秒传送的数据位是1200位
然后你还要知道8051定时器作为波特率输出的工作模式,每个寄存器位的意义是什么,你肯定没看明白,看了就不会问这个了
别人说就是除这个除那个,最后就是这个,你只能一脸的茫然

你要是只想知道这误差怎么来的,前面的话不用看,拿晶振频率去除以波特率,11.0592是可以被左边的波特率整除的,这就没有误差了
回复

使用道具 举报

沙发
ID:401564 发表于 2020-10-15 08:56 | 显示全部楼层
QWE4562012 发表于 2020-10-14 17:44
你知道怎么计算吗  比如用12M晶振  波特率115200  会有多少的误差

哥们,重点不在这好吗!这不是波特率的问题!所谓1200波特率就是1秒传输1200个位而已
重点在8051定时器的工作方式,8051定时器的工作方式,8051定时器的工作方式!说了3遍了
1200波特率就是要定时器1的溢出频率为1200HZ,那就是要定时器产生1200HZ的频率,那就去设置定时器1
这个时候波特率的计算不就变成了对定时器1的操作了吗?怎么样让定时器1输出1200HZ的频率呢?
这个说不明白的,从8051的时钟周期到机器周期,再到定时器1的分频模式,然后就是定时器的五六种工作模式,这是编程,不是种田,不能说先这样然后那样就可以了,每个寄存器每个位的操作都是有严格要求的,你要从8051系统工作方式开始看才能明白的,而且,这个只是针对8051的某个型号的单片机而已,并不通用,这要对单片机很了解才行,三言两语说不明白,我宁愿打那么多字,都不想从8051的时钟周期开始解释到定时器1的工作模式
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表