51单片机定时计数器溢出率计算和串口的波特率之间的关系

51 芯片的串口可以工作在几个不同的工作模式下,其工作模式的设置就是使用SCON 寄存器。它的各个位的具体定义如下:

SM0 SM1 SM2 REN TB8 RB8 TI RI

SM0、SM1 为串行口工作模式设置位,这样两位可以对应进行四种模式的设置。串行口工作模式设置。

“”

波特率在使用串口做通讯时,一个很重要的参数就是波特率,只有上下位机的波特率一样时才可以进行正常通讯。波特率是指串行端口每秒内可以传输的波特位数。这里所指的波特率,如标准9600 不是每秒种可以传送9600个字节,而是指每秒可以传送9600 个二进位,而一个字节要8 个二进位,如用串口模式1 来传输那么加上起始位和停止位,每个数据字节就要占用10 个二进位,9600 波特率用模式1 传输时,每秒传输的字节数是9600÷10=960 字节。

51芯片的串口工作模式0的波特率是固定的,为fosc/12,以一个12M 的晶振来计算,那么它的波特率可以达到1M。模式2的波特率是固定在fosc/64 或fosc/32,具体用那一种就取决于PCON 寄存器中的SMOD位,如SMOD 为0,波特率为focs/64,SMOD 为1,波特率为focs/32。

模式1和模式3的波特率是可变的,取决于定时器1或2(52芯片)的溢出速率,就是说定时器 1每溢出一次,串口发送一次数据。那么我们怎么去计算这两个模式的波特率设置时相关的寄存器的值呢?可以用以下的公式去计算。

“”

上式中如设置了PCON寄存器中的SMOD位为1时就可以把波特率提升2倍。通常会使用定时器1工作在定时器工作模式2下,这时定时值中的TL1做为计数,TH1做为自动重装值,这个定时模式下,定时器溢出后,TH1的值会自动装载到TL1,再次开始计数,这样可以不用软件去干预,使得定时更准确。在这个定时模式2下定时器1溢出速率的计算公式如下:

溢出速率=(计数速率)/(256-TH1初值)

溢出速率=fosc/[12*(256-TH1初值)]

上式中的“计数速率”与所使用的晶体振荡器频率有关,在51 芯片中定时器启动后会在每一个机器周期使定时寄存器TH 的值增加一,一个机器周期等于十二个振荡周期,所以可以得知51芯片的计数速率为晶体振荡器频率的1/12,一个12M 的晶振用在51芯片上,那么51的计数速率就为1M。通常用11.0592M 晶体是为了得到标准的无误差的波特率,那么为何呢?计算一下就知道了。如我们要得到9600 的波特率,晶振为11.0592M 和12M,定时器1 为模式2,SMOD 设为1,分别看看那所要求的TH1 为何值。代入公式:

11.0592M
9600=(2÷32)×((11.0592M/12)/(256-TH1))
TH1=250

12M
9600=(2÷32)×((12M/12)/(256-TH1))
TH1≈249.49

上面的计算可以看出使用12M晶体的时候计算出来的TH1不为整数,而TH1的值只能取整数,这样它就会有一定的误差存在不能产生精确的9600 波特率。当然一定的误差是可以在使用中被接受的,就算使用11.0592M 的晶体振荡器也会因晶体本身所存在的误差使波特率产生误差,但晶体本身的误差对波特率的影响是十分之小的,可以忽略不计。

本文转载自:又没吃饭的博客
声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有,如涉及侵权,请联系小编邮箱: cathy@eetrend.com 进行处理。

M博士问答

热门产品推荐

关注贸泽微信公众号,发现更多精彩!



产品类别

LED照明 机电产品
工业自动化 机壳产品
工具与供应 光电子产品
工程工具 传感器
无源元件 连接器
电线与电缆 测试与测量
电路保护 热管理产品
电源 嵌入式解决方案
半导体 查看所有

应用和技术

应用

安全 | 电机控制 | 工业 | 广播 | 计算 | 汽车 | 通讯 | 医疗 | 仪器仪表 | 音频 | 照明

技术

MEMS | RFID和NFC | Timing | USB 3.0 | 测试和测量 | 触摸 | 传感器 | 低功率 | 电源 | 电源管理 | 恶劣环境 | 高电压 | 机器人技术 | 开源硬件 | 可编程逻辑 | 宽能阶 | 能量收集 | 太阳能 | 无线充电 | 无线射频 | 无线网状网络 | 物联网 | 智能网格

开发工具中心


● LED 照明开发工具
● 开发软件
● 电源管理IC开发工具
● 光电开发工具
● 传感器开发工具
● 射频/无线开发工具
● 通信开发工具
● 嵌入式开发工具
● 模拟与数字IC开发工具

最新评论

  • 谢谢分享! 11 个月 2 周 之前
  • 谢谢分享 11 个月 2 周 之前
  • 谢谢分享 11 个月 2 周 之前
  • 优秀,好资料!!! 1 年 2 个月 之前
  • 感谢分享 3 年 3 个月 之前
  • 原文没问题,是我搞错了,不好意思哦! 4 年 1个月 之前
  • 应该是一个笔误 4 年 1个月 之前
  • 谢谢你解释一切 4 年 11 个月 之前
  • 开窗处已考虑内层平面成内缩,并已设置合适的禁止布线区。 5 年 2 个月 之前
  • 一般的功率三极管、稳压芯片等 5 年 2 个月 之前

聚圣源箱包公司起名女孩春天出生起什么名字好余额宝存一万依字起名大全佳字公司起名大全北京氟碳漆李宥利王者归来林风苏雅小说免费阅读儿童起名字姓郭马赫雷斯猪的宝宝起名适合用什么字组织生活会会议记录龙少怎么起名网给小奶猫起好听萌名字我的钢铁战衣bnb998贾玲瘦的照片建筑公司起名大全货拉拉跳车身亡案:检方已提起公诉宝宝韩姓起名起名大全下载软件passion-hd.com郭姓起名子更的部首外国公司起名唐氏起名大全男孩姓名大全官道之1976周易起名测量名打分测试御龙在天鸡毛信双胞胎兄弟起名大全淀粉肠小王子日销售额涨超10倍罗斯否认插足凯特王妃婚姻让美丽中国“从细节出发”清明节放假3天调休1天男孩疑遭霸凌 家长讨说法被踢出群国产伟哥去年销售近13亿网友建议重庆地铁不准乘客携带菜筐雅江山火三名扑火人员牺牲系谣言代拍被何赛飞拿着魔杖追着打月嫂回应掌掴婴儿是在赶虫子山西高速一大巴发生事故 已致13死高中生被打伤下体休学 邯郸通报李梦为奥运任务婉拒WNBA邀请19岁小伙救下5人后溺亡 多方发声王树国3次鞠躬告别西交大师生单亲妈妈陷入热恋 14岁儿子报警315晚会后胖东来又人满为患了倪萍分享减重40斤方法王楚钦登顶三项第一今日春分两大学生合买彩票中奖一人不认账张家界的山上“长”满了韩国人?周杰伦一审败诉网易房客欠租失踪 房东直发愁男子持台球杆殴打2名女店员被抓男子被猫抓伤后确诊“猫抓病”“重生之我在北大当嫡校长”槽头肉企业被曝光前生意红火男孩8年未见母亲被告知被遗忘恒大被罚41.75亿到底怎么缴网友洛杉矶偶遇贾玲杨倩无缘巴黎奥运张立群任西安交通大学校长黑马情侣提车了西双版纳热带植物园回应蜉蝣大爆发妈妈回应孩子在校撞护栏坠楼考生莫言也上北大硕士复试名单了韩国首次吊销离岗医生执照奥巴马现身唐宁街 黑色着装引猜测沈阳一轿车冲入人行道致3死2伤阿根廷将发行1万与2万面值的纸币外国人感慨凌晨的中国很安全男子被流浪猫绊倒 投喂者赔24万手机成瘾是影响睡眠质量重要因素春分“立蛋”成功率更高?胖东来员工每周单休无小长假“开封王婆”爆火:促成四五十对专家建议不必谈骨泥色变浙江一高校内汽车冲撞行人 多人受伤许家印被限制高消费

聚圣源 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化