基于MSP430和MAX1452的温度补偿系统设计
移动。
循环加1模块:实现液晶显示器LCD显示数字的加法操作,通过按键在不同的数字区间内进行循环加1。
确定模块:主要进行大量的控制和数据操作,还要调用中断模块和通信模块的功能,实现对数据的传输和处理,同时改变温度补偿系统的运行状态。
取消模块:主要放弃对已经在液晶显示器LCD上改变的数据进行操作,返回改变前的状态,同时改变温度补偿系统的运行状态。
2.5 通信模块
在温度补偿系统中,本模块实现了MSP430和MAX1452之间的通信。通过调用本模块,MSP430实现对MAX1452的控制和数据交互,实现对温度漂移误差的补偿。
本模块主要有7个子功能模块:初始化模块、重初始化模块、读模块、写模块、数据计算模块、地址查找模块、控制模块。
初始化模块:根据MAX1452的通信协议,本模块的功能是在在上电或者复位时对MAX1452进行初始化。
重初始化模块:根据MAX1452的通信协议,本模块是在MSP430与MAX1452进行通信之前(非上电或者复位情况下),对MAX1452进行初始化,保证传输数据的正确性。
图4读模块的流程图
图5写模块的流程图
读模块:根据MAX1452的通信协议,在从MAX1452读出数据时,需要有特定的数据格式,本模块实现从MAX1452读出数据,并且将MAX1452中特定的数据传输格式,转化为便于计算或显示使用的数据格式的功能。流程图如图4所示。
写模块:根据MAX1452的通信协议,在从MAX1452写入数据时,需要有特定的数据格式,本模块实现将计算或显示数据转化为MAX1452的特定的数据传输格式,并写入到MAX1452的功能。流程图如图5所示。
数据计算模块:本模块的主要功能是对从MAX1452读入的数据与MAX1452中EEPROM的数据进行计算,得出需要达到理想状态下的所要补偿的温度的确切值。
地址查找模块:根据MAX1452的通信协议,在温度补偿过程中,需要根据公式,查找不同温度状况下零点和满偏的温度补偿值的地址,然后读出相应的数据。本功能模块主要实现查找地址的功能。
控制模块:本模块的主要功能是根据MAX1452的通信协议,对其控制指令进行封装,使其完成固定的功能,便于进行调用。
3 结束语本文创新点:利用MSP430低功耗单片机和MAX1452芯片,设计温度补偿系统的结构以及此系统中的中断转换状态。
此系统在调试过程中得到以下补偿数据,如表1所示。
在此系统的设计过程中,尽管在一定程度上实现了对温度漂移误差的的补偿,但是,补偿的过程是以手动调节完成的,在实时性方面存在一定的不足,有待进一步研究。
表1 温度补偿数据
温度(°C) | 补偿值 | |
十进制表示 | 十六进制表示 | |
-40 | 20 | 14 |
25 | 65 | 41 |
85 | 106 | 6A |
125 | 134 | 86 |
沈建华,杨艳琴,翟骁曙等编,MSP430系列16位超低功耗单片机实践与系统设计[M],清华大学出版社,2005年4月。
魏小龙编,MSP430系列单片机接口技术及系统设计实例[M],北京航空航天大学出版社,2002年。
胡大可编,MSP430系列单片机C语言程序设计与开发[M],北京航空航天大学出版社,2003年1月。
王成江,王安敏,张玉华,基于MAX1452 的超细颗粒机械加工中振动的测试,电子产品世界[J/OL],2002年Z2期。
刘玉宏,MSP430单片机C语言和汇编语言混合编程,微计算机信息[J/OL],2003年第19卷第10期56页。
张景元,陈平,一种基于单片机的多功能数字钟,微计算机信息[J/OL],2005年第21卷第9-2期136页。
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)