ADC的一些细节

一,输入通道

总共 2 个 ADC(ADC1,ADC2),每个 ADC 有 18 个转换通道: 16 个外部通道、 2 个内部通道(温度传感器、内部参考电压)

ADC1和ADC2的通道都相同,是采用分时复用来使用的

外部的16个通道在转换时又分为规则通道和注入通道,其中规则通道最多有16路,注入通道最多有4路。

二,转换顺序

每个 ADC 规则通道只有一个数据寄存器,16个通道一起共用这个寄存器,所以需要指定规则转换通道的转换顺序。

**规则通道中的转换顺序由三个寄存器控制:SQR1、SQR2、SQR3,**它们都是32位寄存器。SQR寄存器控制着转换通道的数目和转换顺序,只要在对应的寄存器位SQx中写入相应的通道,这个通道就是第x个转换

和规则通道转换顺序的控制一样,注入通道的转换也是通过注入寄存器来控制,只不过只有一个JSQR寄存器来控制,控制关系如下:

注入序列的转换顺序是从JSQx[ 4 : 0 ](x=4-JL[1:0])开始。只有当JL=4的时候,注入通道的转换顺序才会按照JSQ1、JSQ2、JSQ3、JSQ4的顺序执行。

三,触发转换方法

  1. 通过向控制寄存器 ADC-CR2 的 ADON 位写 1 来开启 ADC ,再将 SWSTART 位置 1 ,启动规则通道转换

  2. 也可以通过外部事件(如定时器)进行转换

相关推荐
IT_阿水21 天前
STM32外设之ADC应用--寄存器开发
stm32·adc·外设·寄存器开发
大牛攻城狮25 天前
STM32CubeIDE使用ADC采用DMA重大BUG
stm32·dma·stm32cubemx·adc·stm32cubeide·生成代码bug·dma时钟未配置
mainbanp2 个月前
ADS1248 测电阻 0~10欧姆
adc·测电阻·恒流源·ads1248
通信小小昕2 个月前
基于I2S的音频ADC_DAC的_FPGA的驱动
fpga开发·音频·adc·fifo·dac·i2s
LaoZhangGong1232 个月前
STM32G474采用“多个单通道ADC转换”读取3个ADC引脚的电压
经验分享·stm32·单片机·嵌入式硬件·adc·stm32g474
guaizaiguaizai4 个月前
STM32之九:ADC模数转换器
stm32·单片机·嵌入式硬件·adc·模数转换器·逐次逼近型寄存器sar
XD7429716365 个月前
【TB作品】msp430f5529单片机,读取DHT11温湿度,读取adc,oled显示
单片机·adc·oled·dht11
chaoguo12346 个月前
一文搞懂 ARM 64 系列: ADC
adc·arm64
鸿喵小仙女6 个月前
【HMGD】使用CubeMx配置GD32F303系列单片机进行DMA ADC
单片机·嵌入式硬件·adc·gd32