为什么MANGO II的程序下载速度比别的板子慢很多?
本帖最后由 isilcala 于 2013-12-5 21:17 编辑一段自己写的程序,编译后13k。用官方IDE,在三块板子上分别下载:
[*]意大利进口原厂UNO:
下载窗口结束时显示时间:# | 100% 2.01s
自己掐表从第一个avrdude: Send: 0 开始到下载结束的时间:约5秒。
[*]MANGO II:
下载窗口结束时显示时间:# | 100% 4.49s
自己掐表从第一个avrdude: Send: 0 开始到下载结束的时间:约10秒。
[*]一块自己焊的Arduino兼容板+CP2102下载器(ATMEGA328P):
下载窗口结束时显示时间:# | 100% 1.77s
自己掐表从第一个avrdude: Send: 0 开始到下载结束的时间:约4秒。
这是为何啊……
下载其他程序的时间也是基本成比例的。
一开始以为是MANGO的Bootloader问题,刷了optiboot的328P的Bootloader(自己焊的板子也是用的这枚)以后没有任何变化。
对比了输出窗口的详细记录,三者的输出也是一模一样的一字不差。
想不明白了…… 应该是usb转串口 那地方效率不好吧 flashria 发表于 2013-12-6 10:39 static/image/common/back.gif
应该是usb转串口 那地方效率不好吧
MANGO用的是FT232,照理来说是最好的USB转串口芯片了啊…… 应该是用老版的bootloader的原因,老版bootloader波特率比较低貌似是38400,现在UNO R3的波特率都是115200 啷哩个铛 发表于 2013-12-6 13:51 static/image/common/back.gif
应该是用老版的bootloader的原因,老版bootloader波特率比较低貌似是38400,现在UNO R3的波特率都是115200
原帖里已经说了,刷了optiboot的新bootloader了 isilcala 发表于 2013-12-6 13:29 static/image/common/back.gif
MANGO用的是FT232,照理来说是最好的USB转串口芯片了啊……
FT232是兼容性最好最稳定,但不是最快啊。 Simon 发表于 2013-12-6 22:58 static/image/common/back.gif
FT232是兼容性最好最稳定,但不是最快啊。
是不一定要最快,但也不至于这么离谱吧。
要说UNO上的16U2,某种意义上可以算是个“软”的USB2TTL芯片,速度比CP2102略慢点还说得过去。
FT232数倍于CP2102的价格,速度才人家一半都不到这就有点说不过去了吧……
何况,要比较稳定和兼容性,也应该是在速度一致的前提下去比较才是有意义的。如果舍弃速度,PL2303也可以做到稳定。但那种稳定没有意义啊。FT232这么好的口碑,相信不至于会那样。
另外也确认过,这3个板子下载时都是如下一样的波特率:
Using Port : \\.\COM9
Using Programmer : arduino
Overriding Baud Rate : 115200
isilcala 发表于 2013-12-7 03:26 static/image/common/back.gif
是不一定要最快,但也不至于这么离谱吧。
要说UNO上的16U2,某种意义上可以算是个“软”的USB2TTL芯 ...
最好另外找一块用FT232的板测试一下对比才有意义。 本帖最后由 isilcala 于 2013-12-7 15:40 编辑
Simon 发表于 2013-12-7 12:11 static/image/common/back.gif
最好另外找一块用FT232的板测试一下对比才有意义。
刚才又做了另一个测试,利用MANGO TTL部分的跳线帽。(有一句说一句,这个设计还是很不错的。包括ICSP刷写头那个设计也是。)
用MANGO的串口部分,也就是板载的FT232,接自己焊的DIY板下载,速度同MANGO下载。
用CP2102的串口部分,接MANGO的328P下载,速度同CP2102接自焊DIY板下载。
那就排除了2块板子上2种封装的328P,以及各自Bootloader的问题。
看来问题还是在FT232这部分。可是FT232的手里只有这一块,没法做其他测试。不知道其他用MANGO的朋友有没有同样的问题。 有没有手里有MANGO的同学也能测一下的啊? 这个确实有可能,FT232是最稳定的。。。但绝对不是最快的。有大神实测过,CP2102极限通信速度是usb转ttl中最快的。。。但是在驱动支持,长期运行可靠性上。。FT232是最优良的,长期用于工业应用上。因为稳定,意味着就要各种校验等等,就像服务器上的ECC内存,其实速度只有普通内存的一半,因为多了校验环节,但是稳定性就提高很多。我感觉是FT232在内部设计上增加了校验功能,这种增加的校验功能只有在长期大量通信下才能看出来效果。就像普通内存,你连续运行2,3天是看不出来和服务器内存差距的,但是你7X24连续内存上高负荷读写一个月,就能看出来差别了。
uno的bootloader通信速率是115200,这个属于ttl通信速度中很高的了。如果是内部带硬件校验,这个速度下变慢不是很奇怪的,可以试试在57600通信速度下下载,感觉57600下差距应该会小不少。
消费类电子产品追求的是速度,用来做开发的东西还是追求稳定性更好一些。
我们给工业环境下的ttl通信波特率。。。长期使用9600~~~或者更低。。。
弘毅 发表于 2013-12-13 09:11 static/image/common/back.gif
这个确实有可能,FT232是最稳定的。。。但绝对不是最快的。有大神实测过,CP2102极限通信速度是usb转ttl中最 ...
好吧,google一圈,发现的确很多人在说FT232慢的问题,可是没理出什么线索,一些人说的办法也不管用。
去更新了个最新驱动也不管用。
最后瞎倒腾的时候发现这个设置:
默认值是16,改成最低的1,速度一下子就正常了。 isilcala 发表于 2013-12-13 16:21 static/image/common/back.gif
好吧,google一圈,发现的确很多人在说FT232慢的问题,可是没理出什么线索,一些人说的办法也不管用。
...
。。。。居然是这里的默认设置。。学习了。。。
页:
[1]