原创 WINCE5.0下串口调试

2009-7-10 16:44 5676 6 5 分类: MCU/ 嵌入式

前一阶段参与一个项目,需要使用PDA的USB口与板子进行通信。把开发中遇到的几个问题总结以下:


USB-232芯片的选择:


考察了CP2102、PL2303、FT232RQ三款芯片,三款芯片都可将USB转成3.3V的UART,直接与单片机接口;都具有片内的LDO,支持从USB直接取电;外围电路都非常简单。对于片内LDO可提供的电流,CP2102最大可提供100mA,FT232RQ可提供50mA,对于PL2303手册仅在9.2.2一节指出3.3VI/O驱动能力是4mA,并没有给出LDO的驱动能力。


考虑到采购方便,选择了CP2102,结果忽略了驱动的问题。CP2102的驱动有两种USBXPRESS和VCOM,粗略看了一下USBXPRESS应该是向操作系统报告为一个USB设备,编程时应用软件像操作USB口一样对待CP2102;而对于VCOM的驱动是将CP2102虚拟成为系统的一个串口,应用程序只需操作串口即可。CP2102仅提供了PC机下几种操作系统的VCOM驱动,而在WINCE下仅提供了USBXPRESS的驱动,无奈应用程序开发人员使用的是串口,只好选用FT232RQ重新设计。


串口测试方法:


在硬件进行自环测试时,需要一个支持wince5.0的串口调试工具,费劲周折最终在CSDN上下到一个:


https://static.assets-stash.eet-china.com/album/old-resources/2009/7/10/b4d0a2b5-92d5-4f48-9840-5b07afb7c9c4.rar


在安装FTDI的驱动到PDA上时,除了按FTDI官方说明外,还需修改注册表


HKEY_LOCAL MACHINE\DRIVER\USB\CLIENT DEVICE\FTDI中的COM口编号(3处)
  一般驱动装完后默认为COM 10,一般修改为COM4或COM6可以被串口测试工具识别
修改完成后,重新插拔一下USB,在串口测试工具中可看到该COM口


还有一种方法是通过修改FTDI驱动文件的内容,可以实现系统默认端口号的修改,未加测试,详见FTDI的驱动说明文档。


一点遗留问题:


使用FT232RQ的板子与PC相连进行自环测试时(PC串口工具sscom32发一个字符,单片机收到后回送该字符),如果发送的HEX数恰好是ASCII码,比如61,则回送的字符会在此基础上多一个空格(HEX显示为FF);而用CP2102的板子就没有该现象(使用的串口工具相同),因急于交工没有进行更细致的研究,留待有心人细细探究吧。

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
EE直播间
更多
我要评论
0
6
关闭 站长推荐上一条 /3 下一条