ST意法半导体
直播中

笑尽往事

9年用户 878经验值
擅长:可编程逻辑 电源/新能源
私信 关注
[问答]

小白求助怎样去解决STM32G4定时器更新触发ADC转换的问题

你好 ;
我正在尝试配置ADC1ADC2模块以通过tim1_trgo2触发它们以启动双重同步常规转换,但直到现在才成功。
在我尝试这样做之前,我验证了我可以使用主模块的“ ADSTART ”位通过软件触发器成功触发这些模块并获得结果。
这是配置方案;
ADC1配置为仅转换 1 个通道 ( ADC1_IN1 ) ,ADC2也配置为转换一个通道 ( ADC2_IN2 ) ,两个通道的“常规通道序列长度”设置为0,众所周知,两个通道都是快速 ADC 通道,而不是其中之一那些慢的,所以转换持续时间是相等的
两个通道都配置为在硬件过采样器模式下进行转换,128次转换并将结果移位7,启用ROVSE
RCC_CCIPR中选择ADC 时钟作为“系统时钟选择为ADC1/2 时钟”。ADC_CCR,CKMODE设置为“ 00 ”(异步时钟模式),预分频器使用ADC_CCR_PRESC位设置为6 。
根据我上面解释的方案,使用master 的ADSTART位一切正常。
但是当我添加代码时
EXTSEL = 10tim1_trgo2在“ 10 ”线上相互连接,用于ADC1/2常规转换​​),
EXTEN=1(上升沿)到 ADC1 和 ADC2

TIM1 , CR2 , MMS2= [0010]
更新 - 更新事件被选为触发输出 (tim_trgo2)。例如,一个
然后主定时器可以用作从定时器的预分频器。
我的 ADC 模块根本没有被触发……我几乎用勘误表阅读了整个数据表,但找不到让它工作的方法。定时器也被启用,并且通过引脚切换上的范围观察周期性定时器中断。(所以我们知道发生了更新事件)


回帖(1)

王桂香

2022-12-2 15:38:56
使用master 的ADSTART位一切正常。
您仍然需要使用外部触发设置 ADSTART,请参阅RM 中 ADC 章节的Conversion on external trigger and trigger polarity (EXTSEL, EXTEN,JEXTSEL, JEXTEN)子章节。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分