为了延长电池使用寿命,使系统不工作的时候处于休眠模式。CC2430采取定时唤醒的工作方式,由SP12的WAKE UP引脚输出定时信号,周期为6 s,送至MCU的键盘中断输入端, 将MCU从睡眠状态唤醒。当CC2430检测到唤醒命令时被激活,它的寄存器状态发生变化,CC2430进入工作模式。首先检测汽车的加速度,若加速度小于一个设定的范围则表明汽车处于停止状态,MCU重新进入睡眠状态。若加速度大于某个设定的范围则汽车已经在运行状态,传感器SP12采集温度压力数据,采用阈值比较法,把当前获得的数值与寄存器中的报警阈值进行比较,若超出阈值范围,说明数据异常,向主机提示进行报警;数据正常时,再判断定时发送数据的时间,如果定时时间没有到就进入休眠;定时时间到,就进行组帧、编码,把数据包发送到主机。发送成功后, CC2430重新进入休眠状态。再判断定时发送数据的时间,如果定时时间没有到就进入休眠;定时时间到,就进行组帧、编码,把数据包发送到主机。发送成功后,CC2430重新进入休眠状态,等待下一次被唤醒。正常时定时唤醒和异常时实时唤醒的结合使整个设计符合低功耗要求,又能保证系统的可靠性。
3.2 接收模块的软件设计 接收模块的程序流程图如图5所示。
上电运行后,初始化接收器的CC2430芯片,配置相关寄存器,主机进入等待数据状态。接收到一个数据帧后,主机将接收到的数据包中的信息与E2PROM中的信息进行对比,判断是哪个轮胎的数据,经过CRC校验和轮胎ID判断无误后,送液晶模块显示出当前值。当检测到温度、压力值偏离正常值时进行报警,提醒驾驶员注意。
无线传感器网络节点要进行相互的数据交流就要有相应的无线网络协议。本文中主机和从机基于ZigBee通信协议进行模块间的无线通信。
发射模块以数据帧的形式发送数据,通过发送数据帧的前导位唤醒接收模块,随后发送数据帧,数据帧格式如表1所示。
本文主要介绍了基于ZigBee的胎压监测系统的硬件设计与软件实现。ZigBee技术弥补了低成本、低功耗和低速率无线通信市场的空缺,利用ZigBee技术的低功率、低复杂度、组网灵活的特点满足了胎压监测系统的具体要求,实现了实时监测轮胎内部状态和异常报警的功能。本设计方案较好地解决了系统低功耗、高可靠性的问题,市场前景十分广阔。