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

STM32U5的ADC测试

[复制链接]
落花又见流水 发布时间:2023-3-12 21:13
STM32U5ADC最高可达14bit采样位数。采样率达2.5Mbps
下面就来测试一下它的ADC外设。
首先打开 STM32CubeMX,按下图选择开发板模式创建工程。如果没有装STM32U5的开发包,可以点右边的INSTALL安装。
1.jpg
搜索U5,选择NUCLEO-U575开发板,这样可以直接初始化板上的一些已有外设了。如下图所示。然后点击右上角START PROJECT,开始配置工程。
2.jpg
下图就是开始工程配置了,可以看到一开始就有一些默认外设已配置好了。
3.jpg
首先选择ICACHEDCACHE,打开这两个。打开时之后一般默认设置就好了。
3-1.jpg 3-2.jpg
下面选择ADC1外设,打开使能通道8,即PA3脚。使用单端模式。
4.jpg

4 V2 G4 G+ H/ D6 [
再就配置ADC的参数。时钟频率,数据位数,采样模式,采样通道设置,采样触发设置等等。
/ H2 ]9 Y; H  V5 J  N3 u
5.jpg
6.jpg 7.jpg

' _, O( w) q) p0 |8 d# I; Q" ~
设置完采样相关的参数后,使能ADC中断,通过中断模式读取数据。
7-1.jpg
. X+ C5 q& a& M
由于ADC采样使用了TIM6触发采样,下面就要设置TIM6的参数。
设置每100us采样触发一次ADC
8.jpg

$ x( h" ^: S  t$ g+ Z. w7 s
下一步设置MCU的主频时钟树,非常简单,默认160MHz
9.jpg
下面设置工程名称和保存路径,以及开发包库版本。然后点击右上角的按钮生成代码。
10.jpg 11.jpg 12.jpg
等待代码生成完成就可以直接打开工程了。
13.jpg
打开生成的代码工程,此时还没有完成ADC采样功能。只是有了基本框架,下面就是要添加额外的代码控制了。
首先要使能ADC的电源VDDA,在main初始如下位置添加代码:
   HAL_PWREx_EnableVddA();
   HAL_PWREx_EnableVddIO2();
这里如果没添加的话,ADC功能是无法正常工作的。
14.jpg
1 I* N% c) z* o- k
然后添加ADC的校准,此处参考例程。代码如下:
  if (HAL_ADCEx_Calibration_Start(&hadc1, ADC_CALIB_OFFSET, ADC_SINGLE_ENDED) != HAL_OK)
  {
    /* Calibration Error */
    Error_Handler();
  }
再就是启动TIM6ADC1了。添加如下代码启动
  HAL_TIM_Base_Start(&htim6); //启动TIM6
  HAL_ADC_Start_IT(&hadc1); //中断方式启动ADC1转换。
15.jpg
添加了启动转换,下面还要添加读取采样数据。直接重载ADC中断转换完成回调函数,代码如下:
uint32_t adc_value[2];
volatile uint32_t adc_index = 0;
void HAL_ADC_ConvCpltCallback(ADC_HandleTypeDef *hadc)
{
    if( __HAL_ADC_GET_FLAG(hadc, ADC_FLAG_EOC))
    {
        adc_value[adc_index++] = HAL_ADC_GetValue(hadc);
    }
    if( __HAL_ADC_GET_FLAG(hadc, ADC_FLAG_EOS))
    {
        adc_index  = 0;
    }
}
16.jpg
1 Q4 s  P, T2 v* [) \6 G
下面就可以编译下载了,编译无错误。
17.jpg
下面就可以在IDE中查看读取的数据了。我在PA3口接了一个声音传感器,可以采样其模拟值。
18.jpg
3 J/ M% U& X( F8 b, \% T9 f, B' b
测试采样数值挺稳定的,14bit的数据跳动范围都小于8。性能看来很不错。

9 G( _, r& o) [: X, @0 V
收藏 评论1 发布时间:2023-3-12 21:13

举报

1个回答
lugl 回答时间:2023-3-13 08:29:09

多谢分享

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