STM32 ADC --- 知识点总结

STM32 ADC --- 知识点总结

文章目录

cubeMX中配置注解

  • cubeMX配置时,如果配置了多个转换通道,会自动将扫描模式配置为Enabled。

单次转换模式、连续转换模式、扫描模式

单通道采样的情况

例如:我们只配置了一个采样通道CH0
在只配置一个通道的情况下,扫描模式是不起作用的,因而对于单通道采样情形,只有下面两种情况:

单次转换模式:

每启动一次转换一次通道CH0

连续转换模式:

启动ADC后,便会一直转换通道CH0,在每次转换结束后如果没有及时将数据寄存器中的值读出来,会触发溢出(OVR)错误。(触发OVR错误后可以通过清除OVR标志位,并重新启动ADC采样的方式恢复)

多通道采样的情况

例如:我们配置了采样通道CH0和CH1

在使用多通道采样的情况下一般都会使能扫描模式,下面的讨论中我们也会分析下禁止扫描模式的情况。

这里我们首先要区分清楚连续转换模式扫描模式的作用:

  • 扫描模式:将配置的序列寄存器中所有的通道依次采样一遍。
  • 连续转换模式:在所有的通道采样结束后再次重新开始采样。
禁止扫描模式(单次转换模式或连续转换模式)

:这种情况其实和上面单通道采样情况是一样的,虽然配置了多个通道,但实际转换时只会转换第一个通道。

单次转换模式+扫描模式

这种模式是将序列寄存器中配置的所有通道扫描一次

c 复制代码
  hadc1.Init.ScanConvMode = ENABLE; //扫描模式
  hadc1.Init.ContinuousConvMode = DISABLE; //单次转换模式

实例可参考:STM32 ADC --- 多通道序列采样

连续转换模式+扫描模式

这种模式是将序列寄存器中配置的所有通道扫描一次,然后再重新扫描,一直重复。

这种情况最好使用DMA,否则容易触发数据溢出错误。

实例参考:STM32 ADC --- DMA采样

相关推荐
我不是帅戈3 小时前
STM32单片机内存分配详细讲解
stm32·单片机·嵌入式·内存管理·.map文件
inputA12 小时前
【LwIP源码学习6】UDP部分源码分析
c语言·stm32·单片机·嵌入式硬件·网络协议·学习·udp
剑鞘的流苏19 小时前
STM32-USART串口通信(9)
stm32·单片机·嵌入式硬件
憧憬一下21 小时前
stm32之FLASH
stm32·单片机·嵌入式
PAQQ1 天前
【python】windows实现与k230使用socket通信并传输文件
python·stm32·单片机
2301_800399721 天前
stm32 ADC单通道转换
stm32·单片机·嵌入式硬件
HHONGQI1231 天前
STM32 之网口资源
stm32·单片机·嵌入式硬件
GodKK老神灭1 天前
STM32 启动文件分析
stm32·单片机·嵌入式硬件
懒惰的bit1 天前
STM32F103C8T6板子使用说明
stm32·单片机·嵌入式硬件
阿川!2 天前
嵌入式软件--stm32 DAY7 I2C通讯上
stm32·单片机·嵌入式硬件·mcu