找回密码
 立即注册

QQ登录

只需一步,快速开始

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

stc15单片机的串口定时器,是从收到起始位开始计算,还是一直计算?

[复制链接]
跳转到指定楼层
楼主
ID:479009 发表于 2022-1-24 02:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
想使用stc15的内部振荡器,但担心其准确率,长时间运行时误差累积到半个bit那通讯错误就非常严重了。
如果每次收到起始位后重新装填计算,那误差累积就被消除了。
想进行115200,用内部晶振行吗?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:752974 发表于 2022-1-24 08:23 | 只看该作者
异步通信,每传送一帧数据都是从起始位开始同步的。
回复

使用道具 举报

板凳
ID:276663 发表于 2022-1-24 09:19 | 只看该作者
您多虑了,串口的起始位顾名思义就是干这个的。
回复

使用道具 举报

地板
ID:277550 发表于 2022-1-24 09:31 | 只看该作者
当然可以了。串口通讯有起止位的。不仅仅是定时器的作用的。
回复

使用道具 举报

5#
ID:879348 发表于 2022-1-24 09:33 | 只看该作者
串口通信没有累积误差
回复

使用道具 举报

6#
ID:624769 发表于 2022-1-24 15:59 | 只看该作者
杞人忧天

STC15系列是 波特率 4分频,即定时器每溢出4次接受一位。
每个字节传输都有起始位,收到起始位后,会在6次溢出后接受第1位,然后每4次溢出接受1位,确保每一位的接收,都在电平最稳定的中间位置。按照,这个机制,只要波特率算得正确,晶振频率只要误差不要超过4%, 就能正确接受。换言之,只要不是24M的晶振,实际变成25M 就不会有问题。
回复

使用道具 举报

7#
ID:479009 发表于 2022-1-25 14:43 | 只看该作者
188610329 发表于 2022-1-24 15:59
杞人忧天

STC15系列是 波特率 4分频,即定时器每溢出4次接受一位。

'''''.XX..XX..XX..XX..XX..XX..XX..XX..__是这样吗?
你这个解析太棒了,就是我想要的答案了。
4分频然后去头去尾就能去掉误差影响,之前不知道工作原理,以为115200就是一秒定时器相应115200次
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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