找回密码
 立即注册

QQ登录

只需一步,快速开始

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

单片机如何同时兼顾精确计时和串口通信?

[复制链接]
跳转到指定楼层
楼主
ID:1044091 发表于 2023-1-14 16:01 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在做一个泵控制器,有倒计时和定量输送的功能。MCU是STC8H,想同时兼顾精确计时和串口通信,所以选的是12M内部IRC时钟频率(尽量减少理论误差,就没用11.0592M),串口是不是只能使用2400波特率通信了?准备使用自己写的上位机软件控制(正在学习中)。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:433166 发表于 2023-1-14 19:04 | 只看该作者
感觉精确计时就是个伪概念,多少误差为精?多少偏离为确?够用即可
回复

使用道具 举报

板凳
ID:146878 发表于 2023-1-14 19:19 | 只看该作者
可以到38400,串口有点误差没事。
回复

使用道具 举报

地板
ID:1044091 发表于 2023-1-14 20:04 | 只看该作者
liu888888 发表于 2023-1-14 19:04
感觉精确计时就是个伪概念,多少误差为精?多少偏离为确?够用即可

就是希望能在只用内部IRC的条件下,尽量准一点,别差的太多。
回复

使用道具 举报

5#
ID:161164 发表于 2023-1-14 20:33 | 只看该作者
外接时钟芯片来计时
回复

使用道具 举报

6#
ID:213173 发表于 2023-1-14 20:57 | 只看该作者
内部IRC时钟的误差本来就大于晶振,用12M只能使用较低波特率通信,否则误差较大易出错。
回复

使用道具 举报

7#
ID:1034262 发表于 2023-1-14 21:15 | 只看该作者
要精确计时一定要用外部晶振,一般100ppm误差的无源晶振时1毛多一片,20ppm的有源温补贴片晶振是2~3元,0.1ppm的直插温补晶振大约30~50元,带恒温的晶振则几百元以上,优于0.01ppm。
100ppm年误差3154秒(52.5分钟)。
10ppm年误差315秒(5.25分钟)。
1ppm年误差31秒。
0.1ppm年误差3秒。
0.01ppm年误差0.3秒。


回复

使用道具 举报

8#
ID:624769 发表于 2023-1-14 21:57 来自手机 | 只看该作者
有时候真不知道是怎么想的,手册不看的么?stc8h,即便12m,也是闭着眼睛都能到 57600波特率的,何况,精准计时和12m本身没有必然关系。所以,何来2选一的问题?
回复

使用道具 举报

9#
ID:408539 发表于 2023-1-15 00:17 | 只看该作者
倒计时 一般是时间不长压根不考虑那点零头
而且波特率不高也不用考虑
主要看你中断里面怎么写
中断处理越简短越少误差
回复

使用道具 举报

10#
ID:280206 发表于 2023-1-15 07:38 | 只看该作者
建议用11.0592M作主频,计时器误差小于几微妙,还可以程序修正,设置串口方便。
回复

使用道具 举报

11#
ID:332444 发表于 2023-1-15 11:40 | 只看该作者
我家一台旭日红外热水器无线控制器每周都快1小时多,比如时间是6点看它屏幕走时已经是7点多了,每次都要去调整时间,否则计算峰谷的时间就不准确了!非常麻烦,是很差劲的产品质量,可以断定是很差劲的程序代码,所以莫要小看简单的程序提高效率问题,所谓见微知著,简单的功能都不能注重效率的话,可知复杂功能是很有问题的。
回复

使用道具 举报

12#
ID:1044091 发表于 2023-1-15 11:50 | 只看该作者
haikuotian 发表于 2023-1-15 07:38
建议用11.0592M作主频,计时器误差小于几微妙,还可以程序修正,设置串口方便。

已经改成11.0592M了。就是看着山寨逻辑分析仪的数值比12M时差一点,其实也不知道准不准。控制器还有流量校准功能,看最后的实际效果吧。
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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