找回密码
 立即注册
查看: 703|回复: 8

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

[复制链接]
  • TA的每日心情
    开心
    2024-4-12 20:06
  • 签到天数: 6 天

    [LV.2]偶尔看看I

    4

    主题

    13

    回帖

    194

    积分

    注册会员

    积分
    194
    发表于 2023-2-19 21:34:22 | 显示全部楼层 |阅读模式
    上图先

    2.jpg

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

    回复 送花

    使用道具 举报

    该用户从未签到

    552

    主题

    9541

    回帖

    1万

    积分

    管理员

    积分
    14056
    发表于 2023-2-19 23:11:27 | 显示全部楼层
    1.png
  • TA的每日心情
    开心
    2024-4-12 20:06
  • 签到天数: 6 天

    [LV.2]偶尔看看I

    4

    主题

    13

    回帖

    194

    积分

    注册会员

    积分
    194
     楼主| 发表于 2023-2-20 19:45:22 | 显示全部楼层

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

    该用户从未签到

    552

    主题

    9541

    回帖

    1万

    积分

    管理员

    积分
    14056
    发表于 2023-2-20 21:40:43 | 显示全部楼层
    可以自己侦测自己下降沿还是上升沿的

    该用户从未签到

    552

    主题

    9541

    回帖

    1万

    积分

    管理员

    积分
    14056
    发表于 2023-2-20 21:42:37 | 显示全部楼层
    1.png

    你多看看,我老了,不做具体的软件,不学习同事的程序了
  • TA的每日心情
    开心
    3 天前
  • 签到天数: 101 天

    [LV.6]常住居民II

    41

    主题

    1016

    回帖

    6973

    积分

    荣誉版主

    冲哥视频教程和各种开源资料QQ交流群884047237,可群

    积分
    6973
    QQ
    发表于 2023-2-22 17:28:00 | 显示全部楼层
    1.png

    PWM有比较中断的模式,计数器到达设定值可以触发比较中断,这里你完全可以用比较中断的。
  • TA的每日心情
    开心
    2024-4-12 20:06
  • 签到天数: 6 天

    [LV.2]偶尔看看I

    4

    主题

    13

    回帖

    194

    积分

    注册会员

    积分
    194
     楼主| 发表于 2023-5-26 20:54:13 | 显示全部楼层
    电子DIY小家 发表于 2023-2-22 17:28
    PWM有比较中断的模式,计数器到达设定值可以触发比较中断,这里你完全可以用比较中断的。
    ...

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

    点评

    定时读取ADC的话, 1.PWM 可以触发adc采样,但是像你说的T1采集通道1,T2采集通道2 的貌似不行,可以周期性的通道1和2交替采样 2.可以用DMA采集adc,可以用多通道的自动连续转换,可以直接取平均值 3.定时器控制触发  详情 回复 发表于 2023-5-29 15:21
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    3 天前
  • 签到天数: 101 天

    [LV.6]常住居民II

    41

    主题

    1016

    回帖

    6973

    积分

    荣誉版主

    冲哥视频教程和各种开源资料QQ交流群884047237,可群

    积分
    6973
    QQ
    发表于 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.定时器控制触发采样,频率低的话可以用这个
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    2024-4-12 20:06
  • 签到天数: 6 天

    [LV.2]偶尔看看I

    4

    主题

    13

    回帖

    194

    积分

    注册会员

    积分
    194
     楼主| 发表于 2023-6-2 00:45:40 | 显示全部楼层
    本帖最后由 菜鸟大神 于 2023-6-2 00:47 编辑
    图解.png 电子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能不能实现,这几天有空再研究
    谢谢版主解惑
    回复 支持 反对 送花

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|手机版|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

    GMT+8, 2024-5-20 13:28 , Processed in 0.076914 second(s), 68 queries .

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

    快速回复 返回顶部 返回列表