搜索
bottom↓
回复: 32

【吐槽】Arduino_m2560_r3 的陶振精度真心差

[复制链接]

出200入2554汤圆

发表于 2016-11-15 23:32:49 | 显示全部楼层 |阅读模式
【背景】
最近把玩 CH375 模块,希望能用硬件访问 USB 底层稳定些,结果发现低速小容量的 AVR 很吃力。
随即换了块 m2560 的板子(Arduino_m2560_r3,CH340G改版),准备带一带看效果如何。


【发现】
资源分配的时候看了看原理图,发现 M2560 使用了形状略微诡异的晶振,如下所示。

#1. Arduino_m2560_r3 主板:


#2. 晶振特写,左侧黄圈为 CH340G 用 12M 晶振,右侧红圈为 M2560 用 16M 晶振:


#3. 原理图


#4. 走线图



好奇害死猫,我就这么很好奇为什么都是抄,还非要用两个版本的晶振?莫非这小晶振有很高精度?
按着原理图百度 CSTCE16M0V53-R0 了,结果是个 ceramic oscillator(陶振),而且只有 0.5% 精度!
×了狗了,这么好的主板(M2560不算低配),居然用 0.5% 的陶振!随便市场上买买的晶振都是 ppm 级别吧。

这么说还真得谢谢那些给 CH340 留了假贴片晶振的,至少精度不至于这么差。


【测试】
怀着忐忑的心情上了示波器,啥都别说了,AVR将死,Arduino补了几刀。
以下测试AVR使用外部晶振,Full-Swing-Crystal-Oscillator 熔丝配置。

#5. M2560 串口 200kbps,8n1 发送一字节:0x1E. 帧长度从 50us 拉伸至 50.44us:


#6. M2560 晶振位置直接测量,手动划了两个周期. 测频从 8M 掉到了 7.89M:


#7. CH340G 晶振位置直接测量,手动划了两个周期 6M 较为准确:


#8. M2560 晶振位置自动测频,平均值不说啥了(标称16M):


#9. CH340G 晶振位置自动测频,平均值真对得起 12.000:



【结论】
还能说啥,Arduino 从意呆利原版的,到国产山寨的,几乎清一色的用了陶振。
不光是 m2560 这个板子,用的最多的 Arduino_UNO 貌似也是这个陶振。
计时 0.5% 理论最好精度。实际上 1% 都是抬举

从这个角度,所有用 Arduino 做时间基准的都是扯淡(频率计、软万年历、放音机)。
真心佩服做出来 3D 打印机的弟兄们,想来定位用了光栅,才不至于把基准放在这个陶振上。

感觉就是个态度,从设计到山寨,都只是一味的重复,连对产品最基本的务实情怀都没有。
可能意呆利设计师家亲戚是卖陶振的,然后就用这个了,然后就满世界抄,其实真心不咋地.....
如果说为啥有了 STM32 还在玩 AVR,无非就是情怀,就像电子管版本的HIFI。
这次 Arduino 补刀真是实在,想用 m2560 调试都不敢了,还是乖乖拿 f103 玩吧。

或者陶振有什么更好的作用,不知哪位大神能给科普下,晚生先谢过了.....

------------------------------------------------

我没有 Arduino 社区的账号,就在这里发发吐槽吧,也算是给大家提个醒。

本帖子中包含更多资源

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

x

阿莫论坛20周年了!感谢大家的支持与爱护!!

一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。

出0入0汤圆

发表于 2016-11-16 04:14:45 来自手机 | 显示全部楼层
哈,楼主认真,因为生态圈里全是。玩软件。硬件基本靠抄呀。

出0入0汤圆

发表于 2016-11-16 09:25:56 | 显示全部楼层
arduino重在开源分享
另外平台的一致性也做的挺好的,一句代码不改,程序就可以跑在N个板上也是不容易的.

出0入0汤圆

发表于 2016-11-16 13:39:49 | 显示全部楼层
stm32也可以做成arduino用啊

出0入0汤圆

发表于 2016-11-16 14:23:41 | 显示全部楼层
这个晶振也用过,精度较差。

出0入0汤圆

发表于 2016-11-16 17:02:40 | 显示全部楼层
楼主分析的很好,我这几天才买了 2560 板子。

出0入0汤圆

发表于 2016-11-16 17:12:15 | 显示全部楼层
关Arduino毛线事啊,都是抄板人搞的。原版也是这?
另外测频率还是要频率计好点吧?

出0入17汤圆

发表于 2016-11-16 21:57:42 来自手机 | 显示全部楼层
我喜欢陶瓷振荡器,抗冲击比石英晶体强好多倍。我一直想找精度稍好些8m频率的

出0入4汤圆

发表于 2016-11-16 23:27:39 | 显示全部楼层
陶震便宜啊,村田搞出来的吧.

出200入2554汤圆

 楼主| 发表于 2016-11-17 00:15:20 | 显示全部楼层
wxws_wxws 发表于 2016-11-16 04:14
哈,楼主认真,因为生态圈里全是。玩软件。硬件基本靠抄呀。

硬件的确不好搞,自主的晶片还是少

出200入2554汤圆

 楼主| 发表于 2016-11-17 00:19:06 | 显示全部楼层
apple_eat 发表于 2016-11-16 09:25
arduino重在开源分享
另外平台的一致性也做的挺好的,一句代码不改,程序就可以跑在N个板上也是不容易的. ...

的确,C++封装了以后,可以很快上手,

底层就交给编译器和 BSP 包搞定

出200入2554汤圆

 楼主| 发表于 2016-11-17 00:20:47 | 显示全部楼层
donglaile 发表于 2016-11-16 13:39
stm32也可以做成arduino用啊

的确见过 stm32 版本的 arduino,不过不知道后续的官方支持如何了。

本来买 avr 版本的 arduino 就是当系统板玩玩,长久还是慢慢 arm

出200入2554汤圆

 楼主| 发表于 2016-11-17 00:29:10 | 显示全部楼层
StephenCui 发表于 2016-11-16 14:23
这个晶振也用过,精度较差。

首次遇见,不过既然有这么的东西,就有存在的道理,比如便宜、抗造之类。

只是这里实在看不出有何道理:

1. Arduino_m2560_r3 原版当中,MEGA16U2 就用了晶体版本的 16M 晶振,没道理因为成本、抗冲击在一块板上用两种晶振(连主频都一样)

2. m2560 的板子明显有很大的空间,理应也不存在放不下节省空间的问题

3. 比起 m2560 和 m16u2,这个晶振的成本不见得高到哪里去

分析来分析去,想不通除了“多试试不同晶振,看效果如何”之类的尝试

出200入2554汤圆

 楼主| 发表于 2016-11-17 00:30:33 | 显示全部楼层
slotg 发表于 2016-11-16 17:02
楼主分析的很好,我这几天才买了 2560 板子。

用用吧,记得 1% 的精度就好,串口 10bit 还是不会丢数的,我200kbps连续传大包(>100KB)也没啥事

只是不能搞时间基准了

出0入0汤圆

发表于 2016-11-17 00:37:37 来自手机 | 显示全部楼层
只想问下有没有相同封装的晶振可以自己换上

出200入2554汤圆

 楼主| 发表于 2016-11-17 00:37:56 | 显示全部楼层
fsclub 发表于 2016-11-16 17:12
关Arduino毛线事啊,都是抄板人搞的。原版也是这?
另外测频率还是要频率计好点吧? ...

感谢大家来捧场啊!

的确我看了原版的设计,两个16M的晶振(一个给 m16u2,一个给 m2560)居然真的是两个版本,一个是陶振。
m16u2 的那个是标准的晶振,m2560 的是陶振,真心感觉有些不妥。

抄板的的确也是瞎整,要是能统一下晶振该多好,结果都是用了原版的陶振。
我在满 TB 就看着一家店的 Arduino_m2560 用了晶振版本的振荡器,不过 USB-B 口被改成 micro 了

频率计啊,手头就暂时摆着台示波器,就拿我板子上 12M 的晶振作基准了,和示波器互相比照下基准。
只是结果实在是有些惊讶,陶振居然在 10bit 的异步包中,就看到了明显的误差。

出200入2554汤圆

 楼主| 发表于 2016-11-17 00:42:21 | 显示全部楼层
HZKJ 发表于 2016-11-16 21:57
我喜欢陶瓷振荡器,抗冲击比石英晶体强好多倍。我一直想找精度稍好些8m频率的 ...

都是各有牺牲吧。

时间基准的话还是晶体的吧,之前做一个脉冲时序测试,板载时间基准就是带温度补偿的有源晶振,约 10ppm 的样子;

陶振之前没咋用过,应该是介于晶振和 RC 之间的折中方案,即有精度又有强度;

RC 就是最没 <节操> 的,专用于没啥要求只要会动......

出200入2554汤圆

 楼主| 发表于 2016-11-17 00:44:58 | 显示全部楼层
wajlh 发表于 2016-11-16 23:27
陶震便宜啊,村田搞出来的吧.

好像还真是的,这个 16M 陶振我搜了下,貌似源头都是日本的

出200入2554汤圆

 楼主| 发表于 2016-11-17 00:46:22 | 显示全部楼层
panjun10 发表于 2016-11-17 00:37
只想问下有没有相同封装的晶振可以自己换上

焊盘小到要用吹的,完全没有外露的裸铜,无限伤心中.....

出0入0汤圆

发表于 2016-11-17 01:47:37 | 显示全部楼层
原版的晶振是村田原装的吧,这个本身陶瓷晶振的精度就不如石英晶振,加上你买的是仿照的版本,差点是理所当然的

出0入0汤圆

发表于 2016-11-17 08:21:58 | 显示全部楼层
这个陶瓷晶振比普通的石英晶振还贵的,使用这个晶振导致精度差跟avr没有半毛钱关系,淘宝上很多用了石英晶振的

出0入663汤圆

发表于 2016-11-17 08:48:12 | 显示全部楼层
陶振相比晶振还有一个很大的区别:启动时间。
做低功耗经常要启停外部时钟的,用陶振可以大大减少唤醒时间,估计原版设计看重的是这个。

本帖子中包含更多资源

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

x

出200入2554汤圆

 楼主| 发表于 2016-11-17 09:09:36 来自手机 | 显示全部楼层
nongxiaoming 发表于 2016-11-17 01:47
原版的晶振是村田原装的吧,这个本身陶瓷晶振的精度就不如石英晶振,加上你买的是仿照的版本,差点是理所当 ...

总之一抄就彻底变味了

出200入2554汤圆

 楼主| 发表于 2016-11-17 09:11:11 来自手机 | 显示全部楼层
ljy99731 发表于 2016-11-17 08:21
这个陶瓷晶振比普通的石英晶振还贵的,使用这个晶振导致精度差跟avr没有半毛钱关系,淘宝上很多用了石英晶 ...

m8、m328版的arduino倒还能找到石英晶振版本的,m2560就清一色全是陶振了,想换都没有

出0入104汤圆

发表于 2016-11-17 09:14:24 | 显示全部楼层
t3486784401 发表于 2016-11-17 09:09
总之一抄就彻底变味了

超简单,用DS3231RTC模块就OK了,做频率计超好。

出200入2554汤圆

 楼主| 发表于 2016-11-17 09:15:07 来自手机 | 显示全部楼层
gzhuli 发表于 2016-11-17 08:48
陶振相比晶振还有一个很大的区别:启动时间。
做低功耗经常要启停外部时钟的,用陶振可以大大减少唤醒时间 ...

原来如此,受教了。

不过这板子强行给使用有些牵强,毕竟运放、m16u2都有使用,而且后者还是石英版的,只能说象征性的评估了陶振的作用

出0入0汤圆

发表于 2016-11-17 09:15:38 | 显示全部楼层
t3486784401 发表于 2016-11-17 09:11
m8、m328版的arduino倒还能找到石英晶振版本的,m2560就清一色全是陶振了,想换都没有 ...

https://item.taobao.com/item.htm ... &id=17972104174

出200入2554汤圆

 楼主| 发表于 2016-11-18 00:55:04 来自手机 | 显示全部楼层
ljy99731 发表于 2016-11-17 09:15
https://item.taobao.com/item.htm?spm=a1z10.3-c.w4002-767892258.9.Bqs95P&id=17972104174

这个好,看来还要细找找

有没ch340版本双石英的呢?win8玩着不容易

出200入2554汤圆

 楼主| 发表于 2016-11-18 00:58:29 来自手机 | 显示全部楼层
andy 发表于 2016-11-17 09:14
超简单,用DS3231RTC模块就OK了,做频率计超好。

真的要外挂时间基准的话,估计有源晶振也不错。只是板子本可以避免这么多一步的

出0入663汤圆

发表于 2016-11-18 11:20:34 | 显示全部楼层
t3486784401 发表于 2016-11-17 09:15
原来如此,受教了。

不过这板子强行给使用有些牵强,毕竟运放、m16u2都有使用,而且后者还是石英版的, ...

因为USB的时钟精度要求陶振满足不了。
Arduino本来就是电子积木和快速评估用的,真要做产品都会重新画原理图做PCB,有啥牵不牵强的。

出0入0汤圆

发表于 2016-11-18 23:23:44 来自手机 | 显示全部楼层
陶振早在汽车上用了,抗环境的能力强,精度不咋地

出200入2554汤圆

 楼主| 发表于 2016-11-21 18:31:15 | 显示全部楼层
gzhuli 发表于 2016-11-18 11:20
因为USB的时钟精度要求陶振满足不了。
Arduino本来就是电子积木和快速评估用的,真要做产品都会重新画原 ...

总之存在就有道理,想定制就得自己动手咯

出200入2554汤圆

 楼主| 发表于 2016-11-21 18:31:37 | 显示全部楼层
本帖最后由 t3486784401 于 2016-11-21 18:32 编辑
web110 发表于 2016-11-18 23:23
陶振早在汽车上用了,抗环境的能力强,精度不咋地


原来如此,看样子还是有它的好处的

我记得红外遥控器大多用 455K 的陶振,不过这个可能更多是考虑成本
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-16 13:42

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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