查看: 3538|回复: 1

STM32F107VC金龙开发板 第六章--内部温度

[复制链接]

该用户从未签到

发表于 2015-4-13 16:32:14 | 显示全部楼层 |阅读模式
分享到:
第六章 金龙107——内部温度
6.1 STM32内部温度
STM32内部有一个温度传感器,用来测量周围及CPU的温度。该传感器和ADC1_IN16输入通道相连,此通道把传感器输出的电压值转换为数字值。温度传感器模拟输入推荐采样时间是 17.1μs。  STM32 内部温度传感器的使用很简单,只要设置一下内部 ADC,并打开其内部通道就差不多了。接下来我们介绍一下和温度传感器设置相关的地方。① 我们要使用 STM32 的内部温度传感器,必须先打开 ADC 的内部通道。② STM32 的内部温度传感器固定的连接在 ADC 1的通道 16 上,所以,我们在设置好 ADC 之后只要读取通道 16 的值,就是温度传感器返回来的电压值了。根据这个值,我们就可以计算出当前温度。计算公式如下:
               T(℃)={V25-Vsense/Avg_Slope}+25
上式中:
V25=Vsense 25 度时的数值(典型值为:1.43)。
Avg_Slope=温度与 Vsense 曲线的平均斜率(单位为 mv/℃或 uv/ ℃)(典型值为
4.3Mv/℃)。
利用以上公式,我们就可以方便的计算出当前温度传感器的温度了。
图片3.png
6.2实验说明:
在本实验中,主要使用STM32F107ADC采集内部温度,并在彩屏上显示,LED1灯闪烁指示程序的运行。
主要跳线帽:JP4JP7都接在2-3
6.3硬件说明:
注意3.2寸彩屏与板子TFT LCD接口引脚的对应。
6.4程序说明:
本实验配置主要是ADC的配置,其通道要选择对应的测量内部温度的通道(ADC_Channel_16)函数在hw_config.c文件。
图片2.png
图片1.png
ADC_RegularChannelConfig(ADC1,ADC_Channel_TempSensor,1,ADC_SampleTime_239Cycles5)。来看看这个函数,第一个输入参数是ADC1ADC2;第二个是ADC通道;第三个是规则组采样顺序,取值范围是1~16;第四个是采样时间。
    再者就是LCD的驱动,这里我们已经写好了LCD的驱动函数,你只需要直接调用就可以,至于如何实现字符的显示,你可以详细阅读我们的程序。需要注意的是你的LCD的驱动芯片是否与我们所编写的函数相对应。
6.5实验现象:
彩屏蓝色字体显示“Gold Dragon STM32”,“ TEMPERATE TEST”,“ www.openmcu.com”红色字体显示:"TEMP_VAL:","TEMP_VOL:0.000V","TEMPERATE:00.00C"后面的值会动态的修改。一个LED灯闪烁指示程序运行。

回复

使用道具 举报

  • TA的每日心情
    开心
    2020-2-14 12:16
  • 签到天数: 827 天

    连续签到: 1 天

    [LV.10]以坛为家III

    发表于 2015-4-14 13:23:02 | 显示全部楼层
    谢谢分享学习一下
    回复 支持 反对

    使用道具 举报

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

    本版积分规则

    关闭

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



    手机版|小黑屋|与非网

    GMT+8, 2024-11-25 13:16 , Processed in 0.118456 second(s), 18 queries , MemCache On.

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

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.