1 引言 在科学技术与社会生产高度发达的今天,智能测试仪器与仪器仪表系统发展迅速,被测对象的跨度既广泛又具有多样性。计算机技术的迅猛发展使仪器仪表的发展上了一个新台阶,传统的检测设备被智能化仪器所取代。智能化仪表的两个主要的发展方向是大型自动测试系统和便携式低功耗智能仪表,功率问题也就成为电路设计所需考虑的重要因素之一。在本文中,我将提出一种基于MSP430的通用型低功耗仪表系统的设计方案。该低功耗系统与不同的传感器相结合,能够实现数据的采集与处理,并具备键盘输入与LCD显示功能,能适合各种工作场合。 2 低功耗仪表系统硬件设计 2.1硬件系统总体设计 本仪表系中选用的是MSP430芯片。MSP430系列是一款具有精简指令集的16位超低功耗混合型单片机。它包含冯诺依曼结构寻址方式(MAB)和数据存储方式(MDB)的灵活时钟系统,由于含有一个标准的地址映射和数字模拟外围接口的CPU,MSP430为混合信号应用需求提供了解决方案。 MSP430系列的主要特征有:超低能耗的体系结构大大延长了电池寿命;适用于精密测量的理想高性能模拟特性;16位RISC CPU为每一时间片处理的代码段容量提供新的特性,系统可编程的Flash存储器可以反复擦写代码、分块擦写和数据载入。图3-1给出了电能表的硬件框图: ![](http://www.zwmcu.com/Pics/Articles/2009-7-13162942203.JPG) 图1 系统硬件框图
图1中的硬件按功能可分为数据采集、放大与滤波、单片机、键盘、LCD显示、时钟电路、数据存储、DAC、报警、看门狗电路、RS485通信和电源管理等功能模块。 2.2 模块设计 2.2.1电源模块设计 在整个系统中,我用到了±5V、±12V, 2.5V, 3V。对于±5V和±12V这两组电压是采用专门的电源模块来供电的。由于MSP430型单片机是低功耗的单片机,采用3V供电,要用专用的电源模块来对单片机进行供电。单片机的供电模块是德州仪器公司的TPS76301,这个电源模块是表面贴片式的,输出电压连续可调,可以输出1.6-5.0V的电压。只有5个管脚。它可以提供l50mA的电流,输出电压的应用电路如图2所示。 ![](http://www.zwmcu.com/Pics/Articles/2009-7-13163013906.JPG) 图2 TPS76301的应用电路
电阻R1和R2上的电流必须是7μA左右。再低一点的电阻也可以用,但是浪费了功率,太高的电阻也不能用,因为这样会引起FB端的泄漏电流增加和引起电压错误。推荐的电阻值就是选择R2=169KΩ,并且让流过R1和R2电阻的电流为7μA左右,由下式计算R1: 一些电阻和输出电压的典型值如表1所示: 表1 工输出电压和电阻的典型值
![](http://www.zwmcu.com/Pics/Articles/2009-7-13163041437.JPG) 2.2.2 放大与滤波模块 我在该低功耗系统的输入通道中采用的前置放大器是TI公司的OPA349。输入通道电路如图3所示,该电路除了放大功能,还能具有滤波功能,消除无关的交流分量。 ![](http://www.zwmcu.com/Pics/Articles/2009-7-13163118937.JPG) 图3 放大与滤波电路图
2.2.3 RS-485通讯电路 通讯模块是本系统的一个重要组成部分梁。控制器通过通讯模块实现历史运行数据及有关信息的上传和基本参数、控制命令等的接收,设计一个较成功的通信电路将直接影响到控制器的调试、功能发挥及其通用性。 ![](http://www.zwmcu.com/Pics/Articles/2009-7-13163153968.jpg) 图4 RS-485串行通讯
图4为RS-485通讯接口电路,单片机与上位机之间的数据传送经过RS485收发器NAX485,由单片机的USARTI发送和接收。通讯方式为半双工,由单片机的P3.5口控制数据发送和接收。为了提高数据传输的抗干扰性,RS-485为+5V单独供电,采用高速光耦与其他电源完全隔离,不共地。由于传输线较长而且现场可能有电磁干扰,所以在传输线上并联瞬变电压抑制器TVSC,串联熔断器,并且传输线使用带屏蔽层的电缆。 另外还有时钟电路模块, A/D转换模块, LCD显示接口设计, 键盘接口模块, 存储扩展模块就不详细介绍。 ![](http://www.zwmcu.com/Pics/Articles/2009-7-13163222125.jpg) 图5智能终端主程序流程图
3 低功耗系统软件部分设计 单片机应用系统的软件设计和一般的程序设计不同,既有各种计算程序、控制策略程序的设计,还要结合具体的硬件电路进行各种输入输出程序设计。本仪表系统软件采用模块化结构设计,将各功能模块设计为独立的编程调试程序块,这样有利于今后实现功能扩展,而且便于调试和连接,更有利于程序的移植和修改。 本系统的软件设计使用的是适用于MSP430系列的C语言,这种C语言与标准C语言兼容程度很高。开发平台使用的是IAR公司专为MSP430系列提供的集成调试环境Embedded Workbench和C语言调试器C-SPY。 3.1 基于时间触发的混合式调度介绍 调度器就像是一个简单的操作系统,可以周期的或单次的调用任务。实际上,调度器就是一个许多不同任务共享的定时中断服务程序,只要初始化一个定时器,就可以调度多个任务。任务的特征分为4部分:任务函数的指针,延迟时间,任务执行周期和任务可否执行标记。调度器通过定时器产生一定的时间间隔,根据任务可否执行标记来判断并调度要执行的任务。 本通用智能终端中,任务AD转换、开关量采集、LCD显示、输出控制等是合作式任务,按照延迟时间和周期来顺序执行;键盘扫描分解成短任务处理;485通信为中断式任务,执行上位机命令任务,实际上大部分命令任务都是根据命令要求,改变某些变量或寄存器的内容,执行速度很快,可以每来一次命令执行一次,属于单次任务。由系统任务和调度器设计原则,给出调度器任务的属性列表如表2所示。 表2 任务属性表
![](http://www.zwmcu.com/Pics/Articles/2009-7-13163249296.jpg) 3.2 主程序设计 本设计采用时间触发的混合式调度器系统,调度器根据任务的执行周期和延迟时间来顺序调度并执行任务,保证一次只处理一个事件,降低了CPU的负荷,减少了存储器的使用量,从而增强了系统的可靠性和扩展性,并使得系统低功耗设计易于实现。系统主程序主要包括系统初始化子程序和任务函数调度子程序。系统主程序流程如图5所示 4 总结 通过对影响系统功耗的各种因素的分析,确定了要从硬件选择和软件设计两方面同时考虑、软硬结合来最大限度的降低功耗。本文研究的多用途低功耗仪表系统, 可作为我国的水表、燃气表、热量表、电能表以及各种检测仪、监控器等急需电子智能化的实现方案。 本文作者创新点: 本文以降低功耗作为主要目标,所研究的多用途低功耗仪表系统,是便携式、低功耗设备的一个比较具体的通用型实现方案。只要根据实际需要加上相应的传感器和修改一下具体软件,该系统能够方便的应用于需要电池供电的多种检测设备。 |