This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CCS/MSP432P401R:PWM 配置

Guru**** 2952510 points
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/956886/ccs-msp432p401r-pwm-config

器件型号:MSP432P401R

工具/软件:Code Composer Studio

您好!

我正在尝试使用 Timer A 生成 PWM。我将计时器 A 的时钟源设置为 SMCLK、将 SMCLK 的时钟源设置为 DCO 时钟。 我没有获得 PWM 信号。 引脚2.4始终设置为高电平。

以下是我对资源库中给出的示例执行的代码修改:

//![Simple Timer_A Config]
// Timer_A PWM 配置参数*/
Timer_A_PWMConfig pwmConfig =
{
Timer_A_CLOCKSOURCE_SMCLK、
Timer_A_CLOCKSOURCE_divider _1、
6000000、
Timer_A_CAPTURECOMPARE 寄存器_1、
Timer_A_OUTPUTMODE_RESET_SET、
3000000
};
//![Simple Timer_A 配置]

int main (void)
{
/*停止看门狗*/
MAP_WDT_A_HOLDTimer();

MAP_CS_setDCOCenteredFrequency (CS_DCO_FREQUENCY 12);

//![Simple Timer_A 示例]
//将 MCLK 和 SMCLK 设置为12MHz,DCO 时钟作为源
// MAP_CS_setReferenceOscillatorFrequency (CS_REFO_128KHZ);
MAP_CS_initClockSignal (CS_MCLK、CS_DCOCLK_SELECT、CS_CLOCK_DIVIDER_1);
MAP_CS_initClockSignal (CS_SMCLK、CS_DCOCLK_SELECT、CS_CLOCK_DIVIDER_1);
// MAP_PCM_setPowerState (PCM_AM_LF_VCORE1);

我只需设置 DCO 频率、然后在 initClockSignal 中将其用作 SMCLK 的时钟源。 此外、由于我的基本时钟为12MHz、我希望 PWM 时间周期为0.5秒、因此我给出了6000000作为节拍周期、3000000作为我的占空比节拍计数(50%)。

有人能帮我、告诉我哪里出错了吗?

谢谢你