[請問] NCU240 如何啟動 PWM 輸出 ?

gamester |浏览773次
收藏|2018/08/03 11:22

我寫了簡單的 Test Code 由 sample code(Smpl_Basic01_PWMDAC)改的 , 但 IO pin (PWM0) 卻一直沒有輸出, 什麼地方錯了 ???
Thanks !!!

main()

{

SYS_Init();


CLK_SetModuleClock( PWM01_MODULE, CLK_CLKSEL1_PWM01_S_HIRC, 0);

CLK_EnableModuleClock( PWM01_MODULE );

SYS->GPA_MFP = SYS_GPA_MFP_PA12_PWM0;


PWM_ConfigOutputChannel( PWMA,0,1000000,50 );

PWM_SET_DIVIDER( PWMA, 0, PWM_CLK_DIV_1 );

PWM_SET_PRESCALER( PWMA, 1, 0 );

PWM_SET_CNR(PWMA, 0, 120);

PWM_SET_CMR(PWMA, 0, 60);

        PWM_Start(PWMA, 0x01);

PWM_EnableOutput(PWMA, 0x01);

GPIO_SetMode(PB, 4, GPIO_PMD_OUTPUT); //LED1

while(1)

        {

PB4 ^= 1;

         PWM_SET_CMR(PWMA, 0, 60);

};

}


满意回答

2022/09/06 14:12

建议你先测试新唐BSP软件包中的PWM例程,然后再例程基础上,一步步改成你想要的功能。


也可以按以下步骤排查:

1,用Debug时打开PinView  查看引脚功能配置是否正确

2,看CLK寄存器组里PWM时钟是否使能。

3,然后看PWM 寄存器是否按代码中变化,相应的PWM 通道是否使能。

3,在Debug 状态,若发现哪个寄存器值不对,可即时修改。


jamesliu

其他回答(0)
0人关注该问题
+1
 加载中...