有大神试过读STM32f030内部温度传感器,怎么读和计算呢

2019-08-13 21:14发布


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
7条回答
宝胖子
1楼-- · 2019-08-14 00:06
温度传感器是内部和ADC1_IN16输入通道相连接,读取AD采样值,有一个公式换算温度
l6931639
2楼-- · 2019-08-14 05:41
 精彩回答 2  元偷偷看……
机械式teli
3楼-- · 2019-08-14 07:40
宝胖子 发表于 2017-9-29 17:09
温度传感器是内部和ADC1_IN16输入通道相连接,读取AD采样值,有一个公式换算温度

对的  主要是怎么初始化  怎么个计算 数据手册我找了没看到
宝胖子
4楼-- · 2019-08-14 08:59
机械式teli 发表于 2017-9-30 10:03
对的  主要是怎么初始化  怎么个计算 数据手册我找了没看到

1. 选择ADC1_IN16输入通道
2. 选择采样时间为17.1 μs
3. 设置ADC控制寄存器2(ADC_CR2)的TSVREFE位,以唤醒关电模式下的温度传感器
4. 通过设置ADON位启动ADC转换(或用外部触发)
5. 读ADC数据寄存器上的VSENSE 数据结果
6. 利用下列公式得出温度
温度(°C) = {(V25 - VSENSE) / Avg_Slope} + 25
这里:
V25 = VSENSE在25°C时的数值
Avg_Slope = 温度与VSENSE曲线的平均斜率(单位为mV/ °C 或 μV/ °C)
参考数据手册的电气特性章节中V25 和Avg_Slope的实际值。
初始化配置没有太大区别,看历程,stm32中文手册169页。
宝胖子
5楼-- · 2019-08-14 12:34
l6931639 发表于 2017-9-29 21:01
请教一下这个温度传感器的意义在哪里,

测单片机的温度,如果过高不正常可以进行保护或者设备休眠。
机械式teli
6楼-- · 2019-08-14 13:35
宝胖子 发表于 2017-9-30 11:23
1. 选择ADC1_IN16输入通道
2. 选择采样时间为17.1 μs
3. 设置ADC控制寄存器2(ADC_CR2)的TSVREFE位,以 ...

你这个是在f103上可行     f030上我试了下,读不到数据

一周热门 更多>