有谁懂stm32单片机采集16路电压

核心提示看教程呀,先整单通道的。单通道的还是挺简单的。stm32单片机的 ADC比较复杂,就 在于它有三个ADC,各个ADC之间可相互独立,又可联合工作加上触发方式 触发顺序多样,还弄出个注入通道 规则通道,因此让人看了头晕。我整理的一些东西可供

看教程呀,先整单通道的。单通道的还是挺简单的。

stm32单片机的 ADC比较复杂,就 在于它有三个ADC,各个ADC之间可相互独立,又可联合工作

加上触发方式 触发顺序多样,还弄出个注入通道 规则通道,因此让人看了头晕。我整理的一些东西可供参考。

ADC笔记

大容量STM 32有3个ADC模块 ADC1和ADC2 ADC3

每个模块可采集22个通道,其中分为规则组和注入组

规则组有18个通道,其中外部16个

注入组有4个通道

规则组所有通道共用一个寄存器来保存转换结果,而注入组刚好有4个转换结果寄存器与其对应

规则组有个寄存器可设置要转换的通道数量,并有相应的寄存器来配置采集通道顺序

如第一次采集的通道号是多少 0-15

如第二次采集的通道号是多少 0-15

…

如第16次采集的通道号是多少 0-15

注入组也有同样的配置寄存器,只不过数量少了几个

对于每个ADC工作模式有如下几种:

单次转换模式,启动一次只转换一个通道,可以是规则通道也可是注入通道

连续转换模式,当前转换结束,马上启动第二次转换可以是规则通道也可是注入通道

扫描模式 一次触发转换多个通道,对于规则组,一般要设置DMA模式以便每个通道转换结束,及时将转换结果转移到内存中去

对于注入组由于只有4个通道并且有4个存储转换结果的寄存器,因此无需配置DMA,可以等全部通道转换完成后发生中断时,来读取结果

注入组可以单独触发,也可以跟随规则组自动触发,这样一次触发即可连续采集20个通道

间断模式 规则组一次触发采集不大于8个通道,例如规则组有12个通道要转换,每次触发采集3个通道,4次触发采集完毕

对于注入组每次触发采集一个通道,例如要采集通道0,2,3

第一次触发采集0通道,第二次触发采集2通道

第三次触发采集3通道,第四次触发又采集0通道

触发 每个ADC模块均可有多种触发信号源,有来自定时器的和外部的,也可软件触发

对于有两个ADC模块的芯片ADC1为主模块,ADC2为从模块

它们之间可以独立工作,也可相互配合工作

相互工作方式有:

同步注入模式 即触发ADC1时,ADC2也被同时触发

触发间隔要保证较长序列模块能够完成转换

同步规则模式 对于规则组即触发ADC1时,ADC2也被同时触发,每次(每个或每2个通道)转换结束,产生DMA请求,但传输结果是32位的

快速交替模式 对于规则组 一般只用于一个通道

触发ADC1后,延时7个周期后ADC2触发 

如: ADC1-0 ADC2-0 ADC1-0 ADC2-0

ADC1-0 ADC2-0都转换完成产生中断和32位DMA请求

慢速交替模式 对于规则组 一般只用于一个通道

触发ADC1后,延时14个周期后ADC2触发 

交替触发模式 对于注入组

第一次触发ADC1注入组所有通道被转换

第二次触发ADC2注入组所有通道被转换

第三次触发ADC1注入组所有通道再次被转换

模拟看门狗

当ADC转换结果高于或低于设定的阀值,会产生中断

模拟看门狗警戒的通道可设置为:

所有注入通道

所有规则通道

所有注入通道和规则通道

单一的注入通道

单一的规则通道

单一的规则或注入通道

对齐方式:ADC的注入和规则通道转换结果寄存器均是低16位有效,但转换结果均为12 位,因此可设置为左对齐和右对齐 为0是右对齐

 
友情链接
鄂ICP备19019357号-22