冷链温度记录仪由温度传感器、微控制器和数据存储器组成。温度传感器STTS75、微控制器 STM8L101F3和数据存储器M24LR64都是低功耗产品,3 V纽扣电池即可实现冷链温度记录仪系统供电。系统上电后,微控制器STM8L101F3首先实现初始化操作,通过I2C总线向STTS75内部配置寄存器 (Configuration Register)写入配置信息,使其工作模式为关闭模式、模/数转换为9位模式,然后STM8 L101F3向配置寄存器写入数据使sTTS75处于单发模式。
STTS75进行一次温度数据采集,在数据转换完成后将自动进入关闭模式,等待下一次唤醒。接着STM8L101F3从温度寄存器(Temperature Register)内读取温度数据,进行数据处理,继而通过I2C总线将处理后的数据写入M24LR 64内,最后进入暂停模式。经过AWU设置的延时时间后,STM8L101F3将自动唤醒,向STTS75发送配置信息使其进入单发模式,然后读取数据、处理数据,并将处理后数据存入M24LR64的下一空间内,接着进入暂停模式。周而复始即可实现温度数据在固定时间间隔内的采集、处理和存储。
软件开发环境选用ST Visual Develop(STVD)IDE,软件设计采取模块化思想,主要由温度数据采集、数据处理和数据存储3个部分组成。系统上电后首先进行传感器和 M24LR64的初始化,然后对传感器进行配置,数据转换结束后进行数据读取,然后将数据存储于M24LR64内,数据存储完成后进人暂停模式,AWU功能启用,延时一段时间后将自动唤醒微控制器重复以上操作。
冷链温度记录仪程序主要由传感器初始化函数、M24LR64初始化函数、传感器配置函数、读传感器数据函数、温度数据处理函数和写M24LR64程序组成。在程序起始的时候需要定义I2C传输速度,声明传感器和M24LR64的地址以及M24LR64写入数据的起始地址。传感器配置函数主要进行ADC输出数据位数(9,10,12)和传感器模式(shutdown,one-shot)配置。