ZigBee On Windows Mobile--3.模拟器和实物调试
继续前两篇” ZigBee On Windows Mobile--1.背景和结构”和” ZigBee On Windows Mobile--2.硬件和软件设计”,这次来讲最后一部分,模拟器和实物调试。
实物调试相对于模拟器调试来说,要简单一点。例如,HP iPaq rx3700系列的PDA,是带串口的,只要配上一根串口线,就可以和外设进行串口通信。如下图1所示,HP iPaq rx3700通过黑色的串口转接线和ZigBee模块相连,右边的ZigBee模块通过电池供电,那样就可以进行调试了。
图1. 实物调试图
模拟器调试相对比较复杂一点,在开始这部分的讲述之前,先说说好多朋友问的一个问题,那就是”模拟器到底有多大作用?我可以在模拟器上流畅地跑应用程序么?”对于这个问题,我个人觉得,就目前来讲,模拟器的功能越来越强大,可以做的事情也越来越多,特别是WM6.0的模拟器,其中一个很大的亮点就在于”Cellular Emulator”和”Fake GPS”的引入,我们可以在没有蜂窝电话和GPS硬件支持的情况下,模拟它们的行为,方便了我们应用程序的调试。
回归我们的话题,讲讲我们这个项目如何在模拟器上来调试。由于Windows Mobile设备和ZigBee模块之间通过串口进行通信,因此,如果我们有办法利用模拟器的串口来调试的话,那样就会方便很多,甚至可以不用一个硬件,在Windows Mobile模拟器上测试我们的应用程序。那么,有这样的方法么?答案是,将Windows Mobile模拟器的串口映射到PC的物理串口设备。如果你的PC机没有串口,那么只能搞个USB转串口的小玩意儿了。如果你的PC机连USB接口也没有,那么,PCI卡槽应该有吧,也可以买个PCI转串口的东东。具体将Windows Mobile模拟器的串口映射到PC的物理串口设备的步骤如下:
1.打开你的模拟器。
2.点击"File"->"Configure"。
3.在"Peripherals"选项卡中进行设置。例如,我要把模拟器的串口0映射到PC机的串口1上,就可以在"Serial port 0"下,选择"COM1".如图2所示.
图2 .模拟器串口映射设置
4.点击"OK"。然后Reset模拟器就可以了。
最好我们调试的PC机有两个串口,将两个串口用交叉线连起来之后,就可以模拟串口通信了。注意是交叉线,而非直连线。所谓交叉线,直白地将就是将串口的2脚和3脚交叉了,也就是将串口1的"发"和串口2的"收"相连,将串口1的"收"和串口2的"发"相连,这样就实现了串口1和串口2的"收发"正常通信。比如将Windows Mobile模拟器的串口映射到PC机的物理串口1,再用串口调试助手或者Windows自带的超级终端控制PC机物理串口2,这样就可以模拟串口通信了。如图3所示。
图3.利用超级终端进行串口调试
好了,至此为止,ZigBee On Windows Mobile就到这里结束,希望能够给园子里的朋友或者有需求的朋友带来一点帮助和启发。有不对的地方,也请指出来,大家相互交流,相互提高。