PWM 问题咨询和 BUG 反馈

发布于 2022-05-25 08: 49: 02

关于 PWM 的几个问题:
1, tls_pwm_cap_init 函数中, 设置输出状态为三态的那个地方, 加了个判断, 只有通道 0 设置, 这是为什么? 这样导致通道 4 不能捕获, 如果不加判断两个通道就都可以. 是不是软件 BUG?
2, 设置 PWM 连续输出的问题, 经测试 tls_pwm_init 函数的最后一个参数 pnum 必须设为 0, 才可以连续输出, 是这样的吗?
3, 我用到的 PWM 捕获, 由于待测信号频率范围较宽, 而且经常快速变化, 咨询一下, 是不是可有办法获取溢出次数? 这样低频的时候根据溢出次数和捕获值可以准确判断测量频率.

查看更多

关注者
1
被浏览
2. 3k
Mrzhao
Mrzhao 认证专家 2022-05-25
一个嵌入式爱好者. CSDN 主页: https: //blog. csdn. net/qq_37280428? spm=1011. 2415. 3001. 5343

第一个问题: 我大概看了一下程序, 有通道 4, 你在初始化哪里可以把 if 判断删除掉, cmd 函数中有判断是否为 0 和 4. 我也怀疑是 bug. . . . . @isme 快来解答
image. png

第二个问题: 0 表示持续输出, 我方式就吃了这个亏. , . . . .
image. png
还有一个坑:
image. png
这里当 duty 设置为 0, PWM 就 stop 了, 所以, 要把这几句屏蔽掉, 否者下次使用你还要 start.

第三个问题:
溢出次数.
我看手册发现这个, 你定时去读取这里的数据, 判断是否溢出, 手动清除. 然后多次计数实现? @isme @ZYQ 两位大佬觉得这样可行不? ? ?
image. png

1 个回答

撰写答案

请登录后再发布答案, 点击登录

发布
问题

分享
好友

手机
浏览

扫码手机浏览