查看: 2911|回复: 5

[经验] 每日一练7.1#STM32实例-内部温度传感器实验

[复制链接]

该用户从未签到

发表于 2020-7-1 11:06:28 | 显示全部楼层 |阅读模式
分享到:
  为鼓励大家动手动脑,早日成为技术大牛。电路城论坛现在推出#每日一练#栏目,由版块版主出题及提供答案,内容涉及电源,射频,单片机等各种技术话题。我们会在周一至周五的早上10:30更新问题和前天问题的解题思路及答案。欢迎大家参与。

本期内容来源于:




       Casper.T,电子与通信工程专业,在读硕士,对模拟通信,智能电子设计以及FPGA图像处理和加速器有丰富的设计经验。现主要从事电子信息技术运营方面的工作。


我们介绍过了 ADC模数转换实验, 知道 ADC 内部有一个通道连接着芯片的温度传感器,这次就来学习下 STM32F1 的内部温度传感器。要实现的功能是:通过芯片内部温度传感器读取温度,并将读取的温度数据打印出去,D1 指示灯闪烁提示系统正常运行。
STM32F1 内部温度传感器简介
  STM32F1 内部含有一个温度传感器,可用来测量 CPU 及周围的温度(TA)。此温度传感器与 ADC1 内部输入通道相连接,内部温度传感器连接通道框图如下图所示。它连接在ADC1_IN16 上。ADC1 可以将传感器输出的电压转换成数字值。STM32F1 的内部温度传感器支持的温度范围为:-40~125 度,精度为±1.5℃左右。
  STM32F1 内部温度传感器的使用很简单,只要初始化下 ADC1_IN16 通道,并激活其内部温度传感器通道就差不多了。关于 ADC 的初始化,我们在上篇文章已经进行了详细的介绍,这里就不多说。接下来我们介绍一下和温度传感器设置相关的 2 个地方。
(1)要使用 STM32F1 的内部温度传感器,必须先激活 ADC 的内部通道,
这里通过 ADC_CCR 的 TSVREFE 位( bit23)设置。设置该位为 1 则启用内部温度传感器,否则关闭内部温度传感器。
(2)STM32F103ZET6的内部温度传感器固定的连接在 ADC1_IN16上, 所以,我们在设置好 ADC1 之后只要读取通道 16 的 AD 值,就知道温度传感器返回来的电压值了。根据这个值,我们就可以计算出当前温度。计算公式如下:
T(℃) ={( V25 - Vsense) /Avg_Slope}+25
公式中:V25=Vsense 在 25 度时的数值(典型值为:1.43V)。
Avg_Slope=温度与 Vsense 曲线的平均斜率(单位为 mv/℃或 uv/℃)(典型值为4.3mV/℃)。通过上面公式,我们就能非常方便的计算出当前内部温度传感器测试的温度。
内部温度传感器配置步骤
  接下来我们介绍下如何使用库函数对内部温度传感器进行配置。这个也是在编写程序中必须要了解的。具体步骤如下:(ADC 相关库函数在stm32f10x_adc.c和 stm32f10x_adc.h 文件中)
(1)初始化 ADC1_IN16相关参数,开启内度温度传感器
  ADC1_IN16 的初始化步骤与上一章介绍 AD 模数转换实验一样,这里我们只需要开启内部温度传感器即可,调用的库函数为:
ADC_TempSensorVrefintCmd(ENABLE);//打开 ADC 内部温度传感器
(2)读取 ADC1_IN16 AD值,将其转换为对应温度
  上一步配置好后, 我们就可以读取温度传感器的电压值, 根据温度计算公式,可以求出对应电压值的温度,具体方法与上一篇ADC文章介绍的一样。
本实验使用到硬件资源如下:
(1)D1 指示灯
(2)串口 1
(3)内部温度传感器
   D1 指示灯、串口 1 电路在前面章节都介绍过,这里就不多说,至于内部温度传感器它属于 STM32F1芯片内部的资源,连接的是 ADC1_IN16通道。
要实现的功能是:通过芯片内部温度传感器读取温度,并将读取的温度数据打印出去,D1 指示灯闪烁提示系统正常运行。程序框架如下:
(1)初始化内部温度传感器(初始化 ADC1_IN16,开启温度传感器)
(2)编写温度读取函数
(3)编写主函数

问:在给出你的设计的同时,思考该温度传感器能否用来检测周围环境的温度,如果不行,它测出的温度是谁的温度,有什么实用价值?


答:

游客,如果您要查看本帖隐藏内容请回复



参与讨论,即可快速获取以下几本电源书籍(电子版)

想成为论坛版主?想在#每日一练#展现你的技术才华?请联系工程师小助手Q:2740521371或邮箱:yanfen.mo@supplyframe.cncaihong.xiao@supplyframe.cn





回复

使用道具 举报

  • TA的每日心情
    开心
    2023-2-27 15:22
  • 签到天数: 12 天

    连续签到: 1 天

    [LV.3]偶尔看看II

    发表于 2022-2-19 13:45:45 | 显示全部楼层
    学习学习   
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2023-6-8 21:26:04 | 显示全部楼层
    内部温度,检测温度变化
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /4 下一条



    手机版|小黑屋|与非网

    GMT+8, 2024-11-22 01:02 , Processed in 0.169436 second(s), 26 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.