位置:51电子网 » 技术资料 » 集成电路

Arduino cp2012版本

发布时间:2013/11/15 21:59:07 访问次数:1917

    目前流行的Arduino版本,如UNO、Mega2560、Duemilanove等,ESP18-24SN其USB口基本都采用了ATmega8U2、ATmega16U2、FT232RL等芯片,这几种芯片在网上的零售价大多在15~20元。而且,ATmega8U2、ATmega16U2等芯片由于是Atmel生产的较新的型号,也很难在本地买到。ATmega8U2、ATmeag16U2芯片在/Vduino控制板上,主要只是用作USB转UART,实在是大材小用了。新版的Leonardo已经省略了USB lC,直接用一片ATmega32U4实现了所有功能。
    CP2102是我之前一直用着的一个USB转UART芯片,Silicon出品。不论是实际使用还是网上的评论,这个片子的性能都非常让人满意。另外,这个芯片的价格与前面几种芯片相比,显得更加平易近人,网上的价格普遍在5元左右。
    CP2102另外的优势在于,在实际使用时,外囤不用接任何其他元件即可稳定地工作,而且还有3.3V/100mA的电源输出,用在Arduino上时,完全不用再加5V转3.3V的DC-DC元件。

            
    Arduino官方却从没出过CP2102版本的方案。最近趁着比较空闲,我想到了做个CP2102版本qlArduino UNO控制板玩玩。Arduino UNO控制板是从网上买的,买回来对比了一下官方的PDF,发现这个版本是UNO最早的一版。由于是自己在家里用,并且几乎也没有使用大功率外围模块的可能,所以UNO的USB、外围电源切换方面的电路可以不用。简化掉这部分电路之后,可以发现Arduino的主板就是一块最小系统的AVR学习板。
    首先,先用USBASP给ATmega328写好Bootloader,然后将CP2102的TXD、RXD与ATmega328的RXD、TXD连接。在32位Windows 7系统下安装CP2102的最新驱动。打开Arduino的IDE程序,选好型号、虚拟端口后,往Arduino UNO上写例程时却发现总是编程出错,错误代码是“avrdude: stk500_getsync(): not in syncresp=Ox00”,见图2。这样的代鸸很抽象,从网上搜索,也给出一堆不同的提示,参考性不高。
    用Google搜索后,发现网上都在反映GP2102用在Arduino上出现的问题。主要是Arduino在编程时,需要有一个自动复位的过程,如果编程时不能复位,编程就会失败。

    目前流行的Arduino版本,如UNO、Mega2560、Duemilanove等,ESP18-24SN其USB口基本都采用了ATmega8U2、ATmega16U2、FT232RL等芯片,这几种芯片在网上的零售价大多在15~20元。而且,ATmega8U2、ATmega16U2等芯片由于是Atmel生产的较新的型号,也很难在本地买到。ATmega8U2、ATmeag16U2芯片在/Vduino控制板上,主要只是用作USB转UART,实在是大材小用了。新版的Leonardo已经省略了USB lC,直接用一片ATmega32U4实现了所有功能。
    CP2102是我之前一直用着的一个USB转UART芯片,Silicon出品。不论是实际使用还是网上的评论,这个片子的性能都非常让人满意。另外,这个芯片的价格与前面几种芯片相比,显得更加平易近人,网上的价格普遍在5元左右。
    CP2102另外的优势在于,在实际使用时,外囤不用接任何其他元件即可稳定地工作,而且还有3.3V/100mA的电源输出,用在Arduino上时,完全不用再加5V转3.3V的DC-DC元件。

            
    Arduino官方却从没出过CP2102版本的方案。最近趁着比较空闲,我想到了做个CP2102版本qlArduino UNO控制板玩玩。Arduino UNO控制板是从网上买的,买回来对比了一下官方的PDF,发现这个版本是UNO最早的一版。由于是自己在家里用,并且几乎也没有使用大功率外围模块的可能,所以UNO的USB、外围电源切换方面的电路可以不用。简化掉这部分电路之后,可以发现Arduino的主板就是一块最小系统的AVR学习板。
    首先,先用USBASP给ATmega328写好Bootloader,然后将CP2102的TXD、RXD与ATmega328的RXD、TXD连接。在32位Windows 7系统下安装CP2102的最新驱动。打开Arduino的IDE程序,选好型号、虚拟端口后,往Arduino UNO上写例程时却发现总是编程出错,错误代码是“avrdude: stk500_getsync(): not in syncresp=Ox00”,见图2。这样的代鸸很抽象,从网上搜索,也给出一堆不同的提示,参考性不高。
    用Google搜索后,发现网上都在反映GP2102用在Arduino上出现的问题。主要是Arduino在编程时,需要有一个自动复位的过程,如果编程时不能复位,编程就会失败。

相关技术资料
11-15Arduino cp2012版本
相关IC型号
ESP18-24SN
ESP100A
ESP101

热门点击

 

推荐技术资料

DS2202型示波器试用
    说起数字示波器,普源算是国内的老牌子了,FQP8N60... [详细]
版权所有:51dzw.COM
深圳服务热线:13751165337  13692101218
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!