STM32处理器AD难度整理
1.STM32的AD变化,任务组可以转换成两组:规则组和注射组。随机序列按随机顺序变换多种渠道构成了一组转换。例如。能够完成转换中,例如按照以下顺序:通道3、通道8、通道2、通道2、通道0、通道2、通道2、通道15。在执行规则通道组扫描转换。换。能够模糊的将注入组的转换理解为AD转换的中断一样,规则通道组的转换是普通转换,然而注入组的转换条件满足的情况下,注入组的转换会打断规则组的转换。假设规则转换已经在执行。为了在注入转换后确保同步,全部的ADC(主和从)的规则转换被停止,并在注入转换结束时同步恢复。
规则转换和注入转换均有外部触发选项,规则通道转换期间有DMA请求产生,而注入转换则无DMA请求,须要用查询或中断的方式保存转换的数据。
2.规则组:此模式通过设置ADC_CR1寄存器上的DISCEN位激活。它能够用来运行一个短序列的n次转换(n<=8)。此转换是ADC_SQRx寄存器所选择的转换序列的一部分。数值n由ADC_CR1寄存器的DISCNUM[2:0]位给出。
一个外部触发信号能够启动ADC_SQRx寄存器中描写叙述的下一轮n次转换,直到此序列全部的转换完毕为止。总的序列长度由ADC_SQR1寄存器的L[3:0]定义。
举例: n=3,被转换的通道 = 0、1、2、3、6、7、9、10 第一次触发:转换的序列为 0、1、2 第二次触发:转换的序列为
3、6、7 第三次触发:转换的序列为 9、10,并产生EOC事件 第四次触发:转换的序列 0、1、2,依次类推。
注入组:此模式通过设置ADC_CR1寄存器的JDISCEN位激活。
在一个外部触发事件后,该模式按通道顺序逐个转换ADC_JSQR寄存器中选择的序列。
一个外部触发信号能够启动ADC_JSQR寄存器选择的下一个通道序列的转换。直到序列中全部的转换完毕为止。总的序列长度由ADC_JSQR寄存器的JL[1:0]位定义。
样例: n=1,被转换的通道 = 1、2、3 第一次触发:通道1被转换 第二次触发:通道2被转换 第三次触发:通道3被转换,而且产生EOC和JEOC事件 第四次触发:通道1被转换。也是依次类推。
3.STM32的ADC的工作模式:
单次转换模式:转换一次则停止;
连续转换模式:转换完一次后即開始下一次转换。
扫描模式:扫描一组模拟通道。
间断模式:每触发一次。转换序列中n个通道。
4.由于规则通道转换的值储存在一个仅有的数据寄存器中。所以当转换多个规则通道时须要使用DMA,这能够避免丢失已经存储在ADC_DR寄存器中的数据。仅仅有在规则通道的转换结束时才产生DMA请求,并将转换的数据从ADC_DR寄存器传输到用户指定的目的地址。
注: 仅仅有ADC1和ADC3拥有DMA功能。由ADC2转化的数据能够通过双ADC模式,利用ADC1的DMA功能传输。
5.双ADC模式
(1)同步注入模式:此模式转换一个注入通道组。外部触发来自ADC1的注入组多路开关(由ADC1_CR2寄存器的JEXTSEL[2:0]选择)。它同一时候给ADC2提供同步触发。
注意: 不要在2个ADC上转换同样的通道(两个ADC在同一个通道上的採样时间不能重叠)。
(2)同步规则模式:此模式在规则通道组上运行。外部触发来自ADC1的规则组多路开关(由ADC1_CR2寄存器的EXTSEL[2:0]选择),它同一时候给ADC2提供同步触发。
(3)高速交叉模式:此模式仅仅适用于规则通道组(通常为一个通道)。外部触发来自ADC1的规则通道多路开关。
外部触发产生后:
A.ADC2马上启动而且
B.ADC1在延迟7个ADC时钟周期后启动
注意:最大同意採样时间<7个ADCCLK周期。避免ADC1和ADC2转换同样通道时发生两个採样周期的重叠。
(4)慢速交叉模式:此模式仅仅适用于规则通道组(仅仅能为一个通道)。
外部触发来自ADC1的规则通道多路开关。外部触发产生后:
A.ADC2马上启动而且
B.ADC1在延迟14个ADC时钟周期后启动
C.在延迟第二次14个ADC周期后ADC2再次启动,如此循环。
(5)交替触发模式:此模式仅仅适用于注入通道组。
外部触发源来自ADC1的注入通道多路开关。
A.当第一个触发产生时,ADC1上的全部注入组通道被转换。
B.当第二个触发到达时。ADC2上的全部注入组通道被转换。
C.如此循环……
(6)独立模式:此模式里。双ADC同步不工作,每一个ADC接口独立工作。
(7)混合的规则/注入同步模式:规则组同步转换能够被中断,以启动注入组的同步转换。
(8)混合的同步规则+交替触发模式:规则组同步转换能够被中断,以启动注入组交替触发转换。 显示了一个规则同步转换被交替触发所中断。
(9)混合同步注入+ 交叉模式:一个注入事件能够中断一个交叉转换。这样的情况下。交叉转换被中断,注在开始转换,在注射序列的一端插入,交叉转换恢复。
版权声明:本文博客原创文章。博客,未经同意,不得转载。
STM32处理器AD难度整理的更多相关文章
- 64脚和小于64脚的STM32进行AD时注意,参照电源处理方法(转)
源:64脚和小于64脚的STM32进行AD时注意,参照电源处理方法 请注意,ADC_IN17上没有内部基准,将其说成基准电压概念不对. 所以横线以下的理解不对,如果将其做为参考,则其电压假定按1.2V ...
- STM32采集AD的输入阻抗问题
在做一款消费电子产品时,需要采集电池电压(3.3V-4.2V),同时在休眠的时候希望尽量减小待机电流.电池电压采集电路采用两个1%的300K电阻进行分压,由该电路引起的待机电路为4.2/(300+30 ...
- STM32中AD采样的三种方法分析
在进行STM32F中AD采样的学习中,我们知道AD采样的方法有多种,按照逻辑程序处理有三种方式,一种是查询模式,一种是中断处理模式,一种是DMA模式.三种方法按照处理复杂方法DMA模式处理模式效率最高 ...
- LPC同STM32的比较
Cortex-M3是新兴起来的一种ARM7的核,而ARM7TDMI是一种传统的经典的ARM内核.我们就抛开这一切,来比较一下两则的异同. 我们就在以下平台上比较吧: STMicoelectronics ...
- 自学stm32的一些个人经验
1.首先我们先看看与STM32相关的文档 我们假定大家已经对STM32的书籍或者文档有一定的理解.如不理解,请立即阅读STM32的文档,以获取最基本的知识点. 如果你手上拥有ST官方主推的STM32神 ...
- 学习STM32单片机,从菜鸟到牛人就是这样简单(配视频资料)
我想说,为了学习单片机而去学习单片机的思路不对. 你问,如何系统地入门学习stm32? 本身就是一个错误的问题.假如你会使用8051 , 会写C语言,那么STM32本身并不需要刻意的学习. 你要考虑的 ...
- stm32专属于菜鸟的学习方法
1.首先我们先看看与STM32相关的文档 我们假定大家已经对STM32的书籍或者文档有一定的理解.如不理解,请立即阅读STM32的文档,以获取最基本的知识点. 如果你手上拥有ST官方主推的STM32神 ...
- 如何迅速入门STM32
我想说,为了学习单片机而去学习单片机的思路不对. 你问,如何系统地入门学习stm32? 本身就是一个错误的问题.假如你会使用8051 , 会写C语言,那么STM32本身并不需要刻意的学习. 你要考虑的 ...
- STM32试题及答案
一.选择题 1.Cortex-M处理器采用的架构是( D ) (A)v4T (B)v5TE (C)v6 (D)v ...
随机推荐
- Vue源码--深入模板渲染
原文链接:https://geniuspeng.github.io/2018/02/07/vue-compile/ 之前整理了vue的响应式原理,在这里有一点是一直很模糊的,就是何时去new一个wat ...
- 【心情】"支NMLGB配树”
大视野oj坏了 那就做杭电呗 看看大触都做杭电里的哪些题 看到杭电的分类了 Tarjan算法诶,我好像会嘛,就是你了 诶,怎么不是求强连通分量? 哦,原来是Tarjan算法的另外一个应用叫做支配树 我 ...
- php实现 求int型数据在内存中存储时1的个数(函数都可自己实现)
php实现 求int型数据在内存中存储时1的个数(函数都可自己实现) 一.总结 一句话总结:函数我们自己都可以实现,尤其是很多基础函数,没有工具的时候自己写. 1.php进制转换函数? base_co ...
- vimrum
# Insert your preferred key mappings here.unmap <a-O>map <a-O> closeOtherTabsmap , previ ...
- DWG 对象与ArcGIS 要素的强制对应关系
转自原文DWG 对象与ArcGIS 要素的强制对应关系 DWG 对象与ArcGIS 要素的强制对应关系如下: Feature type DWG object types Point Point, ...
- [Grid Layout] Use the repeat function to efficiently write grid-template values
We can use the repeat() function if we have repeating specifications for columns and rows. With the ...
- JavaStuNote 4
装箱(inbox)和拆箱(outbox) 代表了类类型和基本类型之间的转换行为. 手动版本号: Integer b = new Integer(10); Int a = b.intValue; 自己主 ...
- 【vs调试】PDB 文件:每个开发人员都必须知道的
[vs调试]PDB文件:每个开发人员都必须知道的 GDB:The GNU Project Debugger, 将会包含代码中符号(自定义变量, 数据类型), 还有函数调用或类引用的关联性, 有了pdb ...
- AJAX简介(转)
AJAX全称为“Asynchronous JavaScript and XML”(异步JavaScript和XML),是一种创建交互式网页应用的网页开发技术.它使用:使用XHTML+CSS来表示信息: ...
- 开源库Fab-Transformation简单使用解析
转载请注明出处王亟亟的大牛之路 相似于IPhone的悬浮按钮的操作,仅仅只是是固定的,当然经过自己的改动也能够动.这边仅仅是给伸手党一个福祉,外加加上一些自己的理解.让大家能够拿来就用.看了就懂,废话 ...