WINCE下可以通过一个USB TO RS232转换器来实现USB转RS232,也即WINCE设备的USB host接USB TO RS232转换器的USB端,而USB TO RS232转换器的RS232端可以接PC机的RS232接口,或者可以接其他设备的RS232接口,这样WINCE设备和PC端就可以通过以串口的形式来相互通讯了,因为我们的系统采用的是USB TO RS232转换器,要实现这个功能能,我们需要做下面的工作。
1. 支持WICNE的USB TO RS232转换器应该有很多种,而且驱动应该是不能共用的,所以我们需要根据项目需要来选择USB TO RS232转换器,选定之后,就要找到卖USB TO RS232转换器的公司提供的WINCE下的驱动,在此我们采用的USB TO RS232转换器是ATC-810,对应的驱动是ftdi_ser.dll。
2. 把ftdi_ser.dll驱动拷贝到BSP包的files文件夹下面。
3. 在platform.bib下加入下面的内容
对于WINCE5.0系统,加入下面的内容
ftdi_ser.dll $(_FLATRELEASEDIR)/ftdi_ser.dll NK SH
对于WINCE6.0系统,加入下面的内容
ftdi_ser.dll $(_FLATRELEASEDIR)/ftdi_ser.dll NK SHK
4. 在platform.reg下加入如下注册表信息
;;;;;;;;;;;;;add for usb to rs232;;;;;;;;;;;;;;;;;;;;;;;
[HKEY_LOCAL_MACHINE/Drivers/USB/ClientDrivers/FTDI_DEVICE]
"Prefix"="COM"
"Dll"="ftdi_ser.dll"
"ConfigData"=hex:/
01,00,3f,3f,10,27,88,13,c4,09,e2,04,71,02,38,41,9c,80,4e,c0,34,00,1a,00,0d,/
00,06,40,03,80,00,00,d0,80
;"InitialIndex"=dword:00000000 ;这个是厂家提供的注册表的值,我改为9,就是COM9
"InitialIndex"=dword:00000009
"DeviceArrayIndex"=dword:00000000
"LatencyTimer"=dword:00000010
;"LatencyTimer"=dword:00000000
[HKEY_LOCAL_MACHINE/Drivers/USB/LoadClients/1027_24577/Default/Default/FTDI_DEVICE]
"DLL"="ftdi_ser.dll"
[HKEY_LOCAL_MACHINE/Drivers/USB/LoadClients/Default/Default/255/FTDI_DEVICE]
"DLL"="ftdi_ser.dll"
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/chinesedragon2010/archive/2010/09/11/5877114.aspx