历史上的今天
返回首页

历史上的今天

今天是:2024年08月24日(星期六)

2020年08月24日 | 采用MSP430F247和TMP275的测温仪设计应用

2020-08-24 来源:eefocus

  TI公司的MSP430单片机以独特的低功耗和模块化设计赢得了设计者的青睐。新型MSP430F247其性价比相当高,该16位单片机处理速度快,超低功耗,能节省很多资源;MSP430F247内置I2C模块,方便了程序编写,大大降低了程序的出错率。同时更多的I/O口可以级联更多的外围器件,而无需使用地址数据锁存器件,既方便了程序的编写,也简化了硬件电路的设计。


  温度传感器TMP275可直接输出数字信号,而无需取样、放大、滤波和模数信号的转换,可以直接传输给单片机信号处理系统;而且输出信号分辨率可以达到0.062 5,测温精度±O.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 温度测量

  测温部件采用TI公司生产的温度传感器TMP275,以数字形式用I2C总线向CPU传输数据,图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分别是I℃数据写、读时序图。

寄存器通过2个字节读写数据

I

  2.2.3 显示电路

  图6给出显示电路,显示部分主要由3个共阴数码管组成,以达林顿集成电路ULN2003和74LS06作为反向驱动。

显示电路

  2.2.4 电源电路

  该装置的电源由两部分组成:由三端稳压器LM7805提供的+5 V。主要给ULN2003,74LS06以及温度传感器TMP275供电:由TI公司专用电平转换器TPS76033提供的3.3 V,主要提供MSP430F247单片机工作电源,如图7所示。

电源电路

  3 程序流程图及部分核心程序代码

  3.1 主程序

  程序开始头文件加载、端口及各种寄存器初始化,然后进入显示测温程序,如图8所示。

主程序流程图

程序

  3.2 测温子程序

  3.2.1 测温初始化子程序

  此部分程序分别对MSP430F247自带的I2C模块相关的寄存器进行设置:①设P3.1、P3.2为外部管脚,使能SW Reset;②选择I2C模块操作模式为主机,同步模式;③选择时钟,复位R/W;④设置从机地址,清除SW中断标志,使能Rx中断;⑤设置接收字节计数器是2,目的是读2个字节的温度值;⑥发送I2C开始命令;⑦接收2个字节的温度值;⑧发送I2C停止命令。

程序

程序

测温子程序流程图

推荐阅读

史海拾趣

Gigavac LLC公司的发展小趣事

对于数-模转换(D/A转换)用高稳定度稳压电源电路,网友可能提出多个方面的问题。以下是一些可能的问题及其详细回答:

问题一:为什么数-模转换需要高稳定度的稳压电源?

回答
数-模转换器(D/A转换器)将数字信号转换为模拟信号,其输出精度和稳定性直接受到供电电源的影响。高稳定度的稳压电源能够确保D/A转换器在转换过程中电压波动小,从而减小转换误差,提高转换精度。此外,稳定的电源还能保护D/A转换器免受电压波动可能引起的损坏,延长其使用寿命。

问题二:如何设计高稳定度的稳压电源电路?

回答
设计高稳定度的稳压电源电路通常需要考虑以下几个方面:

  1. 选择合适的稳压元件
    • 稳压二极管(齐纳二极管):具有稳定的反向击穿电压,可作为简单的稳压元件。
    • 线性稳压器(LDO):提供低噪声、高精度的输出电压,适用于对电源噪声敏感的场合。
    • 开关稳压器:效率高,但可能引入一定的纹波噪声,需要适当的滤波电路设计。
  2. 优化电源滤波
    • 在稳压电源的输出端加入滤波电容,以减小输出电压的纹波和噪声。
    • 对于开关稳压器,可能需要额外的LC滤波电路来进一步降低纹波。
  3. 考虑温度稳定性
    • 温度变化会影响元件的性能,因此在设计时应考虑元件的温度系数,并采取适当的温度补偿措施。
  4. 采用反馈控制
    • 通过引入电压反馈控制环路,可以实时监测输出电压并调整稳压元件的工作状态,以保持输出电压的稳定。
  5. 选用高质量的元件
    • 使用低漂移、高精度的电阻、电容等元件,以提高电源电路的整体稳定性。

问题三:如何评估稳压电源的稳定度?

回答
评估稳压电源的稳定度通常需要考虑以下几个方面:

  1. 输出电压的纹波和噪声
    • 使用示波器测量输出电压的纹波和噪声水平,确保其在可接受的范围内。
  2. 负载调整率
    • 在不同负载条件下测量输出电压的变化量,评估电源对负载变化的响应能力。
  3. 线性调整率
    • 在输入电压变化时测量输出电压的变化量,评估电源对输入电压变化的抵抗能力。
  4. 温度稳定性
    • 在不同温度条件下测量输出电压的变化量,评估电源的温度稳定性。
  5. 长期稳定性
    • 在长时间运行后测量输出电压的变化量,评估电源的长期使用稳定性。

问题四:有哪些常见的稳压电源故障及其解决方案?

回答
常见的稳压电源故障及其解决方案包括:

  1. 输出电压不稳定
    • 检查稳压元件是否损坏或老化。
    • 检查滤波电容是否失效或容量不足。
    • 检查反馈控制环路是否正常工作。
  2. 无输出电压
    • 检查输入电源是否正常。
    • 检查保险丝是否熔断。
    • 检查稳压元件是否短路或开路。
  3. 输出电压过高或过低
    • 调整稳压元件的工作参数。
    • 检查负载是否过大或过小。
    • 检查输入电压是否在正常范围内。
  4. 温度过高
    • 检查散热系统是否正常工作。
    • 考虑增加散热装置或降低负载。

通过以上问题和答案的梳理,可以帮助网友更全面地了解数-模转换用高稳定度稳压电源电路的设计、评估和维护等方面的知识。

南京中科微公司的发展小趣事

南京中科微电子有限公司(CSM)的创立源于一群海归科学家和工程师的激情与梦想。他们曾在国外知名半导体公司如Marvell、ADI、Linear Tech等积累了丰富的研发经验,并在国家重点研究院所中从事前沿研究。这群人深感国内在射频/模拟关键芯片领域的落后,于是决定回国创立CSM,旨在打破国外技术垄断,实现自主创新和产业化。

Califia Lighting公司的发展小趣事

Califia Lighting公司的创立源于创始人对节能照明技术的深刻理解和前瞻视野。在电子照明行业快速发展的背景下,他们看到了LED照明技术的巨大潜力,并决定投身其中。凭借对技术的热爱和对市场的敏锐洞察,Califia Lighting成功研发出了一系列高性能的LED灯具和模块,为公司的起步奠定了坚实的基础。

Denyo Europa Gmbh公司的发展小趣事

Denyo Europa Gmbh公司始终认为企业是社会的一部分,应该承担起相应的社会责任。公司积极参与各种公益活动,为当地社区的发展贡献力量;同时,公司还关注弱势群体的需求,为他们提供力所能及的帮助。这种对社会责任的担当精神,使公司在社会中树立了良好的企业形象。

Garmin_Canada_Inc.公司的发展小趣事
考虑到实际应用环境的复杂性,拨号电路应具有一定的环境适应性。例如,在电磁干扰较强的环境中,采取适当的屏蔽和滤波措施;在温度变化较大的环境中,采用温度补偿电路等。
EM Devices Corporation公司的发展小趣事

在产品研发取得突破的同时,EM Devices Corporation也积极拓展市场,寻求与国际企业的合作。公司参加了多个国际电子展,展示了自己的产品和技术实力。通过与国外企业的交流与合作,公司不仅获得了更多的市场机会,还学习到了先进的生产和管理经验。这些经验为公司后续的发展奠定了坚实的基础。

问答坊 | AI 解惑

山寨机,你买了么?

昨天加到一姑娘,特猛,用两个手机,iphone 和nokia,正当大家唏嘘感慨时,她说其中一个是山寨,让我们猜。 iphone的外壳磨损比较厉害,去除掉其略显华丽的外衣,也许iphone山寨得多的缘故吧,我们一直认定iphone是假的。 但结果却大大出乎我们的 ...…

查看全部问答>

用tcpDebugShow()查看的结果中第一列的数字是什么含义?

如下,第一列的数字表示什么? -> tcpDebugShow 1665138688  user  CLOSED 1665138688  user  CLOSED 643760896  user  CLOSED 643760896  input  LISTEN ...…

查看全部问答>

ARM9线程冲突

    用arm9编写的两个线程,分别从串口和网口收数据。前者始终运行,后者每1.5秒运行一次。现在后者运行时前者不仅收不到数据,连时钟也发不出来。优先级都设置好的,奇了怪了,百思不得其解。盼望过路大侠指点迷津,谢谢!…

查看全部问答>

plc控制变频器

请教PLC控制变频器,不是太复杂的控制。只需起动与速度设定功能。有一点就是要随时能对变频器进速度变更,无极的。要怎样做?本人看过台达的PLC与变频器,觉得用RS485通讯,可以实现,但是实际动手又觉得不上手,想请高手指点,有例子最好。设定速 ...…

查看全部问答>

STM8单片机外部中断

STM8单片机,PD0口产生中断与PD2口产生中断都转向同一个中断服务函数吗?   若PD0口产生中断与PD2口产生中断都转向同一个中断服务函数,那么如何让单片机区别该中断是PD0口还是PD2口产生的?…

查看全部问答>

UC3843的电源问题

求助,希望做开关电源的高手能够帮帮我,谢谢,帮我把UC3843的那些电容取值帮我算出来,比如C3,C4,C6,C11,C12!我自己弄出来的要么不起振,要么空载的功耗就有好几瓦,这开关电源的东西还真难整啊!谢谢各位大侠!…

查看全部问答>

【设计工具】《算术逻辑部件设计》(中文)

这篇文章主要介绍寄存器级的算术逻辑部件设计,适合集成电路设计人员参考。大家可以先看看这篇文章的后记,以便对这篇文章的主题有所了解。   …

查看全部问答>

"C2000系列concerto讲座(二)"上线啦!加入学习吧!

\"[url=]C2000系列concerto讲座(二)[/url]\"上线啦!加入学习吧!…

查看全部问答>

FRAM系列添新丁,24WCSP 封装

wolverine大家已经很熟悉了,今天看到这个是MSP430FR5738.它到底有什么特别之处呢?先看看指标,基本是430的标准配置。 重点就在封装上:有一个24WCSP的封装,简单的讲就是一个BGA的封装。ball的间距是0.4m.翻看了手册,这个芯片面积是2mmx2.2mm ...…

查看全部问答>

关于“压采”,能做的项目征集

关于“压采”,能做的项目征集,大家帮忙想想,都能做点儿啥啊,服务三农,造福后代,吼吼,说的有点空了。 。。 最近冀州政府大力支持此类项目,也想搞搞什么滴,大家帮帮忙哇…

查看全部问答>