找回密码
 立即注册
查看: 197|回复: 1

8051U高级PWM输出控制,关于PWM输出极性、中断处理和输出控制的疑问

[复制链接]
  • 打卡等级:常住居民III
  • 打卡总天数:172
  • 最近打卡:2025-05-01 10:06:01

44

主题

124

回帖

1437

积分

金牌会员

积分
1437
发表于 2024-12-28 11:05:40 | 显示全部楼层 |阅读模式

关于PWM输出极性和输出控制的疑问

已经用PWM8呈现出想要的简单结果,但是回过头来看,有些疑问。

实验环境

MCU:8051U

PWM输出通道:PWM8(B组,位于P0.7针脚)

实验目的

想用PWM8的输出控制led,呈现出渐明渐暗的效果,以指示mcu没有死机

遇到的问题

  1. URSB和UDISB的关系不清楚:

把UDISB置零的情况下,URSB可以是任意值(0或1),也可以不写关于PWMB的中断函数,对实验现象没影响。但是,如果把UDISB置位,将没有调制效果,不知道为什么。

针对这种情况,不处理PWMB的中断,有什么问题吗?想知道,想要获得PWM8的PWM输出,如何正确配置UDISB和URSB这2个bit位。

  1. 关于PWMB_IOAUX寄存器,手册中说当AUX8P置零时,PWM8 的输出只受ENO8P的控制。当我真把ENO8P bit位置零,而不去操作寄存器PWMB_BKR的MOEB bit位时,将P0.7(PWM8的输出端口)将得不到输出。实际情况是,不论AUX8P什么状态,都对PWM8的PWM输出没有控制,感觉哪里有冲突。是不是,PWM通道作为PWM输出目的时,不需要PWMn_IOAUX寄存器?

  2. 第28.7.7小节说,计数器开始之前,必须通过寄存器PWMB_EGR的UGB bit位初始化所有的寄存器,可实际中并没有操作它,仍然可以得到PWM8的PWM输出,难道是我理解出错了吗?

  3. OC8REF的输出电平和PWM8的PWM输出端口P0.7有什么关系?

  4. 最后一个问题,选择PWM8的PWM输出模式2,这种情况,当计数器的值小于PWMB_CCR8,OC8REF输出低(我理解的是P0.7也输出低)。但是,如果置位CC8P,将会得到相反的结果,那这不冲突了吗?

回复

使用道具 举报 送花

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

73

主题

5882

回帖

1万

积分

超级版主

积分
12073
发表于 2024-12-28 13:33:50 | 显示全部楼层
请参考我的例程:
02A-PWMB-4路单端PWM输出.rar (58.09 KB, 下载次数: 14)

回复 支持 反对

使用道具 举报 送花

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

本版积分规则

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

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

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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