一种便携式多参数环境监测仪的设计
·两个16位定时器A、B,均各带3个比较/捕获模块,每个模块可独立编程,用于产生定时脉冲,捕获外部事件;
·片内集成4×32段LCD液晶驱动器,其外部引线复用P3~P5口;
·通用通信模块UARST0,软件可选同步/异步方式;
·具有自动循环采集功能的8通道12位ADC12,自带采样保持器和可选电压基准;
·JTAG接口或片内BOOT ROM使程序下载调试极其简便,程序代码由安全熔丝保护。
图2 地址位多通信协议图
MSP430F437不需加装存储器,片内自带1K字节RAM及在线可擦除编程32K字节主Flash+256字节信息Flash。片内Flash模块包含3个控制寄存器、时序发生器、擦除/编程电压发生器及Flash存储器本身。其中主Flash分为每段512字节的段0~63,信息Flash分为每段128字节的段A、B。MSP430F437存储器可放大型数表,有高效的查表处理方法。本监测仪安排段0~23为程序代码区、段24为LCD显示字型表、段25~31存放校正和补偿表格、段32~63为用户采集数据保存区、段A+B存放各类参数。
在电路中,其他主要模块的功能分配为:16位定时器A的比较/捕获模块0实现实现时分秒计时,比较/捕获模块1控制A/D采样周期;16位定时器B可实现PWM输出,预留作控制口;ADC12用于环境参数测量;比较器A作电池欠压监测;复用P3~P5口驱动LCD液晶显示器;通用通信模块UARST0实现RS485串行通信;预留JTAG接口以方便用户对仪器更新升级。
2.2 测量转换
MSP430F437的ADC12转换模块具有高速通用的特点,12位的转换精度保证一般采样的分辨率要求。它的8个外部模拟采样通道可任意配置,转换参考电平VR+和VR-来自内部或外部,也可以是两者的组合;内嵌的采样/保持电路给用户提供了对采样时序的各种选择,采样时序可通过软件位、3种内部或外部信号来直接控制。ADC12有4种工作模式。可以在单通道上实现单次转换或多次转换,序列通道上实现单次转换或重单次转换或多次转换,在序列通道上实现单次转换或重复转换。对于序列通道转换,采样顺序完全由用户定义。
ADC12转换结果保存在16个转换存储寄存器ADC12MEM0~ADC12MEM15中。其值如(5)式:
NADC=4096×(Vin-VR-)/(VR+-VR-) (5)
每个存储寄存器有各自相应的控制寄存器ADC12CTL0~ADC12CTL15,可用软件独立配置采样通道号及转换所需参考电平。
本监测仪中,各环境参数传感器的输出经U2前置放大后,送入A0~A3模拟输入端。4路信号的转换参考电平均取VR+=2.5V和VR-=0V。ADC12工作模式设为序列通道单次转换,每次转换由定时器A比较/捕获模块1的定时输出OUT1启动。序列单次转换完成后,将置位ADC12中断请求。
序列通道为ADC12MEM0~ADC12MEM12,对应的控制寄存器ADC12CTL0~ADC12CTL12中通道重复配置A0~A3。这样等时间间隔内每个环境参数可连续采样3次,然后在ADC12中断服务程序内使用中值滤波得到转换结果。
需要指出的是,ADC12的转换内核与参考电平发生器可分别进入省电模式,为低功耗设计提供便利,而且进一步降低功耗、延长传感元件的使用寿命。测量电路的电源设置为单独可控,由U3的OUT2输出供给,并通过单片机的P2.0来切合。
2.3 键盘显示
MSP430F437有6个带复用功能的P1~P6双和同I/O口。其中P1、P2设置成输入时,引脚上任何状态变化都会触发中断。本设计将P3~P5复用于LCD驱动,P1.0~P1.4作3×2快速键盘。
为读取按键值,首先设置端口功能,P1.0~P1.2为输出口,依次输出低电平;P1.3、P1.4为输入口,开放中断,选定下降沿触发。当有键按下时,在P1口中断服务程序内,完成去抖动延时、键值读取等功能,得到的键值交后续程序处理。
《一种便携式多参数环境监测仪的设计(第2页)》