1 引言
这里介绍一种多功能实时生理参数监测仪的设计方法,该监测仪具有廉价、实用、便携,并有语音播报测量值及越限报警等多种功能。
2 总体结构与工作原理
该监测仪以凌阳16位单片机SPCE061A为控制核心,通过温度传感器、水银开关、压电陶瓷片获得人体温度、跑步者的步数及脉搏跳动情况,再由CPU实时计算测量值并将结果送至液晶显示器显示,同时进行语音播报。系统设有键盘、人工复位和自动上电复位及硬件看门狗电路。SPCE061A内部带有硬件乘法器功能,可方便地实现测量数据的记录、计算和语音播报功能。系统总体结构框图如图1所示。
3 硬件电路设计
3.1 体温测量模块
温度传感器采用DALLAS的DS18B20,该器件无需外部元件,通过数据线供电即可提供最高12位的温度读数,器件的温度信息经单线接口送入DS18B20或从DS18B20送出,从CPU到DS18B20仅需连接1条线。读、写和完成温度变换所需的电源由数据线本身提供,测量范围为-55℃~+125℃,增量值为0.
0625(以12位数值方式读出温度),在1s(典型值)内把温度变换为数字,具有用户可定义的非易失性温度告警设置。输出的温度数值由单片机的IOA15口读入,如图2所示。
经单线接口访问DS18B20的协议如下:
(1)初始化单线总线上的所有处理均从初始化序列开始。初始化序列包括:总线主机发出一个复位脉冲,接着从属器件送出存在脉冲,程序清单见初始化DS18B20子程序inTInit_1820(void)。
(2)ROM操作命令一旦总线主机检测到从属器件便可发出,ROM操作命令,ROM操作命令均为8位长,程序见读DS18B20子程序unsignedintRead_1820_Byte(void)和写DS18B20子程序voidWrite_1820_Byte(unsignedintData)。
(3)存储器操作命令程序清单见读DS18B20子程序unsignedintRead_1820_Byte(void)和写DS18B20子程序voidWrite_1820_Byte(unsignedintData)。
(4)处理数据程序清单见温度转换子程序voidRead_Temp(unsignedint*Data)。温度测量程序如下: