标题: 聊聊ST MCU定时触发ADC的话题 [打印本页]

作者: taoran    时间: 2015-12-19 15:02
标题: 聊聊ST MCU定时触发ADC的话题
本文作者:Miler Shao
某工程师利用STM8S芯片开发产品,想用定时器定时触发ADC采样。技术资料上也说是可以通过TIM1的TRGO触发AD采样,可发现根本不定时采样。

他确认正确配置了TIM1并使其正常工作,定时溢出,同时在ADC相关寄存器里也做了外部触发使能和触发源[TIM1 TRGO]的选择。


按理说,到此应该可以正常定时AD采样了,可往往好事多磨。结果并不是所期待的定时AD采样。

后来发现问题出在TRGO事件这个地方,误以为TIM1每次溢出就会产生所期待的TRGO事件。其实,事实并非如此。


显然,对于TIM1,TRGO的事件源有多个选项可以选择,默认状态时只有RESET事件才产生TRGO ,这分明不是当事人所期望的,应该配置为UPDATE 事件才合适。客户工程师增加相关代码后正常运作。

说实在的,对于操作寄存器的人来说,尤其头次使用该功能的话的确容易出现类似上面的疏忽。当然,如果用STM32系列的MCU做同样的事情,也有类似的配置问题,即除了使能外部触发和选择外部触发事件TRGO外,还要记得对TRGO事件的进一步选择配置,默认的可能并非你要的。


作者: 来来去去    时间: 2017-12-9 20:20
您好 请问所谓的update事件是什么意思呢,我也遇到了这个问题,按照您帖子的方法解决了,但是没有看懂这个所谓的update事件是什么含义,我之前的理解就是定时器溢出就会触发TRGO,能解释一下update事件的意思吗
作者: 来来去去    时间: 2017-12-9 20:20
求讲解一下这个所谓的update事件是什么含义啊 跪求
作者: 紫焕    时间: 2021-9-22 17:08
来来去去 发表于 2017-12-9 20:20
求讲解一下这个所谓的update事件是什么含义啊 跪求

就是计数器达到设定值,需要更新计数器(或者叫重载),就可以认为是一个更新时间




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1