【笔记------STM32】定时器触发adc采样注意事项(无中断DMA方式)

配置adc转换通过dma传输,不使用相关定时器中断、DMA中断和ADC中断
网上各种配置五花八门,这里提供我的配置方法
仅记录关键位置配置,根据自己的情况配置,并非只能如此。。

  • ADC不使用连续转换,否则定时器触发可能失效,不论定时器是否开启都会一直转换
    【笔记------STM32】定时器触发adc采样注意事项(无中断DMA方式)_第1张图片
  • DMA使用连续传输,否则ADC转换结果不能自动搬运到缓冲区,ADC转换完成会自动搬运,并不是一直在搬运(测试发现如果不设置连续方式,定时器时间并不会自动触发一次搬运,且ADC转换也可能不能进行,,)
    【笔记------STM32】定时器触发adc采样注意事项(无中断DMA方式)_第2张图片
  • ADC配置正确的触发源事件
    【笔记------STM32】定时器触发adc采样注意事项(无中断DMA方式)_第3张图片
  • 配置对应的触发源产生对应触发信号,这里是定时器15
    【笔记------STM32】定时器触发adc采样注意事项(无中断DMA方式)_第4张图片
  • 最后记得打开ADC和定时器即可,这里使用了16个通道,,
	//HAL_ADCEx_Calibration_Start(&hadc1,ADC_SINGLE_ENDED);  //校准按需使用
	HAL_TIM_Base_Start(&htim15);
	HAL_ADC_Start_DMA(&hadc1,(uint32_t*)adc_buf,16); 

你可能感兴趣的:(单片机,笔记,stm32,嵌入式硬件)