射频芯片是整个RFID卡最核心的部分,直接关系到标签的读写距离和可靠性,同时也直接影响到整个系统的功耗。CC1100是Chipcon公司推出的单片UHF无线发射芯片,体积小,功耗低,数据速率支持1.2~500kbps的可编程控制,其工作电压范围为1.9~3.6V,可以工作在915MHz.、868MHz.、433MHz和315MHz四个波段,还可通过程序配置在所有频段提供-30~10 dBm输出功率内置地址解码器、先入先出堆栈区、调制处理器、时钟处理器、GFSK滤波器、低噪声放大器、频率合成器,功率放大器等功能模块。它具有两种低功耗工作模式:关机模式和空闲模式,在关机模式下工作电流小于200nA。本文中CC1100工作在433MHz的频率上,采用FSK调制方式,数据速率为100kbps,信道间隔为200kHz。
电路设计
为简化系统结构,本系统仅由必须的微处理器单元、射频收发单元、天线及电池单元组成。省去电池到器件之间的稳压电路,直接由电池给系统供电。节省了稳压电路所带来的静态电流消耗,使电池寿命进一步延长。为防止发射状态较大的电流造成电池电压瞬态降低,使用较大容量电容与电池并联。MSP430F2012内部集成的零功耗欠压复位(BOR)保护功能,可以在电压低于安全操作范围时执行完全复位,很好地解决了单片机复位不完全而产生的随机错误操作问题。
软件设计
尽量用软件来代替硬件也是低功耗系统设计常常采取的措施。本次程序开发综合考虑了时序调度和工作效率两方面问题,以降低系统的功耗。
合理设计工作时序
由于CPU的运行时间对系统的功耗影响极大,应尽可能缩短其工作时间,较长地处于空闲方式或掉电方式是软件设计降低单片机系统功耗的关键。程序运行流程图如图2(a)、(b)所示,当系统上电完成初始化操作即刻进入低功耗模式,只在系统接收到正确信息产生中断时才会唤醒单片机进入工作模式,尽量在短时间内完成对信息或数据的处理,当处理结束立即返回低功耗模式等待下一个中断到来。
提高工作效率
用宏定义来代替子程序调用。因为CPU进入子程序时,会首先将当前CPU寄存器推入堆栈(RAM),在离开时又将CPU寄存器弹出堆栈,这样至少带来两次对RAM的操作,所以读RAM会比读Flash带来更大的功耗。用宏定义来代替子程序调用,无疑会降低系统的功耗。
尽量减少CPU的运算量,将一些运算的结果预先算好,放在Flash中,用查表的方法替代实时的计算,减少CPU的运算工作量,可以有效降低CPU的功耗;不可避免的实时计算,精度够了就结束;尽量使用短的数据类型:如尽量使用字符型的8位数据替代16位的整型数据,尽量使用分数运算而避免浮点数运算等。
让I/O模块间歇运行,不用的I/O模块或间歇使用的I/O模块要及时关掉,以节省电能。不用的I/O引脚要设置成输出或设置成输入,用上拉电阻拉高。若引脚没有初始化,可能会增大单片机的漏电流。
结论
本文详细介绍了基于MSP430单片机的低功耗主动式RFID标签的设计,合理地利用了MSP430单片机的中断、定时、运算等功能,借助于软件优势,对耗能较低的CC1100 模块采取限能工作措施,提高了电池的寿命,增加了系统可靠运行的时间,与其它设计功耗对比如图3所示。这种主动式RFID标签的设计使 RFID 的性能得到了改进,它在很大程度上解决了远距离、大流量、抗干扰、高速移动的标识物的识别难题。本设计完成的RFID标签与配套的阅读器可以组成人员或物品识别定位系统,广泛应用于采矿、工业生产、道路交通、物流运输、医疗、医药、国防安全等众多领域。