1 引言
ti公司的msp430单片机以独特的低功耗和模块化设计赢得了设计者的青睐。新型msp430f247其性价比相当高,该16位单片机处理速度快,超低功耗,能节省很多资源;msp430f247内置i2c模块,方便了程序编写,大大降低了程序的出错率。同时更多的i/o口可以级联更多的外围器件,而无需使用地址数据锁存器件,既方便了程序的编写,也简化了硬件电路的设计。
温度传感器tmp275可直接输出数字信号,而无需取样、放大、滤波和模数信号的转换,可以直接传输给单片机信号处理系统;而且输出信号分辨率可以达到0.0625,测温精度±0.5℃,若使用msp430f247做控制器,可直接与其自带的i2c模块相连,使用方便。
2 电路设计
2.1 总体方案设计
该测温仪的硬件结构由温度测量、核心控制电路、显示电路和电源电路等4部分组成。总体方案框图如图l所示。
2.2 单元模块设计
2.2.1 核心控制电路
核心控制电路采用msp4313f247完成数据的测量和处理,实现温度测量和控制输出显示功能,电路如图2所示,其中的p3.1.p3.2分别是msp430f247自带i2c模块的scl和sda,可以直接连接tmp275,不用再模拟i2c口,应注意接上拉电阻。
图2 核心控制电路
2.2.2 温度测量
测温部件采用ti公司生产的温度传感器tmp275,以数字形式用i2c总线向cpu传输数据,图3给出温度测量电路。
图3 温度测量电路
tmp275是一个i2c总线的温度传感器,测温范围一40℃~+125℃,在一20℃~+100℃之间最大误差仅为±0.5℃。
tmp275内部有指针寄存器、配置寄存器、温度值寄存器、高温和低温限制寄存器等5个寄存器。
指针寄存器是通过p1,p0识别哪个寄存器来响应读写命令。其格式字如表1所示,指针地址如表2所示。
配置寄存器是一个8位可读写的寄存器,用来存储tmp275的工作模式控制字,详细资料请参见参考文献。
温度寄存器是12位补码只读寄存器,用来存储最近变换得到的数据,存储形式与ti公司的tmpl00和dallas公司的dsl8820相同。该寄存器通过2个字节读写数据,如表3,表4所示,且先传输高8位再传输低8位,其中第一个字节8位有效,第二个字节只有高4位有效。上电和复位后读出的是0°。图4和图5分别是i2c数据写、读时序图。
图4 i2c数据写时序
图5 i2c数据读时序
2.2.3 显示电路
图6给出显示电路,显示部分主要由3个共阴数码管组成,以达林顿集成电路uln2003和74ls06作为反向驱动。
图6 显示电路
2.2.4 电源电路
该装置的电源由两部分组成:由三端稳压器lm7805提供的+5 v。主要给uln2003,74ls06以及温度传感器tmp275供电:由ti公司专用电平转换器tps76033提供的3.3 v,主要提供msp430f247单片机工作电源,如图7所示。
图7 电源电路
3 程序流程图及部分核心程序代码
3.1 主程序
程序开始头文件加载、端口及各种寄存器初始化,然后进入显示测温程序,如图8所示。
图8 主程序流程图
3.2 测温子程序
3.2.1 测温初始化子程序
此部分程序分别对msp430f247自带的i2c模块相关的寄存器进行设置:①设p3.1、p3.2为外部管脚,使能sw reset;②选择i2c模块操作模式为主机,同步模式;③选择时钟,复位r/w;④设置从机地址,清除sw中断标志,使能rx中断;⑤设置接收字节计数器是2,目的是读2个字节的温度值;⑥发送i2c开始命令;⑦接收2个字节的温度值;⑧发送i2c停止命令。
3.2.2读温度高、低字节数据子程序
3.2.3 温度值处理子程序
图9给出测温子程序流程图。
图9 测温子程序流程图
4 结语
测温仪设计系统中,对于数字温度传感器tmp275,采用了模块化的设计理念,设计思路明朗,搭建系统框架比较容易,尤其是msp430f247本身带有i2c模块,不必再用一般的2个端口来模拟i2c,程序编写简单,在使用其他的i2c器件时也可以参考,移植使用。
魅族Pro7什么时候上市?魅族Pro7最新消息:魅族Pro7全面升级即将发布,魅族Pro7价格曝光2599元?
人机界面设计在工业设计中的应用
传感器在汽车底盘控制系统中的应用
烽火提出智慧可行的方案,可让企业高质量、高水平的“走出去”
CUDA学习笔记第一篇:一个基本的CUDA C程序
采用MSP430F247单片机实现TMP275测温仪的I2C模块的连接
无风扇嵌入式工控机的优势有哪些
1小时搭建一个企业级物联网平台,是怎样的体验?
Windows 8消费者预览版正式发布 支持多国语言提供下载
西门子博途中保存硬件配置并下载到设备
富士推出X100V微单相机,双向翻折液晶触摸屏
对中国发展宽带接入及光纤的思考
IDT公司推出9WDV3501可同时监控多个处理过程的单芯
物联网新起的塑料处理器,能否当担大任
嵌入式环境下的轻量级GUI系统解决方案设计详解
布局MCU,“国民芯”版图新格局
linux系统中驱动软件架构设计
Arduino库可以直接在RT-Thread上运行了 附详细解读
高性能低功耗I2C接口智能门锁触摸芯片GTX314L
中控智慧科技考勤机IM2500简介