CF5213和射频通信模块中MC13192的接口电路与终端节点的MCU和MC13192的接口电路类似,只需将通用I/O端口做相应的修改即可,在此不再细述。
4.3 射频电路
射频芯片MC13192的支撑电路包括电源电路,滤波电路和晶振电路,其逻辑连接如图5。VBATT和VDDINT是电源输入引脚,MC13192的正常工作电压为2.0-3.6V。VDDA,VDDLO1和VDDLO2为经过整流的模拟电压。VDD为经过内部整流的数字电压。VDDVCO为VCO电路供电。XTAL1和XTAL2外接16MHz的专用于2.4GHz射频电路的晶振。
5 软件结构
如图6所示,软件设计分为三层:系统平台层、协议层和应用层,为此定义了3个API接口:HW-API、SYS-API和PS-API。HW-API定义了硬件的寄存器映射,这样就能通过直接访问硬件寄存器来控制硬件。系统平台层通过SYS-API接口来给协议层提供服务。应用层通过PS-API来调用协议层提供的服务。
系统平台层建立在μC/OS-II实时操作系统上,为协议层提供系统服务。一般来说,由于ZigBee网络终端节点要求很强的成本控制,可以不使用RTOS。而对于网络协调者,由于协议本身的复杂性增加,而且微控制器有足够的性能来支持RTOS,需要使用RTOS 。虽然终端设备可以无RTOS工作,但考虑到GT60有足够丰富的资源,为了设计的统一性,避免在两个平台切换,本方案中统一使用了免费的RTOS μC/OS-II。μC/OS-II是一个完整的,可移植、固化、裁剪的占先式实时多任务内核,在V2.52版本之前,是免费的(非商业用途)且源代码公开,提供了实时系统的基本功能。
系统平台层本身又分为二个模块:DBM和HWD。DBM主要实现一个基于FLASH的小型数据库,用来存储IEEE 802.15.4的PHY层、MAC层和ZigBee的NWK层的属性数据。HWD模块提供硬件驱动程序,包括了MCU的寄存器访问接口、 MCU和MC13192的SPI通信以及MC13192的驱动,所有对硬件的控制都通过该模块提供的服务。
协议层则实现了基于802.15.4的物理层和链路层以及基于ZigBee的网络层协议。应用层通过PS-API来调用协议层提供的服务,实现网络的管理和数据传输等任务。应用配置模块既会调用协议层提供的网络服务,也会直接对系统进行配置和查询,该模块会调用PS-API和SYS-API提供的服务。
6 结束语
本文选择IEEE 工作组为低速个人无线网制定的802.15.4为切入点,配合ZigBee的网络层规范,构建无线传感器网络。本文作者的创新点在于采用Freescale公司新推出的ZigBee芯片MC13192和超低功耗控制器MC9S98GT60、CF5213,实现了硬件和软件的一体化设计,为进行无线传感器网络的研究提供一个良好的起点。实验表明,该方案具有良好的可靠性和通信速率,同时,良好的性能价格结合点使其具有广阔的市场推广前景。