完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
在STM32芯片的ADC应用中,我们往往会利用定时器来触发ADC的启动转换,而能够触发ADC转换的定时器事件往往有多个,有时我们可能很关注这些定时器事件在触发ADC时有哪些时序上的差别。下面以STM32G4芯片为例,来大致聊聊该话题。
这里选择TIM1来触发ADC。我们从手册或CubeMx配置界面不难看到可用来触发ADC的定时器事件可以是定时器TRGO信号和通道CC事件/信号,而TRGO可能来自定时器的使能动作、定时器的更新事件、通道输出比较事件、通道比较输出参考信号以及编码时钟。 这里先重点就Update事件、通道OCx信号和OCxREF信号作为TRGO来触发ADC,看看相应的触发时间点在哪里。 另外,作为ADC的外部触发事件还有个触发极性选择的配置。这点我们可用从CubeMx配置界面直观看到,如下图所示,可以选择上沿触发、下沿触发或双沿触发。 我这里将TIM1配置为向上计数模式,基于PWM1模式,极性选择为0的条件下,让CH1输出PWM信号,以便观察不同定时器事件及配置对ADC触发时序的影响。 1、当选择Update Event做为TIM1的TRGO,同时TRGO作为ADC的外部触发事件时,不论ADC的触发极性如何选择,都确定在定时器发生更新事件时触发ADC,即下图红色箭头所指位置。 2、当选择OC1做为TIM1的TRGO,同时TRGO作为ADC的外部触发事件时,不论ADC的触发极性如何选择,都确定在定时器发生比较事件时触发ADC,即上图绿色箭头所指位置。 3、当选择OC1REF做为TIM1的TRGO,同时TRGO作为ADC的外部触发事件时,此时ADC的触发时间点还跟ADC的触发极性选择有关,如果选择上升沿触发,ADC触发则发生在上图中的红色箭头处,反之则发生在绿色箭头处,如果选择双沿触发,则上图中红色箭头、绿色箭头处都会触发ADC转换。 上面主要介绍的是ADC触发信号源于定时器的TRGO,如果说ADC的触发信号不是来自TRGO而是来自开篇提到的通道CC事件呢。定时器CC事件包括IC事件【input Capture】和OC事件【output compare】。这里IC事件是不能作为ADC触发源的,那我们看看OC事件作为ADC的触发源的情况,即像下面的配置。 经验证测试,这里选择OC1作为ADC触发源时的情形跟前面选择OC1ref作为TRGO去触发ADC的情形是一样的,具体触发点跟ADC配置的触发极性选择有关,即上面的第三种情形。 看到这里,有人或许会问,既然这两组情形的结果是一样的,为什么配置里面不拿掉一项呢?不过,我们要知道,OCx与OCxref可能一样也可能不一样,具体取决于OC输出时的极性配置。上面我们测得两组情形是一样,刚好是因为OCx与OCxref完全同相,如果调整极性选择,触发时间点就会不一样了,结果就会刚好反过来。毕竟实际应用是千变万化的,说不定哪里就能派上用场。 诚然,STM32系列众多,相应技术手册内容丰富而庞大,细节也多,个别细节可能描述未必很详尽,此时我们实际验证下或许更清晰。 |
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1125 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1149 浏览 1 评论
581 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
436 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1041 浏览 2 评论
1626浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
289浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
297浏览 3评论
286浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
262浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-8-22 10:28 , Processed in 0.608088 second(s), Total 44, Slave 38 queries .
Powered by 电子发烧友网
© 2015 www.ws-dc.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号