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

8g2k64s4的两个pwm输出互相干扰

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

2

主题

1

回帖

15

积分

新手上路

积分
15
发表于 2025-3-29 11:48:24 | 显示全部楼层 |阅读模式
采用pwm1和pwm54引脚,输出模式为推挽输出,输出频率固定为1kHz,占空比为50%,工作时序为pwm1使能——pwm1停止——pwm54使能——pwm54停止,每个工作时间为5ms,一直循环。问题是在pwm1使能输出时,pwm54输出幅值较低的pwm信号;在pwm54使能时,pwm1也输出幅值较低的pwm信号。而屏蔽掉其中一个引脚,输出变正常了,或者把两个引脚从推挽输出改成准双向口也可以变正常。下面是用示波器采集到不正常的输出波形。

微信图片_20250329112851.jpg

回复

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:156
  • 最近打卡:2025-04-29 00:51:09

24

主题

229

回帖

1281

积分

金牌会员

积分
1281
发表于 2025-3-29 13:56:46 | 显示全部楼层
在STC8G2K64S4微控制器中,PWM1和PWM54引脚在使用推挽输出模式时出现相互干扰的问题,可能由以下几个原因引起:

1. 电源和地线噪声:当两个PWM输出同时工作时,可能会在电源和地线上产生较大的噪声,从而影响另一个PWM输出的幅值。建议检查电源和地线的布局,确保它们具有足够的去耦电容,以减少噪声干扰。

2. 引脚驱动能力:推挽输出模式下,引脚具有较高的驱动能力,但同时也会产生较大的电流变化,可能导致相互干扰。可以尝试在PWM输出引脚上串联一个小电阻(如10-100Ω),以减缓电流变化速度,减少干扰。

3. PWM模块配置:检查PWM模块的配置,确保PWM1和PWM54的时钟源和分频器设置正确。如果时钟源或分频器设置不当,可能会导致PWM信号的不稳定或相互干扰。

4. 时序控制:在PWM1使能和PWM54使能之间增加一段延迟时间,以确保一个PWM输出完全停止后再启动另一个PWM输出。建议在每个PWM停止后增加1-2ms的延迟,以确保信号完全稳定。

5. 引脚复用和冲突:检查PWM1和PWM54的引脚是否与其他功能复用,是否存在潜在的冲突。确保在配置PWM输出时,其他功能已被禁用。

6. 硬件布局:检查PCB布局,确保PWM1和PWM54引脚的走线尽可能短且平行,减少相互之间的电磁干扰。如果有条件,可以考虑使用屏蔽层或增加地线隔离。

7. 软件优化:在代码中增加对PWM输出的控制逻辑,确保在切换PWM输出时,先关闭当前PWM输出,等待一段时间后再开启另一个PWM输出。这样可以减少瞬态干扰。

8. 使用准双向口模式:如果问题仍然无法解决,可以考虑将PWM1和PWM54的输出模式从推挽输出改为准双向口模式。准双向口模式的驱动能力较低,但可以减少相互干扰。

综上所述,通过优化电源和地线布局、调整引脚驱动能力、检查PWM模块配置、增加时序控制延迟、优化硬件布局和软件控制逻辑,可以有效减少PWM1和PWM54之间的相互干扰。如果问题仍然存在,可以尝试使用准双向口模式作为临时解决方案。

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

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:50
  • 最近打卡:2025-04-30 22:59:03

73

主题

5882

回帖

1万

积分

超级版主

积分
12073
发表于 2025-3-29 15:25:06 | 显示全部楼层
你是不是不输出时设置为高阻?
PWM对地接一个5.1K电阻再看看。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:1
  • 最近打卡:2025-03-29 11:48:24
已绑定手机

2

主题

1

回帖

15

积分

新手上路

积分
15
发表于 2025-3-29 16:22:03 | 显示全部楼层
梁*** 发表于 2025-3-29 15:25
你是不是不输出时设置为高阻?
PWM对地接一个5.1K电阻再看看。

梁工,你好,我在初始化时就设置的是推挽输出,后面没改过,然后按照你说的对地接了5.1k电阻,问题还是存在

点评

会不会是测量问题?IO口要么输出高,要么输出低,没办法输出一个1V左右的电平的。  详情 回复 发表于 2025-3-29 17:49
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:50
  • 最近打卡:2025-04-30 22:59:03

73

主题

5882

回帖

1万

积分

超级版主

积分
12073
发表于 2025-3-29 17:49:25 | 显示全部楼层
52*** 发表于 2025-3-29 16:22
梁工,你好,我在初始化时就设置的是推挽输出,后面没改过,然后按照你说的对地接了5.1k电阻,问题还是存 ...

会不会是测量问题?IO口要么输出高,要么输出低,没办法输出一个1V左右的电平的。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:1
  • 最近打卡:2025-03-29 11:48:24
已绑定手机

2

主题

1

回帖

15

积分

新手上路

积分
15
发表于 2025-3-29 17:58:05 | 显示全部楼层
梁*** 发表于 2025-3-29 17:49
会不会是测量问题?IO口要么输出高,要么输出低,没办法输出一个1V左右的电平的。 ...

单独输出一个pwm就没问题,两个pwm一起输出就会出现上述问题

点评

内部电路,硬件上是完全独立的。  详情 回复 发表于 2025-3-29 18:54
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:50
  • 最近打卡:2025-04-30 22:59:03

73

主题

5882

回帖

1万

积分

超级版主

积分
12073
发表于 2025-3-29 18:54:49 | 显示全部楼层
52*** 发表于 2025-3-29 17:58
单独输出一个pwm就没问题,两个pwm一起输出就会出现上述问题

内部电路,硬件上是完全独立的。你还是再仔细检查一下吧。
回复 支持 反对

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2025-5-2 01:55 , Processed in 0.127297 second(s), 96 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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