找回密码
 立即注册
查看: 94|回复: 2

请问STC8H4K64TLCD的PWMA模块用法

[复制链接]
  • 打卡等级:初来乍到
  • 打卡总天数:1
  • 最近打卡:2025-09-24 16:11:29
已绑定手机

1

主题

0

回帖

7

积分

新手上路

积分
7
发表于 2025-9-24 16:11:29 | 显示全部楼层 |阅读模式
我使用了PWMA模块的PWM输出功能和PWMA_4P_3的脉冲捕获下降沿的功能,发现这两个功能一起初始化的生活,会有一个失效,试验了好几种方式,都成功不了,请大神帮帮忙 6c721a80-7770-4bcb-b4eb-96867d1e0002.png

f3d9a027-68f4-4da5-9d67-bb946324ba40.png
8f981046-cb32-4af3-890c-4c87e127c887.png

回复

使用道具 举报 送花

3

主题

1880

回帖

608

积分

等待验证会员

积分
608
发表于 2025-9-24 16:12:00 | 显示全部楼层
关于STC8H4K64TLCD的PWMA模块使用问题,以下是一些可能的解决方案和建议:

1. 检查初始化顺序:在初始化PWMA模块时,确保先配置PWM输出功能,然后再配置脉冲捕获功能。这样可以确保两个功能都能正常工作。

2. 检查寄存器设置:请仔细检查与PWMA模块相关的寄存器设置,确保所有必要的位都被正确设置。特别是与PWM输出和脉冲捕获相关的位。

3. 检查中断设置:如果使用了中断来处理脉冲捕获事件,请确保中断使能位被正确设置,并且中断服务程序被正确编写。

4. 检查硬件连接:确保外部电路与PWMA模块的连接正确无误,包括电源、地线和信号线。

5. 参考数据手册:查阅STC8H4K64TLCD的数据手册,了解PWMA模块的具体用法和限制。数据手册通常会提供详细的寄存器描述和使用示例。

6. 寻求技术支持:如果以上方法都无法解决问题,建议联系STC的技术支持团队,他们可能会提供更专业的帮助。

希望这些建议能帮助您解决问题。

[本文内容由国芯人工智能辅助生成,仅供参考]
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:532
  • 最近打卡:2025-10-15 08:56:42
已绑定手机

47

主题

2274

回帖

7997

积分

论坛元老

积分
7997
发表于 2025-9-24 16:48:05 | 显示全部楼层
同组PWM捕获测量的周期值与PWM输出的周期相同,都是ARRH,ARRL。由于同一组的PWM输出和捕获同步,如果PWM输出直接反馈接入到同组PWM捕获接口,则每次捕获都刚好PWM溢出,计算出的周期值始终是0。
使能PWM输出时,如果使用同组PWM捕获外部输入信号有异常值,是由于在发生捕获动作时将当前的计数值保存到PWMx_CCRn里面,但由于使能了PWM输出,所以计数值到PWMx_ARR后就立即归零了(正常是计数到FFFF再归零,开启输出后计数值到ARR值就立即归零)。
解决方法:1. 同一组PWM里面如果要输出和捕获同时进行,将ARR设置为FFFF。
2. 修改捕获计数方法:cnt = ((cnt1 - cnt2) % (PWMA_ARR + 1));
3. 捕获/输出分开两组PWM,例如:PWMA捕获,PWMB输出。
三种方法都可以解决以上问题。

附件例子供参考

高级PWMA-捕获模式测量脉冲周期 - 同组同时输出PWM.zip

16.22 KB, 下载次数: 5

回复

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2025-10-16 10:26 , Processed in 0.113330 second(s), 60 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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