你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

基于STM32F412的LL库的ADC转换

[复制链接]
wenyangzeng 发布时间:2024-12-8 11:14

基于STM32F412的LL库的ADC转换

狂欢三:发帖兑STM32板卡

11月份大转盘有幸抽到1等奖,揽获STM32F412nucleo开发板1块。谢谢ST社区,

微信图片_20241208110306.jpg

于是决定使用它来体验一下LL模式的ADC转换。

SETUP.png

ADC配置

LL.png

LL配置

STM32F412的LL-ADC配置成循环模式转换内部温度传感器,并转换成温度值。

主函数

include "main.h"
#include "adc.h"

#define INTERNAL_TEMPSENSOR_AVGSLOPE   ((int32_t) 2500)  
#define INTERNAL_TEMPSENSOR_V25        ((int32_t)  760) 
#define INTERNAL_TEMPSENSOR_V25_TEMP   ((int32_t)   25)
#define INTERNAL_TEMPSENSOR_V25_VREF   ((int32_t) 3300)
#define VDDA_APPLI                       ((uint32_t)3300)
__IO uint16_t uhADCxConvertedData;
__IO uint16_t hADCxConvertedData_Temperature_DegreeCelsius = 0; 

int main(void)
{
  HAL_Init();
  SystemClock_Config();
  MX_ADC1_Init();
  LL_ADC_Enable(ADC1);
  while (1)
  {
    LL_ADC_REG_StartConversionSWStart(ADC1);
      while (LL_ADC_IsActiveFlag_EOCS(ADC1) == 0)
        {}
     LL_ADC_ClearFlag_EOCS(ADC1);
     uhADCxConvertedData = LL_ADC_REG_ReadConversionData12(ADC1);
  hADCxConvertedData_Temperature_DegreeCelsius = __LL_ADC_CALC_TEMPERATURE_TYP_PARAMS(INTERNAL_TEMPSENSOR_AVGSLOPE, 
                                                                                            INTERNAL_TEMPSENSOR_V25,
 INTERNAL_TEMPSENSOR_V25_TEMP,
 VDDA_APPLI,
 uhADCxConvertedData,
 LL_ADC_RESOLUTION_12B);
  }

}

运行结果

ADC.png

在变量窗口可以看到转换结果

ADC.png
收藏 评论0 发布时间:2024-12-8 11:14

举报

0个回答

所属标签

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版