找回密码
 立即注册
查看: 489|回复: 6

关于STC8H的PWM捕获问题

[复制链接]
  • 打卡等级:初来乍到
  • 打卡总天数:2
  • 最近打卡:2024-07-27 09:46:27

4

主题

15

回帖

90

积分

注册会员

积分
90
发表于 2024-7-27 10:01:33 | 显示全部楼层 |阅读模式
1、是否可以同时实现捕获PWM,又输出PWM,是否如网上所说,捕获的最大脉宽受到输出的周期的影响,AB两个计数不是独立的吗?
2、计数器何时清零,是周期计数吗?这样如何持续采样PWM信号
3、看到最新8H手册中23.10.11的例程中,同时采集脉宽和周期,上升沿复位计数是通过设置从模式控制寄存器实现,但是在选择触发源的时候,只有TI1FP1\TI2FP2\TI5FP5\TI6FP6,没有用到PWM7对应的TI7FP7,是不是只有提到的四个触发源能够实现该功能。
5、手册中多次提到复位触发信号设置,但是没有明确说明在哪里设置,具体是怎么设置呢,就是刚才提到在从模式寄存器哪里设置吗?

麻烦大神们帮忙解答一下,
实测过程中,我的PWM输入信号时这样的:
MAP001.BMP
我在中断中反转了IO输出,程序如下:
void PWMB_ISR() interrupt 27        
        {
           if(PWMB_SR1 & 0x08)
                {
                PWMB_SR1=0;
                work_led_r=~work_led_r;
                }

        }
但是我监测到IO的输出是这样的:
MAP003.BMP
请问大神们,这是什么原因:


回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:435
  • 最近打卡:2025-04-30 08:43:23

33

主题

2351

回帖

4860

积分

论坛元老

积分
4860
发表于 2024-7-27 10:44:37 | 显示全部楼层
根据我的理解,,
1. PWMA与PWMB是两个独立的计数器  如果 你用PWMA作为PWM输出  PWMB作为捕获应该不会出现周期影响的问题,但是 如果你用 PWMA的PWM1P PWM2P输出 PWM3P PWM4P输入捕获 因为计数器只有一个所以会有周期问题。  
2.计数器何时清零,,论单方向计数的话 向上到上溢才有清零这么一说,,如果你选择向下计数,那就不叫清零了,,既然你看过手册了,那就应该清楚计数的方式 在 《时基单元》  这个章节中有详细的描述。。
至于你想的连续采样PWM信号,是不是可以解释为 在计数器不停止的的情况下,采集到一个边沿就将计数值保存?如果是这个问题的话可以选择开启更新中断,再更新中断中加入一个计数变量,然后边沿触发中断后将当前PWM的计数值与这个计数变量进行计算然后保存。。反正就是如何处理这个溢出值的问题。
3.5.剩下的所说的我就没有用过了,,等等大佬们来回答把,,至于找不到什么意思的,,可以关注一下描述里的英文缩写 通过文档全局搜索的功能找到其介绍的位置
参考例程并不是对技术参 考手册的补充,而是对技术参 考手册的解释。
技术参 考手册不应该需要参考例程作为补充,而是解释成了参考例程的样子
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:2
  • 最近打卡:2024-07-27 09:46:27

4

主题

15

回帖

90

积分

注册会员

积分
90
发表于 2024-7-27 11:06:21 | 显示全部楼层
_奶*** 发表于 2024-7-27 10:44
根据我的理解,,
1. PWMA与PWMB是两个独立的计数器  如果 你用PWMA作为PWM输出  PWMB作为捕获应该不会出现 ...

非常感谢,本以为一天搞定的问题,干了三天了,当初做PWM输出的时候就忙活了好几天,我查查,有没有可能是寄存器冲突了,软件触发了中断事件,但是我已经关闭了XFR的访问,我再查查,非常感谢
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:51
  • 最近打卡:2025-05-02 10:07:51

73

主题

5883

回帖

1万

积分

超级版主

积分
12079
发表于 2024-7-27 15:53:29 | 显示全部楼层
1、是否可以同时实现捕获PWM,又输出PWM,是否如网上所说,捕获的最大脉宽受到输出的周期的影响,AB两个计数不是独立的吗?
答:PWMA、PWMB是两个完全独立的外设,互不影响。比如你可以PWMA输出PWM,PWMB捕获外部信号的周期和占空比。捕获的最大脉宽就是你设置的周期计数器的最大值,一般用于捕获的话,设置为65535比较好。而统一组PWM,可以输出PWM同时也可以捕获(不要自动清零计数器),捕获最大值就是PWM周期值。

2、计数器何时清零,是周期计数吗?这样如何持续采样PWM信号
答:计数器计到设置的ARR值+1就会归0。测周期时也会自动归0.
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:435
  • 最近打卡:2025-04-30 08:43:23

33

主题

2351

回帖

4860

积分

论坛元老

积分
4860
发表于 2024-7-27 17:52:25 | 显示全部楼层
梁*** 发表于 2024-7-27 15:53
1、是否可以同时实现捕获PWM,又输出PWM,是否如网上所说,捕获的最大脉宽受到输出的周期的影响,AB两个计 ...

确认一下 您说的是向上计数模式下把
希望我这里几天的学习是对的....
参考例程并不是对技术参 考手册的补充,而是对技术参 考手册的解释。
技术参 考手册不应该需要参考例程作为补充,而是解释成了参考例程的样子
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:2
  • 最近打卡:2024-07-27 09:46:27

4

主题

15

回帖

90

积分

注册会员

积分
90
发表于 2024-9-11 10:54:49 | 显示全部楼层
梁*** 发表于 2024-7-27 15:53
1、是否可以同时实现捕获PWM,又输出PWM,是否如网上所说,捕获的最大脉宽受到输出的周期的影响,AB两个计 ...

哈喽,梁工,现在发现一个问题,当启动ADC的时候,就会一直进PWMB捕获中断,您遇到这个问题吗?
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:2
  • 最近打卡:2024-07-27 09:46:27

4

主题

15

回帖

90

积分

注册会员

积分
90
发表于 2024-9-11 11:24:36 | 显示全部楼层
梁*** 发表于 2024-7-27 15:53
1、是否可以同时实现捕获PWM,又输出PWM,是否如网上所说,捕获的最大脉宽受到输出的周期的影响,AB两个计 ...

哦,搞定了,设置一下中断优先级好了
回复 支持 反对

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2025-5-3 00:41 , Processed in 0.137931 second(s), 88 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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