当前位置:首页 >> 解密信息 >> 技术文档

基于MSP430F449的无线手持终端的设计方案

时间:2012-02-21 11:41:21

  摘要: 为了实现嵌入式手持终端系统的功耗低、体积小、性能稳定的需求,以TI 公司的MSP430F449 的16 位低功耗微控制器为中央处理单元,Semtech 公司的SX1233 为射频收发单元,设计了一种能广泛应用于餐饮、物流、无线抄表等领域的低成本、超低功耗的无线手持终端设备。分析了系统的功耗和编程特点,给出了系统软件的设计方案。实测结果表明,所设计的无线手持终端设备性能稳定、灵活可调,达到了设计要求。

  随着计算机技术、无线通信技术的发展,手持终端设备在物流、酒店服务、无线抄表等领域得到了广泛应用。无线传感器网络技术是当前在国际上备受关注的, 涉及多学科、高度交叉、知识高度集成的前沿热点研究领域。传感器技术、微计算机技术、现代网络和无线通信技术的进步,推动了现代无线传感器网络的产生和发展。无线传感器网络扩展了人们信息获取能力,将客观世界的物理信息同传输网络连接在一起,在下一代网络中将为人们提供最直接、最有效、最真实的信息。无线传感器网络能够获取客观物理信息,具有十分广阔的应用前景,能应用于军事国防、工农业控制、城市管理、生物医疗、环境监测、抢险救灾、危险区域远程控制等领域。

  无线通信是手持终端的主要功能之一,考虑到手持终端设备还需要带有显示器和键盘等人机界面以及采用电池供电等因素,体积、功耗以及性能的稳定成为手持终端设备设计的主要难点。

  文中根据无线传感器网络具有成本低、能耗小、组网灵活,等多种优势,以及手持终端设备对设备体积、功耗等方面的技术要求,设计了一种低功耗、结构紧凑,具有无线传感器网络特性的手持终端,用于餐馆点菜系统。由于可通过无线通信接口实现程序升级,所设计的产品可广泛应用于餐馆点菜、无线抄表、工业监控等领域。

  1 硬件设计

  系统框图如图1 所示。它主要由MCU 控制单元、射频收发单元、按键及LCD 显示单元、电源管理单元构成。

图1 系统组成框图

图1 系统组成框图

  1.1 MCU 单元

  MSP430F449 是IT 公司推出的一种超低功耗单片机,它的主要特点有:

  1)超低功耗:其电源电压采用1.8~3.6 V,待机电流小于1 μA,在RAM 数据保持方式时耗电仅0.1 ΜA,在活动模式时耗电250 μA/MIPS(MIPS:每秒百万条指令数),I/O 输入输出口的漏电流最大为50 nA.MSP430F449 有独特的时钟系统设计, 包括2 个不同的时钟系统: 基本时钟系统和锁相环(FLL 和FLL+)时钟系统或DCO 数字振荡器时钟系统。由时钟系统产生CPU 和各功能模块所需的时钟,这些时钟可以在指令的控制下打开或关闭,从而实现对总体功耗的控制。由于系统运行时使用的功能模块不同, 即采用不同的工作模式,芯片的功耗有明显的差异。在系统中有1 种活动模式和5种低功耗模式。另外它采用矢量中断,支持多个中断源,并可以任意嵌套。用中断请求将CPU 唤醒最短只要1 μs,通过合理编程,既可以系统功耗,又可以对外部事件请求作出快速响应。

  2)强大的处理能力:MSP430F449 是16 位单片机,采用了目前流行的精简指令集(RISC)结构,1 个时钟周期可以执行1 指令。同时它还采用了16 位多功能硬件乘法器等一系列先进的体系结构。

  3)高性能模拟技术及丰富的片上外围模块:MSP430F449组合了功能模块:12 位ADC、比较器、LCD 驱动器、电源电压监控(SVS)、串行通信(UART/SPI)硬件乘法器(MPY)温度传感器、看门狗计时器(WDT)、多个16 位定时器等。

  4)系统工作稳定:上电复位后,首先由DCO_CLK 启动CPU(数字控制振荡器DCO 是单片机内置的),以保证程序从正确的位置开始执行,保证外接的晶振有足够的起振和稳定时间。然后通过软件设置适当的寄存器的控制为来确定最后的系统时钟频率。如果晶体振荡器在用作CPU 时钟MCLK时发生故障,DCO 会自动启动,以保证系统正常工作。

  MCU 是手持终端系统的核心,在无事件发生的情况下工作于LPM3 低功耗状态,当有按键按下或有无线数据接收时,MCU 可响应并退出LPM3 状态进入活动工作状态。

  MSP430F449 功能丰富,编程方式灵活,完全可满足手持终端的设计要求。

  1.2 无线收发单元

  SX1233 是Semtech 公司推出的一款超低功耗的可编程ISM 频段收发器,拥有全球最高的码率(600 kbps)以及世界级的链路预算(137 kB)、超低功耗、出色的ACR(邻道抑制)以及抗阻塞能力。SX1233 提供高接收(RX)灵敏度,增强了对弱信号的接收能力, 而且能够以1 dB 步长编程的发射机(TX)输出功率[4].高RX 灵敏度与TX 输出功率相当于获得了更长距离上的可靠传输, 这与需要RF 中继器的传统射频系统相比,节省了成本。

  SX1233 具备发射、接收和睡眠模式下的低功耗,从而延长了电池寿命。由于在1.8~3.6 V 工作范围内有恒定的RF 性能,即使不用稳压器,在电池寿命快要终止时也能保证稳定的通信[5].另外,采用True RFTM 技术,无需使用SAW 滤波器,在获得低成本外接元件数的同时, 仍能满足ETSI 与FCC 的规定。SX1233 还集成了VCO 储能器、PLL 环滤波器以及一个RF 开关,进一步减少了总物料数。

  SX1233 中集成的封包引擎可卸除微控制器的RF 封包工作,从而解放出微控制器的资源,或者让设计者选择一种成本更低或功耗更低的替代方案。封包引擎还可通过CRC错误检查、AES-128 加密和一个66 字节的FIFO,提供数据包的传输安全性。

  SX1233 的频率范围为290~1 020 MHz,已通过全球规范的认证,包括欧盟(ETSI EN 300-220-1)、北美(FCC part 15),以及韩国和日本的ARIB 监管标准。它还支持全球的调制格式(FSK、GFSK、MSK、GMSK、OOK)。

  为了防止射频干扰,无线收发单元采用射频板材单独制版, 并用金属罩对其进行屏蔽, 通过10×2 连接器与主板相连。如图2 所示,因为单片机的P1 口和P2 口能够接受外部上升沿或下降沿的中断输入,所以DIO0-DIO5 分别与单片机的P2.0-P2.5 连接,便于数据收发过程中的状态检测。SPI 口连接单片机的P3.0-P3.3,将单片机的USART0 设置为SPI 工作模式,单片机通过该SPI 口对SX1233 进行参数配置、控制和数据收发。RESET 和RXTX 脚分别接P3.4 和P3.5.

图2 射频收发单元电路图

图2 射频收发单元电路图

  在手持终端的设计中,SX1233 的可设置参数包括频段、发射功率、数据传输速率, 这些参数存放在MCU 的FLASH存储器中,即使发生掉电情况也不会丢失,用户可根据需要进行设置。其余参数不可改变。

  1.3 键盘和LCD 显示单元

  键盘包括开关键、功能键、数字加一键、光标移动键。4 键接MCU 的P1.0-P1.3 口, 由于P1 口能够接受外部上升沿或下降沿中断[6],因此可采用中断式按键编程方式,有助于节省功耗。

  LCD 为定制的段式液晶,MSP430F449 内有LCD 驱动模块,因此既节省了成本也减小了体积。它的LCD 驱动模块最大显示段数为40×4=160 段,能够直接显存读写,控制显示,自动产生液晶驱动信号, 支持4 种LCD(static,2mux,3mux,4mux),并支持闪烁功能[7].

  1.4 电源管理单元

  手持终端采用3.6 V 锂电池供电, 由于所采用的MCU、无线收发模块、LCD 均为3.3 V 供电器件,因此可直接使用电池电源。MCU 采用基本定时器1 分钟定时检测电源电压,当电池电压低于3.0 V 时主动报警。检测的方法是将电源电压分压一半送入P6.3 口, 采用MCU 内部产生的2.5 V 参考电平, 利用MCU 内部的AD 转换器实现A/D 转换即可计算出实际电源电压的大小。

  2 软件设计

  软件的开发环境为IAR Embedded Workbench, 使用C430 语言。系统的无线通信部分采用标准MODBUS 协议,为点对多点的通信方式。主机由设在厨房的基站组成,从机为手持终端,每一个手持终端都拥有一个唯一的地址,工作方式为主站轮询,从站监听的方式。系统软件的主要流程如图3所示。

图3 系统程序框图

图3 系统程序框图

  无事件发生时,MCU 进入LPM3 低功耗模式,SX1233 进入Sleep 模式。当服务员使用按键记录客人点菜时,MCU 被激活。菜单数据存放在MCU 的FLASH 存储器中,记录客人点菜时只需将菜名序号存放即可, 点菜完成后MCU 重新进入LPM3 低功耗模式。

  当SX1233 被唤醒时,会从Sleep 状态中进入接收工作状态并触发MCU 退出LPM3 模式, 当发现通信地址非本机地址时立即中断接收,SX1233 重新进入Sleep 状态,MCU 进入LPM3 模式。否则,完成数据帧的接收工作,并根据协议执行相应的程序,返回响应代码后,SX1233 回到Sleep 状态,MCU进入LPM3 低功耗模式。

  2.1 MCU 编程要点

  IO 口配置: MSP430 的多数IO 口都有2 种或以上的功能,每个IO 位都可以独立编程,因此初始化时要对IO 口进行配置。

  LPM3 低功耗模式: MSP430F449 有5 种低功耗模式,即LPM0-LPM4.本系统设计在没有按键和数据收发的工作状态下工作在LPM3 模式,耗电仅为0.9 μA.此时CPU 处于禁止状态,DCO 被禁止, 直流发生器被禁止,MCLK 和SCLK 被禁止,只有低速时钟ACLK(32 768 Hz)活动[3].因此当按键或无线侦听激活MCU 时,程序应立刻从LPM3 模式中退出。

  MCU 的FLASH 存储区分配: MSP430F449 不同于传统的51 单片机, 其存储器为冯·诺依曼结构, 其FLASH 区有60KB+256B.本系统地址分配如下:

  SX1233 配置参数            0X1000-0X107F

  MOBUS 通信协议配置参数0X1080-0X10FF

  用户参数(菜单等)          0X1100-0X1FFF

  用户程序区                      0X2000-0X6FFF

  升级程序区                      0XE000-0XFDFF

  2.2 SX1233 编程要点

  SX1233 可工作于较宽的频率范围,本系统采用433 MHz免许可证频段。考虑到点菜系统对通信实时性要求不高,收发器休眠时侦听的占空比可尽量降低, 这样有利于节省用电。SX1233 的发射功率可调,不同的用户可根据实际需要进行设置。为减小MCU 负担,系统采用包(Packet)模式工作。

  3 结束语

  文中介绍的无线手持终端,硬件结构简单,成本低,技术开发成熟、功耗低,性价比高。实验结果表明,当发射功率设置为10 dB 时,在楼宇内的有效收发距离为80 m 左右,误包率低于1%,完全能满足中小型餐馆的使用要求。由于系统程序具有升级功能,因此经过适当的改动就可适用于其他应用场合,例如工业监控等。因此,该方案有较大的推广价值和广阔的市场前景。

解密技术
解密问题
芯片解密