STM32读取芯片内部温度

基于stm32f103cbt6这款芯片,原理部分请参考其他文章,此文章为快速上手得到结果,以结果为导向。

1.基础配置

打开stm32cubemx只需要勾选中 ADC1 Temperature Sensor Channel

2.代码分析

c 复制代码
/*
 *  函数名:float GetAdcAnlogValue(void)
 *  输入参数:无
 *  输出参数:无
 *  返回值:返回一个float型值,即采样到的模拟电压值
 *  函数作用:获取ADC的采样到的内部温度
 *  
 *  备注:此处参考电压为3.3V
*/
float GetTemptureValue(void)
{
    uint16_t nData = 0;
    float nValue = 0.0;
    /*连续模式*/
//    HAL_ADC_Start(&hadc1);                  // 启动ADC1
//    HAL_ADC_PollForConversion(&hadc1, 250); // 等待ADC转换结束
	/* 关闭 */
	
    nData = HAL_ADC_GetValue(&hadc1);       // 得到转换数据
    nValue = (1.43 - nData*3.3/4096)*(1000/4.3) + 25; /* 计算公式 */

    // 返回计算得到的模拟电压值
    return nValue;
}


相关推荐
国科安芯6 小时前
ASC0101S自动双向电平转换原理深剖
单片机·嵌入式硬件·fpga开发·云计算·信息与通信
李永奉6 小时前
中科蓝讯SDK开发-开启串口Debug打印调试教程
单片机·嵌入式硬件·mcu·物联网·电脑
LCG元6 小时前
STM32硬件SPI驱动OLED SSD1306显示屏全流程实战:从CubeMX配置到中英文显示
stm32·单片机·嵌入式硬件
sukalot7 小时前
windows网络适配器驱动开发-双 STA 连接(下)
windows·驱动开发·stm32
飞凌嵌入式7 小时前
性能翻倍·功耗减半!RK3572八核核心板,重构嵌入式计算新标杆
人工智能·嵌入式硬件·飞凌嵌入式
zcmodeltech8 小时前
智慧农业沙盘模型物联网控制系统设计:基于STM32与Modbus RTU的传感器-执行器闭环方案
服务器·分布式·stm32·嵌入式硬件·物联网·能源
WD1372980155718 小时前
WD5030L,超高集成度、大电流输出、高效率低发热,限流24V转12V,6A
stm32·单片机·嵌入式硬件·51单片机
~光~~20 小时前
【xv6学习】L0_环境配置
单片机·嵌入式硬件·学习
映翰通网络1 天前
TI开发板上的边缘AI工具链:先认清OpenCV、GStreamer和TIDL
人工智能·嵌入式硬件·opencv·计算机视觉·ti
论迹复利1 天前
Smith 圆图实战——从原理到 L 型匹配网络设计
嵌入式硬件·无线