打印
[STC单片机]

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

[复制链接]
7390|37
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
stc单片机的内部R/C时钟误差太大,两小时有-16.5的误差,跑快了,设置频率12M,读出来有12.011M,做了几块板子,时钟频率都不一样,有的有11.981M这么小的,就算是读出来的频率小于12M的定时也会快几秒,坑啊,还是换成外部晶振比较牢靠点。



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

无标题111.png (67.04 KB )

无标题111.png
评论
chongdongchen 2018-5-19 10:13 回复TA
一个晶振引发的血案。。。 

相关帖子

沙发
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的晶振还需要外加电容微调。每台表还要用标准表来校
看似简单实则很麻烦

使用特权

评论回复
5
456good789com|  楼主 | 2017-9-21 11:46 | 只看该作者
xxdcq 发表于 2017-9-21 11:36
敢用RC来做时钟你也够胆,做时钟需要专门的时钟芯片,32768的晶振还需要外加电容微调。每台表还要用标准表 ...

不是实时时钟 ,只是做一个两小时的工作计时,误差在10s之内

使用特权

评论回复
6
宇容创行| | 2017-9-21 11:51 | 只看该作者
这是明显的设计问题,不怪stc

使用特权

评论回复
7
xxdcq| | 2017-9-21 12:40 | 只看该作者
456good789com 发表于 2017-9-21 11:46
不是实时时钟 ,只是做一个两小时的工作计时,误差在10s之内

只要不要求精确没什么问题,两小时都等过来了也不在乎多那10来秒

使用特权

评论回复
8
456good789com|  楼主 | 2017-9-21 12:57 | 只看该作者
本帖最后由 456good789com 于 2017-9-21 13:00 编辑
xxdcq 发表于 2017-9-21 12:40
只要不要求精确没什么问题,两小时都等过来了也不在乎多那10来秒

技术要求是2小时误差在10s内,偶尔有一两块会超过10s 那就不行了   对于使用者来说两小时误差十几秒是感觉不出来的,也不影响使用,但是如果拿去检测就不达标了

使用特权

评论回复
9
山东电子小菜鸟| | 2017-9-21 15:04 | 只看该作者

使用特权

评论回复
10
ningling_21| | 2017-9-21 16:25 | 只看该作者
RC只用于精度无要求的场合

使用特权

评论回复
11
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分钟的误差算正常的。

使用特权

评论回复
12
456good789com|  楼主 | 2017-9-21 20:47 | 只看该作者
没有仔细看手册,上面写着±0.3%

无标题2222.png (110.2 KB )

无标题2222.png

使用特权

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

使用特权

评论回复
评论
datouyuan 2017-9-22 10:30 回复TA
这测试没有任何意义。然道你是验证规格书是否出错? 
14
zhangxiyi5277| | 2017-9-22 01:03 | 只看该作者
这点偏移还叫,,很多rc震荡的串口通信都有问题

使用特权

评论回复
15
dog_xin| | 2017-9-22 07:49 | 只看该作者
内部有这么高的精度已经不错了,至少能用UART了,10年前玩PIC的时候是不可想象的,连SILICON的芯片也不能用RC玩UART

使用特权

评论回复
16
datouyuan| | 2017-9-22 10:17 | 只看该作者
xhtwork 发表于 2017-9-21 22:06
关注这个问题的人应该很多,希望楼主能多测量一些(比如10台、20台,2、3个温度点),把数据分享一下。
我 ...

串口通讯对时钟偏差要求是小于4.5%,这么低的要求,最差的内部RC时钟(MHz级)都可胜任。

使用特权

评论回复
17
datouyuan| | 2017-9-22 10:25 | 只看该作者
456good789com 发表于 2017-9-21 20:47
没有仔细看手册,上面写着±0.3%

±0.3%是恒定温度下的。

这个是常识,不用看手册。所有mcu的内部RC性能都差不多。

使用特权

评论回复
18
QuakeGod| | 2017-9-22 14:30 | 只看该作者
这已经不错了,最早STC的内部RC,误差最大能到50%,只能算是有时钟,芯片能工作了,做串口通讯都是妄想。做最简单的蜂鸣器都变调严重。

使用特权

评论回复
19
ddllxxrr| | 2017-9-22 16:01 | 只看该作者
本帖最后由 ddllxxrr 于 2017-9-22 16:02 编辑

我多说过一千遍了,形成产品时,一定要用外部晶振。你这么省,到底是为毛

使用特权

评论回复
20
xhtwork| | 2017-9-22 20:41 | 只看该作者
datouyuan 发表于 2017-9-22 10:17
串口通讯对时钟偏差要求是小于4.5%,这么低的要求,最差的内部RC时钟(MHz级)都可胜任。 ...

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

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

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

6

主题

26

帖子

2

粉丝