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难度整理的更多相关文章

  1. 64脚和小于64脚的STM32进行AD时注意,参照电源处理方法(转)

    源:64脚和小于64脚的STM32进行AD时注意,参照电源处理方法 请注意,ADC_IN17上没有内部基准,将其说成基准电压概念不对. 所以横线以下的理解不对,如果将其做为参考,则其电压假定按1.2V ...

  2. STM32采集AD的输入阻抗问题

    在做一款消费电子产品时,需要采集电池电压(3.3V-4.2V),同时在休眠的时候希望尽量减小待机电流.电池电压采集电路采用两个1%的300K电阻进行分压,由该电路引起的待机电路为4.2/(300+30 ...

  3. STM32中AD采样的三种方法分析

    在进行STM32F中AD采样的学习中,我们知道AD采样的方法有多种,按照逻辑程序处理有三种方式,一种是查询模式,一种是中断处理模式,一种是DMA模式.三种方法按照处理复杂方法DMA模式处理模式效率最高 ...

  4. LPC同STM32的比较

    Cortex-M3是新兴起来的一种ARM7的核,而ARM7TDMI是一种传统的经典的ARM内核.我们就抛开这一切,来比较一下两则的异同. 我们就在以下平台上比较吧: STMicoelectronics ...

  5. 自学stm32的一些个人经验

    1.首先我们先看看与STM32相关的文档 我们假定大家已经对STM32的书籍或者文档有一定的理解.如不理解,请立即阅读STM32的文档,以获取最基本的知识点. 如果你手上拥有ST官方主推的STM32神 ...

  6. 学习STM32单片机,从菜鸟到牛人就是这样简单(配视频资料)

    我想说,为了学习单片机而去学习单片机的思路不对. 你问,如何系统地入门学习stm32? 本身就是一个错误的问题.假如你会使用8051 , 会写C语言,那么STM32本身并不需要刻意的学习. 你要考虑的 ...

  7. stm32专属于菜鸟的学习方法

    1.首先我们先看看与STM32相关的文档 我们假定大家已经对STM32的书籍或者文档有一定的理解.如不理解,请立即阅读STM32的文档,以获取最基本的知识点. 如果你手上拥有ST官方主推的STM32神 ...

  8. 如何迅速入门STM32

    我想说,为了学习单片机而去学习单片机的思路不对. 你问,如何系统地入门学习stm32? 本身就是一个错误的问题.假如你会使用8051 , 会写C语言,那么STM32本身并不需要刻意的学习. 你要考虑的 ...

  9. STM32试题及答案

    一.选择题 1.Cortex-M处理器采用的架构是(  D  ) (A)v4T               (B)v5TE              (C)v6                (D)v ...

随机推荐

  1. <p><img src="http://img.blog.csdn.net/20150823142545135?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt=""></p>

    /* 实现功能:用顺序表实现栈的各种操作 编译环境:Windows 64b,vc6.0 日期: 2015/7/20 作者:wtt561111 */ #define stack_max_num 10 # ...

  2. java开发SSM框架的搭建(SpringMVC+Spring+MyBatis)

    因为某些原因,重装系统,java-web开发尽管顺手,但烦人的一点是开发环境的搭建.几乎相同折腾了一整天,笔者在这里把SSM开发环境的搭建又一次清理一遍,以飨读者.也供自己以后參考.善于总结,是做好每 ...

  3. [Angular] Configurable NgModules

    You probably have seen 'foorRoot()' method a lot inside Angular application. Creating a configurable ...

  4. IIS最大并发连接数 = 队列长度 + IIS最大并发工作线程数

    深入理解IIS的多线程工作机制   首先让我们来看看IIS里面的这2个数字:最大并发连接数,队列长度.先说这2个数字在哪里看. 最大并发连接数:在IIS中选中一个网站,右键网站名称,在右键菜单中找到并 ...

  5. [内核编程] 4.1 技术原理 & 4.2 键盘过滤框架

    4.1 技术原理 & 4.2 键盘过滤框架 4.1 预备知识 符号链接:符号链接其实就是一个“别名”.可以用一个不同的名字来代表一个设备对象(实际上),符号链接可以指向任何有名字的对象. Zw ...

  6. [Angular Directive] 1. Write an Angular Directive

    Angular 2 Directives allow you manipulate elements by adding custom behaviors through attributes. Th ...

  7. Use Word 2010's Navigation Pane to quickly reorganize documents

    Use Word 2010's Navigation Pane to quickly reorganize documents http://www.techrepublic.com/blog/mic ...

  8. 使用Kotlin开发Android

    查看我的所有开源项目[开源实验室] 欢迎增加我的QQ群:[201055521],本博客client源代码下载[请点击] 摘要 我首先声明我并没有使用Kotlin非常长时间,我差点儿是在学习的同一时候写 ...

  9. MySQL慢日志的相关参数

    slow-query-log = on #开启MySQL慢查询功能 slow_query_log_file = /data/mysql/testdb-slow.log #设置MySQL慢查询日志路径 ...

  10. Centos 6.x 配置hadoop的环境变量

    1.安装jdk 原来是用的rpm安装的1.7,所以先使用rpm -qa|grep jdk,找到安装的1.7后 rpm -e --nodeps xxx.使用securecrt把官网下载的jdk-8u18 ...