您好!
我不熟悉 MSP430。 我希望有2个 PWM 信号。 其中一个具有25kHz、占空比为60%、位于 P1.1引脚上。 另一个具有0.016Hz、P2.1引脚上占空比为75%。
这是我要做的。 它非常笨拙。
#include int main (void) { WDTCTL = WDTPW + WDTHOLD; //P2.1和 P2.2 P2DIR |= 0x07; // ///PWM P1DIR |= 0x04; //将 P1.1设置为输出方向 P1SEL |= 0x04; // P1.1 TA0.1选项 CCR0 = 38; // PWM 周期 CCTL1 = OUTMOD_7; // CCR1复位/置位 CCR1 = 23; // PWM 60% TACTL = tassel_2 + MC_1; // SMCLK、 针对(;) {的向上计数模式 volatile unsigned int i、j; J = 70; I = 10000; //延迟 操作 { J-; 执行(i -); while (i!= 0); } while (j!= 0); P2OUT ^= 0x07; // PS12和 LED 关闭 J = 23; I = 10000; //延迟 操作 { J-; 执行(i -); while (i!= 0); } while (j!= 0); P2OUT ^= 0x07; // PS12和 LED 亮起 }
我们是否有更好的方法来实现该功能?
25kHz PWM 的精度非常差、因为 SMCLK 大约为1MHz。 如何提高 CLK 频率?
谢谢、
小明