菜鸟大神 发表于 2023-2-19 21:34:22

请教,STC32G如何获取PWM开通和关断的时候进行中断

上图先



我现在PWMA用26号中断,获取的是T1开始进入中断,然后直到T2结束,再次T1开始才会再次中断,
现在想在T2开始获得一个flag,最好也是中断,也就是T1开始一个中断,T2开始一个中断,
大佬们看看能实现吗?

神农鼎 发表于 2023-2-19 23:11:27


菜鸟大神 发表于 2023-2-20 19:45:22

神农鼎 发表于 2023-2-19 23:11

大佬 这个 是输入捕获,我的环境是PWM输出,
目前可以实现在周期开始的时候进行一次中断,
但是无法获取它关断的时间

神农鼎 发表于 2023-2-20 21:40:43

可以自己侦测自己下降沿还是上升沿的

神农鼎 发表于 2023-2-20 21:42:37



你多看看,我老了,不做具体的软件,不学习同事的程序了

电子DIY小家 发表于 2023-2-22 17:28:00



PWM有比较中断的模式,计数器到达设定值可以触发比较中断,这里你完全可以用比较中断的。

菜鸟大神 发表于 2023-5-26 20:54:13

电子DIY小家 发表于 2023-2-22 17:28
PWM有比较中断的模式,计数器到达设定值可以触发比较中断,这里你完全可以用比较中断的。
...

您好 我看一下相关手册,有点迷糊,其实我主要是为了在T1开始的时候读ADC1通道,T2开始的时候读ADC2通道,不知道有没有类似例程参考
比较输出模式我看了看 似乎讲的是控制PWM输出电平,而我只是需要在对应的时间点读取ADC值,不去控制PWM通道输出电平

电子DIY小家 发表于 2023-5-29 15:21:04

菜鸟大神 发表于 2023-5-26 20:54
您好 我看一下相关手册,有点迷糊,其实我主要是为了在T1开始的时候读ADC1通道,T2开始的时候读ADC2通道 ...

定时读取ADC的话,
1.PWM 可以触发adc采样,但是像你说的T1采集通道1,T2采集通道2 的貌似不行,可以周期性的通道1和2交替采样
2.可以用DMA采集adc,可以用多通道的自动连续转换,可以直接取平均值
3.定时器控制触发采样,频率低的话可以用这个

菜鸟大神 发表于 2023-6-2 00:45:40

本帖最后由 菜鸟大神 于 2023-6-2 00:47 编辑

电子DIY小家 发表于 2023-5-29 15:21
定时读取ADC的话,
1.PWM 可以触发adc采样,但是像你说的T1采集通道1,T2采集通道2 的貌似不行,可以周期 ...
以前用STM8是用的定时器输出100hz基准波 然后读两个ADC通道数据,

现在看STC的PWM挺有意思,就想尝试一下,目前我用向上计数模式,开比较中断,溢出中断,利用两个中断,实现了同样的效果,图上效果可看,因为有一些滤波算法,ADC1 和ADC2花了3ms多,后面还有个ADC3读按键 目前测试效果还算满意
这两天看了很多资料,还没理清楚不知道DMA或者直接PWM触发ADC能不能实现,这几天有空再研究
谢谢版主解惑
页: [1]
查看完整版本: 请教,STC32G如何获取PWM开通和关断的时候进行中断