1134|1

250

帖子

5

TA的资源

纯净的硅(初级)

楼主
 

[ ST NUCLEO-U575ZI-Q 测评] 之ADC多通道常规转换方式 [复制链接]

我们在使用中可能经常用到ADC,同时也可能需要多通道进行轮训转换,今天我测试下使用STM32CUBEMX怎样配置我们的ADC多通道采集。

 

首先我们找我们的原理图,查看所有的模拟通道的接口。之后就是在cubemx中生成。

 

选择所有的ADC通道,注意这里好像支持了差分输入,所以我们需要注意,把两两之间的差分配置给去掉。

 

全部配置成单端。

 

采用非DMA轮训方式采集,就需要使能我们的不连续转换方式,不连续转换数量填1,然后我们的ADC位数也是上升了,来到了14位,同时其还有支持过采样技术,这里都不展开了,上面配置好之后我们配置下面的Rank这里按照我们的转换通道顺序对应下即可,这样就不会很乱了。

 

之后配置PWR,模式换成DC-DC。然后生成工程即可。

  • if (HAL_ADCEx_Calibration_Start(&hadc1, ADC_CALIB_OFFSET, ADC_SINGLE_ENDED) != HAL_OK)
  • {
  • Error_Handler();
  • }
  •     /* Perform ADC calibration */
  •   /* USER CODE END 2 */
  •   /* Infinite loop */
  •   /* USER CODE BEGIN WHILE */
  •   while (1)
  •   {
  •     /* USER CODE END WHILE */
  •     /* USER CODE BEGIN 3 */
  •   
  •   
  •   for(i=0;i<6;i++)
  • {
  • HAL_ADC_Start(&hadc1); //启动ADC转换
  • HAL_ADC_PollForConversion(&hadc1,10); //等待转换完成,10ms表示超时时间
  • ADC_Value[i] = HAL_ADC_GetValue(&hadc1); //读取ADC转换数据(16位数据)
  • }
  • HAL_Delay(500);
  •   
  •   }

在main函数中还是很简单的,先进行校准,然后开始采集。循环采集6次,存储数据。

 

不过搞到这里还不行,你会发现一直停在校准函数中,这时候我们需要stm32u5xx_hal_msp.c打开这个文件,添加两句话。主要就是使能VDDA电源供电,VDDA顾名思义就是模拟电源供电。这样就能采集数据了。

 

当我们接入3.3V给模拟口就会发现其数值满偏了,说明是正常的,后续通过计算就能转换出模拟电压了。

 

查看本帖全部内容,请登录或者注册
此帖出自无线连接论坛

最新回复

谢谢楼主分享ADC多通道采集的方法   详情 回复 发表于 2023-2-9 07:35
点赞 关注
 

回复
举报

6947

帖子

0

TA的资源

五彩晶圆(高级)

沙发
 

谢谢楼主分享ADC多通道采集的方法

此帖出自无线连接论坛
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
快速回复 返回顶部 返回列表