[STC单片机] stc单片机的内部R/C时钟误差太大

[复制链接]
 楼主| 456good789com 发表于 2017-9-21 11:02 | 显示全部楼层 |阅读模式
stc单片机的内部R/C时钟误差太大,两小时有-16.5的误差,跑快了,设置频率12M,读出来有12.011M,做了几块板子,时钟频率都不一样,有的有11.981M这么小的,就算是读出来的频率小于12M的定时也会快几秒,坑啊,还是换成外部晶振比较牢靠点。



产品已经投下去200套了,这个时候出现这个问题,也是太无奈了,吸取教训。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×

评论

一个晶振引发的血案。。。  发表于 2018-5-19 10:13
gx_huang 发表于 2017-9-21 11:21 | 显示全部楼层
是你自己挖的坑呀!
内部RC本来就1%左右的精度。

评分

参与人数 1威望 +1 收起 理由
autopccopy + 1 很给力!

查看全部评分

 楼主| 456good789com 发表于 2017-9-21 11:35 | 显示全部楼层
自己挖的坑,含着泪也要过去,测试的时候就测了几分钟,也没感觉出来
xxdcq 发表于 2017-9-21 11:36 | 显示全部楼层
敢用RC来做时钟你也够胆,做时钟需要专门的时钟芯片,32768的晶振还需要外加电容微调。每台表还要用标准表来校
看似简单实则很麻烦
 楼主| 456good789com 发表于 2017-9-21 11:46 | 显示全部楼层
xxdcq 发表于 2017-9-21 11:36
敢用RC来做时钟你也够胆,做时钟需要专门的时钟芯片,32768的晶振还需要外加电容微调。每台表还要用标准表 ...

不是实时时钟 ,只是做一个两小时的工作计时,误差在10s之内
宇容创行 发表于 2017-9-21 11:51 | 显示全部楼层
这是明显的设计问题,不怪stc
xxdcq 发表于 2017-9-21 12:40 | 显示全部楼层
456good789com 发表于 2017-9-21 11:46
不是实时时钟 ,只是做一个两小时的工作计时,误差在10s之内

只要不要求精确没什么问题,两小时都等过来了也不在乎多那10来秒
 楼主| 456good789com 发表于 2017-9-21 12:57 | 显示全部楼层
本帖最后由 456good789com 于 2017-9-21 13:00 编辑
xxdcq 发表于 2017-9-21 12:40
只要不要求精确没什么问题,两小时都等过来了也不在乎多那10来秒

技术要求是2小时误差在10s内,偶尔有一两块会超过10s 那就不行了   对于使用者来说两小时误差十几秒是感觉不出来的,也不影响使用,但是如果拿去检测就不达标了
山东电子小菜鸟 发表于 2017-9-21 15:04 | 显示全部楼层
ningling_21 发表于 2017-9-21 16:25 | 显示全部楼层
RC只用于精度无要求的场合
datouyuan 发表于 2017-9-21 16:59 | 显示全部楼层
本帖最后由 datouyuan 于 2017-9-21 17:01 编辑
456good789com 发表于 2017-9-21 11:46
不是实时时钟 ,只是做一个两小时的工作计时,误差在10s之内

算是给楼主点经验教训。

内部RC时钟的精度在几MHz的情况下,精度最多能做到1%,这还得由厂家校准后才行。
在几百kHz或以下的情况下,精度一般是10%,意思是一个小时误差有6、7分钟的误差算正常的。
 楼主| 456good789com 发表于 2017-9-21 20:47 | 显示全部楼层
没有仔细看手册,上面写着±0.3%

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
xhtwork 发表于 2017-9-21 22:06 | 显示全部楼层
关注这个问题的人应该很多,希望楼主能多测量一些(比如10台、20台,2、3个温度点),把数据分享一下。
我向版友咨询过能否用stc内部RC进行串口通信:https://bbs.21ic.com/icview-1665954-1-1.html

评论

这测试没有任何意义。然道你是验证规格书是否出错?  发表于 2017-9-22 10:30
zhangxiyi5277 发表于 2017-9-22 01:03 来自手机 | 显示全部楼层
这点偏移还叫,,很多rc震荡的串口通信都有问题
dog_xin 发表于 2017-9-22 07:49 | 显示全部楼层
内部有这么高的精度已经不错了,至少能用UART了,10年前玩PIC的时候是不可想象的,连SILICON的芯片也不能用RC玩UART
datouyuan 发表于 2017-9-22 10:17 | 显示全部楼层
xhtwork 发表于 2017-9-21 22:06
关注这个问题的人应该很多,希望楼主能多测量一些(比如10台、20台,2、3个温度点),把数据分享一下。
我 ...

串口通讯对时钟偏差要求是小于4.5%,这么低的要求,最差的内部RC时钟(MHz级)都可胜任。
datouyuan 发表于 2017-9-22 10:25 | 显示全部楼层
456good789com 发表于 2017-9-21 20:47
没有仔细看手册,上面写着±0.3%

±0.3%是恒定温度下的。

这个是常识,不用看手册。所有mcu的内部RC性能都差不多。
QuakeGod 发表于 2017-9-22 14:30 | 显示全部楼层
这已经不错了,最早STC的内部RC,误差最大能到50%,只能算是有时钟,芯片能工作了,做串口通讯都是妄想。做最简单的蜂鸣器都变调严重。
ddllxxrr 发表于 2017-9-22 16:01 | 显示全部楼层
本帖最后由 ddllxxrr 于 2017-9-22 16:02 编辑

我多说过一千遍了,形成产品时,一定要用外部晶振。你这么省,到底是为毛
xhtwork 发表于 2017-9-22 20:41 | 显示全部楼层
datouyuan 发表于 2017-9-22 10:17
串口通讯对时钟偏差要求是小于4.5%,这么低的要求,最差的内部RC时钟(MHz级)都可胜任。 ...

确实有计算表明“串口通信对时钟偏差的要求是小于4.5%”,但计算是基于特定位采样方式的,我不清楚各种UART器件是否都如此。

另外,因为STC的手册编排看起来不是很严谨,所以我不敢无条件相信其数据的严谨性。虽然知道很多朋友用RC能正常UART,我还是用晶振了,胆小、那个项目pcb面积也不紧张。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

6

主题

27

帖子

2

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