目前,Windows Mobile设备的体积越来越小巧,带串口的设备工业用的比较多,而民用的较少。带CF卡接口的Windows Mobile设备还是有的,但是也在逐渐退出市场的舞台,取而代之的是更加小巧的SD卡,miniSD卡等等。
前面的3篇文章讲述了如何在Windows Mobile设备上实现ZigBee方案,即Windows Mobile设备通过串口和ZigBee模块进行通信。但是,目前带DB9接口(一种串口的物理接口)的Windows Mobile设备太少了。CF卡接口的用途可以有两个,即Storage和IO。通常我们用的CF卡,就是作为Storage来用的;但是,CF卡接口也可以作为IO来用的。那么,我们的目的就很明确了,就是将CF卡接口作为IO,映射出一个串口,那样不就可以和我们的ZigBee模块进行通信了嘛。
CF卡接口转串口可以使用芯片来实现,那样的话,就需要自己画板子,调试,比较麻烦。目前,市场已经有现成的CF卡接口转串口设备可以买到。同样,CF卡接口的GPS设备也有,其实原理都是一样的,GPS也是周期性的将信息通过串口发出来。这两种设备的样品如下图1所示。
图1:CF转串口和CF接口GPS设备示意图
那么,通信的问题解决了,电源问题如何解决呢?因为我们的ZigBee模块也是要供电才能工作的。参考CF接口规范http://zhidao.baidu.com/question/51808984.html,原来CF卡接口也是提供了电源和地的。所以,我们只要使用CF卡接口提供的+5V电源就可以了。CF卡接口的插针如下图所示:
图2:CF卡接口插针
知道了接口规范,我们只要用万用表验证一下就可以了。这样,我们的ZigBee模块就可以通过CF卡接口来和Windows Mobile设备通信了,还解决了供电的问题,一举两得啊!
从应用程序员的角度来说,一般CF卡转串口的设备,我们不需要自己来编写驱动程序,它会自动映射成一个串口,提供我们用户使用。比如,当我们插入CF转串口卡到PDA的时候,我们可以发现一个新的串口1,当我们拔出CF转串口卡的时候,这个串口1又消失了。所以,我们编写应用程序的时候,也是非常灵活的,就像操作本地的串口一样方便。另外一个重要的特性就是,当用户close这个串口的时候,CF卡接口供电就会消失,这样就节省了Windows Mobile设备的电量。
好了,利用CF卡接口外扩这部分就写到这里,希望对大家有所帮助。Enjoy!
本文转自施炯博客园博客,原文链接:http://www.cnblogs.com/dearsj001/archive/2008/10/17/1313822.html,如需转载请自行联系原作者