引言
当前市场上血糖仪种类繁多,外形结构千奇百态,而价格和精度却大相径庭;且价格和精度难以兼得。原因在于没有找到一款合适的微处理器。另外,出于屏幕尺寸的限制控制工程网版权所有,界面普遍采用英文字符显示,这给中国病人上带来一定的困惑。
随着电子技术的发展,微处理器功能日益增强,价格日趋降低。有必要选出一款功能强大而价格便宜的微处理器来重新设计血糖仪。本系统选用的MSP430系列微处理器使上述设想成为可能。
原理
血糖仪是根据电生物化学原理——施加一定电压于经酶反应后的血液产生的电流会随着血液中的血糖浓度的增加而增加——设计的。通过精确测量出这些微弱电流,并根据电流值和血糖浓度的关系,反算出相应的浓度。所以,确定这个关系是问题的核心。但其关系复杂,受多方面因素影响。电压强度、所使用的试条以及检测的血液量都会对其产生影响。理论上需要在所有浓度点上大量实验才能确定最终的关系。在实际操作中,只需在选择若干重要浓度点做大量实验,并确定其与电流值之间的关系。而相邻浓度点之间用简单的线性关系取代。图1是本设计总结出一定量电压下的关系曲线。
系统硬件设计
根据血糖仪功能的实际需求www.cechina.cn,结合MSP430系列单片机特点,采用型号为MSP430F435的单片机作为控制核心,其它模块还有电流检测、按键输入和电源、显示、扬声器及串口通信等。如图1所示。
图1 系统组成
MSP430F435单片机
本系统选用的单片机MSP430F435具有16Kb Flash存储器、512B RAM、多达160段LCD驱动器、8通道/12位ADC及大量的I/O端口等,完全满足本血糖仪的各项功能需求。
图2 微处理器的端口设置
主要端口设置如图2所示。其中COM0~COM3、S16~S39、R03~R33用于实现LCD显示; Port74和Port75用于串行通信;Port79~Port81为按键的输入端;Port76和Port77分别为运算放大器和RS-232芯片提供供电电压。Port78连接蜂鸣器;Port2和Port3为ADC输入;Port7参考电压输出;XOUT和XIN连接32KHz的晶振,这是系统的时钟源。
LCD显示
MSP430F435具有液晶驱动功能,最大能支持160段LCD,并且具有功耗低等特点。本系统采用中文界面的LCD显示,这也是本款血糖仪的一大特点。此LCD有96码段,内容丰富、功能强大。极大地方便了国内病人的使用。
血糖检测
从原理中已经知道,测量血糖时需要在相应的电极上施加一定的电压,而电压的稳定性将直接影响测量结果,因此,考虑从相对稳定的参考电压得到,而不是直接从供电电源中得到。
MSP430单片机A/D采样的是电压值,而被检测的是微量的电流值;因而也需要将电流值放大并转换成相应的电压值。采用如图3所示的电路就能实现这一要求。其中,电阻R用于放大。此外,过少的血液量也将造成结果偏差;所以有必要设计一个用于检测血液是否足量的简单电路。而此电路完全可以用与图3相同的电路来代替。因此采用两个这样的电路就可以实现血糖测量。
图3 放大电路
其它模块
本系统的供电电压为3V,采用两块电池。其中一块是主供电源;另一块为备用,以便设备在换电池时仍能正常工作。
按键采用三个,分别是左键、右键和OK键;OK键主要用于开、关机和确认等,左键用于数字减或选项左移等,而右键则与左键相反。
由于血糖仪中存有大量的测量结果,因此有必要增加串口通信功能,将这些结果上传到PC作进一步处理。而单片机本身就具有串行通信接口,只需将TTL电平转化为RS-232电平即可;这里采用SP3232芯片来实现这一功能。SP3232芯片所需的供电电压低,适合便携式设备应用。其外围电路的连接简单,仅需几个0.1μF的电容即可。
系统软件设计
系统软件采用C语言编写。其主程序框架如图4所示。
图4 主程序框图
对于便携式设备,电池寿命至关重要;设计时应尽量降低功耗,使系统尽可能长时间停留在低功耗状态。因此,考虑设备在适当的时候自动关机。这里采用了一个定时器。当定时器大于0时控制工程网版权所有,系统处于开机状态;当定时器倒数到0时,系统自动关机。这个定时器是由单片机中的BasIC Timer实现的。通过软件对Basic Timer控制寄存器进行设置,将信号源设为辅助时钟CONTROL ENGINEERING China版权所有,大小为32KHz,并进行256分频,再对中断定时间隔控制位进行设置,使得中断每秒进行一次控制工程网版权所有,并且每次到来时都对定时器减1,这样就实现了定时器每秒减1的功能。具体操作是这样:开机时,对定时器初始化一个大于0的值,比如30,并且在每按一次有效键时,系统重新