发新帖我要提问
12
返回列表
打印
[STC单片机]

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

[复制链接]
楼主: 456good789com
手机看帖
扫描二维码
随时随地手机跟帖
21
coody| | 2017-9-22 21:49 | 只看该作者 回帖奖励 |倒序浏览
楼主有点吹毛求疵了,内部RC啊,-16.5/7200=-0.23%,试问,现在有多少MCU能能将内部RC做到这么好的精度?

以前能用到4%的内部RC(全温范围),就很高兴了。

使用特权

评论回复
22
QuakeGod| | 2017-9-22 23:07 | 只看该作者
xhtwork 发表于 2017-9-22 20:41
确实有计算表明“串口通信对时钟偏差的要求是小于4.5%”,但计算是基于特定位采样方式的,我不清楚各种UA ...

https://bbs.21ic.com/icview-1646756-1-1.html
由于保证双方时钟完全一致是不可能的,所以必须考虑到时钟频率误差的问题。这也是网上流传的各种模拟串口程序的普遍短板。
下面按照1个起始位,9个数据位,1个停止位,一共11位,9600bps来讨论。
理想情况,我们应该采集每一位的中点,假设起始位是从50%中点采集,要保证最后一位还在0.1%-99.9%的范围内,则允许4.5%以内的时钟误差。
如果起始位检测不能保证在50%中点,则实际允许的时钟误差还要小。

使用特权

评论回复
23
风过琴弦| | 2017-9-23 00:51 | 只看该作者
RC还指望精确,这个。。。RC不但有误差,而且肯定会随温度变化

使用特权

评论回复
24
Wattle_He| | 2017-9-23 10:58 | 只看该作者
没见过这样的啊,自己拿不准为啥都不预留一个晶振的封装?

使用特权

评论回复
25
datouyuan| | 2017-9-25 17:59 | 只看该作者
本帖最后由 datouyuan 于 2017-9-26 09:08 编辑
QuakeGod 发表于 2017-9-22 23:07
https://bbs.21ic.com/icview-1646756-1-1.html
由于保证双方时钟完全一致是不可能的,所以必须考虑到时钟 ...

你这理解有误,4.5%以内的时钟误差,不在中点也没问题,中点是最恶劣的情况。

你自己好好理理。

使用特权

评论回复
26
linqing171| | 2017-9-25 22:08 | 只看该作者
QuakeGod 发表于 2017-9-22 23:07
https://bbs.21ic.com/icview-1646756-1-1.html
由于保证双方时钟完全一致是不可能的,所以必须考虑到时钟 ...

第一位能保证. 因为start信号的下降沿同步的.

使用特权

评论回复
27
datouyuan| | 2017-9-26 09:06 | 只看该作者
xhtwork 发表于 2017-9-22 20:41
确实有计算表明“串口通信对时钟偏差的要求是小于4.5%”,但计算是基于特定位采样方式的,我不清楚各种UA ...

小于4.5%,不管哪种采样方式,uart通讯是可靠的。

你一定要找个设计不好的IO模拟串口程序,那我没话说。

我用3倍采样的IO模拟串口程序,同样适用于小于4.5%。

使用特权

评论回复
28
hanlie2345678| | 2017-9-26 09:36 | 只看该作者
如果对精度有特殊要求的建议还是选用外部,不然很浪费时间精力。

使用特权

评论回复
29
gx_huang| | 2017-9-26 10:04 | 只看该作者
UART通信,时钟的误差要求,不是简单算算即可,和通信双方,位数有关。
网上的结论,是一端采用晶体的PC端,一端内部RC的MCU端,如果二头都是内部RC的MCU,则误差还得小一半才行。

使用特权

评论回复
30
QuakeGod| | 2017-9-26 15:04 | 只看该作者
gx_huang 发表于 2017-9-26 10:04
UART通信,时钟的误差要求,不是简单算算即可,和通信双方,位数有关。
网上的结论,是一端采用晶体的PC端 ...

对头。
这里的误差4.5%, 并不是说对于标准的偏差,而是通讯两端相互的偏差。
如果两端相对标准都是正10%,也无所谓,同样可以通讯,因为互相之间偏差为0。
如果两端一正一负,那每人只剩2.25%了。

使用特权

评论回复
31
jcdzxh| | 2017-9-27 08:18 | 只看该作者
楼主的要求0.138%,依赖厂商的标定,现在的HSI明显就做不到,
常温,电压变化不大,逐个标定一次,现在HSI水平还是能得到这个漂移水平,实测过一些。

使用特权

评论回复
32
rgjinxuan| | 2017-9-27 08:51 | 只看该作者
已经非常好啦,你没看芯圣,IRC  70%  的误差也在用

使用特权

评论回复
33
redsun525| | 2017-9-27 16:24 | 只看该作者
本帖最后由 redsun525 于 2017-9-27 16:28 编辑

见过的MCU IRC做主频大都在3%以内,除了有样品偏差,还有电压带来的偏差,温漂偏移,能够完全保证有3%以内的偏差已经不错了。

使用特权

评论回复
34
dukecheng| | 2018-5-17 11:09 | 只看该作者
内部R/C用在一些对时钟不敏感的地方,还是很方便的。

使用特权

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

长见识

使用特权

评论回复
36
集成| | 2022-10-30 19:24 | 只看该作者
15W单片机做了个10秒的时钟和电脑上校准有1秒多的误差

使用特权

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

本版积分规则