STC8H系列的高级PWM,连续输出0或1有2种方法(以PWM1P为例):
1、使用PWMx_ENO禁止输出PWM,对应IO成为 ...
你好,梁工。
第一个方式,里面第二段,P10 = 0; 之后关闭PWM,P1.0为什么会输出5ms的高电平呢?能不能解释一下? haishi28 发表于 2025-8-29 15:14
你好,梁工。
第一个方式,里面第二段,P10 = 0; 之后关闭PWM,P1.0为什么会输出5ms的高电平呢?能不能解 ...
PWMA_ENO |= 0x01; // 允许PWM1P输出
delay_ms(5); // P1.0输出PWM 5ms
P10 = 0; // P1.0输出低电平
PWMA_ENO &= ~0x01;// 关闭PWM输出
delay_ms(5); // P1.0输出低电平5ms 梁工 发表于 2025-8-29 15:18
PWMA_ENO |= 0x01; // 允许PWM1P输出
delay_ms(5); // P1.0输出PWM 5ms
P10 = 0; ...
谢谢梁工。我还想确认一下,是不是就一直低电平输出了?直到新的语句控制该管脚。
另外,是不是推挽输出和准双向两种配置都可以?除了高阻输入不行,其他三种IO配置,有什么区别?哪种最推荐呢? haishi28 发表于 2025-8-29 15:32
谢谢梁工。我还想确认一下,是不是就一直低电平输出了?直到新的语句控制该管脚。
另外,是不是推挽输出 ...
1、会一直低电平输出,直到你改变它。
2、PWM我都建议设置为推挽输出,除非有特殊用途,并且有些型号是启动PWM后会固定推挽输出,IO设置无效。 梁工 发表于 2025-8-29 23:51
1、会一直低电平输出,直到你改变它。
2、PWM我都建议设置为推挽输出,除非有特殊用途,并且有些型号是启 ...
谢谢梁工。
还有两个问题:
一个是,在系统时钟固定的情况下,我想改变PWM的频率,就是通过修改预分频器、自动重装载寄存器,这两个寄存器就可以了吧? 比较寄存器是用来跟自动重装载寄存器配合改变占空比的,我的理解对吗?
另外一个是,PWM相关的寄存器的复位值,8H的手册里,我没有找到,请您帮忙看一下。
haishi28 发表于 2025-9-4 11:27
谢谢梁工。
还有两个问题:
1、理解正确。
2、寄存器上电复位后通常是0。我推荐用到的寄存器都自己初始化一遍。
页:
1
[2]