基于灵动微电子MM32F013系列ADC任意通道工作模式在MCU的应用场景中,处处都有用到ADC,比如电池电量的采集、温度采集、电机应用中电流检测等等。MM32F013x的ADC模块新增了任意通道工作模式,支持在多种应用场景中更灵活的应用;本文灵动微电子代理英尚微针对任意通道工作模式,分享在MM32F013系列上实现任意通道工作模式的使用与具体配置。
任意顺序多通道功能 在MM32F013x系列的MCU中新增了ADC对任意通道的支持,在任意通道配置(ADC_ANY_CR.CHANY_MDEN)使能后,其优先级高于常规通道配置,后续的转换按任意通道配置的方式转换。
任意通道模式支持单次转换模式、单周期转换模式和连续扫描模式。
A/D转换开始条件: •软件启动 •外部触发启动,且软件可配置外部触发延时 •Timer1/2/3匹配或TRGO信号,外部EXTI信号源
相关的寄存器 具体功能与详细描述,请参考MM32F013x系列的用户手册。
任意通道工作模式 1、单次转换模式 在单次转换模式下,A/D转换相应通道上只执行一次,具体流程如下: •软件设置寄存器ADC_ANY_CFG,ADC_CHANY0,ADC_CHANY1,设置转换通道,置位CHANY_MDEN。(单次转换模式,只需设置CHANY_SEL0) •通过软件、外部触发输入及定时器溢出置位ADCR寄存器的ADST,开始A/D转换。 •A/D转换完成时,A/D转换的数据值将存储于数据寄存器ADDATA和ADDRn中。 •A/D转换完成时,状态寄存器ADSTA的ADIF位置1。若此时控制寄存器ADCR的ADIE位置1,将产生AD转换结束中断请求。 •A/D转换期间,ADST位保持为1。A/D通道采样结束后,ADST位自动清0,A/D转换器进入空闲模式。 •若在A/D转换过程中,软件更新ADC_ANY_CFG,ADC_CHANY0,ADC_CHANY1,硬件不会立即更新这些配置,只会在当前设置的通道都转换结束时更新,然后等待下一次软件置位ADST。 该模式仍然支持通过过配置当外部事件(比如TIMTrig或EXTI)触发转换时序。
单周期扫描模式 在单周期扫描模式下,A/D转换相应通道上执行一遍按配定顺序的转换,具体流程如下: •软件设置寄存器ADC_ANY_CFG,ADC_CHANY0,ADC_CHANY1,将需要转换的通道、数量设置好,然后置位CHANY_MDEN。 •通过软件、外部触发置位ADCR寄存器的ADST,外部触发可软件配置触发延时,A/D转换方向从CHANY_SEL0到CHANY_SEL15,转换通道数量由CHANY_NUM配置,且CHANY_SEL0到CHANY_SEL15是任意配置的,可以完全相同,或完全不相同。 •每路A/D转换完成时,A/D转换的数据值将有序装载到相应通道的数据寄存器中,ADIF转换结束标志被设置,若此时控制寄存器ADCR的ADIE位置1,将产生AD转换结束中断请求。 •A/D最后一个通道采样结束后,ADST位自动清0,A/D转换器进入空闲模式。 •若在A/D转换过程中,软件更新ADC_ANY_CFG,ADC_CHANY0,ADC_CHANY1,硬件不会立即更新这些配置,只会在当前设置的通道都转换结束时更新,然后等待下一次软件软件置位ADST。 在一些场景中,需要在执行一遍上述采样后,对采样顺序做调整;或减少采样通道数,以减少采样总体时间,可以通过简单的配置一两个寄存器实现灵活的配置;
3、连续扫描模式 在连续扫描模式下,A/D转换通道依软件配置一直执行,直到软件禁止。具体流程如下: •软件设置寄存器ADC_ANY_CFG,ADC_CHANY0,ADC_CHANY1,将需要转换的通道、数量设置好,然后置位CHANY_MDEN。 •通过软件、外部触发置位ADCR寄存器的ADST,外部触发可软件配置触发延时,A/D转换方向从CHANY_SEL0到CHANY_SEL15,转换通道数量由CHANY_NUM配置,且CHANY_SEL0到CHANY_SEL15是任意配置的,可以完全相同,或完全不相同。 •每路A/D转换完成时,A/D转换的数据值将有序装载到相应通道的数据寄存器中,ADIF转换结束标志被设置,若此时控制寄存器ADCR的ADIE位置1,将产生AD转换结束中断请求。 •通过软件、外部触发置位ADCR寄存器的ADST,外部触发可软件配置触发延时,A/D转换方向从CHANY_SEL0到CHANY_SEL15,转换通道数量由CHANY_NUM配置,且CHANY_SEL0到CHANY_SEL15是任意配置的,可以完全相同,或完全不相同。 •只要ADST位保持为1,持续进行A/D转换。当ADST位被清0,当前A/D转换完成后停止,A/D转换器进入空闲状态。 •若在A/D转换过程中,软件更新ADC_ANY_CFG,ADC_CHANY0,ADC_CHANY1,硬件不会立即更新这些配置,只会在当前设置的通道都转换结束时更新,即下一个扫描周期开始新的通道转换。 应用还可以结合外部触发功能与DMA传输功能,实现TIM触发多通道ADC转换,DMA装载数据的功能。
文章分类:
产品资讯
|