找回密码
 立即注册

QQ登录

只需一步,快速开始

开启左侧

[M051] 为什么M0518的PF5配成PWM输出一直输出0V

[复制链接]
匿名  发表于 2024-5-11 23:32:05 |阅读模式

               
    /* Enable PWM1 clock source */
    CLK_EnableModuleClock(PWM1_MODULE);
               
                /* Select PWM module clock source */
    //CLK_SetModuleClock(PWM0_MODULE, CLK_CLKSEL3_PWM0_S_HClK, 0);
    CLK_SetModuleClock(PWM1_MODULE, CLK_CLKSEL3_PWM1_S_PCLK, 0);

    /* Reset PWM0 */
    SYS_ResetModule(PWM1_RST);
                    /* Update System Core Clock */
    /* User can use SystemCoreClockUpdate() to calculate PllClock, SystemCoreClock and CycylesPerUs automatically. */
    //SystemCoreClockUpdate();
    PllClock        = PLL_CLOCK;            // PLL
    SystemCoreClock = PLL_CLOCK / 1;        // HCLK
    CyclesPerUs     = PLL_CLOCK / 1000000;  // For SYS_SysTickDelay()
               
               
          /* Set GPA multi-function pins for PWM1 Channel 2 */
    SYS->GPA_MFP &= ~(SYS_GPA_MFP_PA10_Msk);
    SYS->GPA_MFP |= (SYS_GPA_MFP_PA10_PWM1_CH2);

               
          /* Set GPA multi-function pins for PWM1 Channel 5 */
    SYS->GPF_MFP &= ~(SYS_GPF_MFP_PF5_Msk);
    SYS->GPF_MFP |= (SYS_GPF_MFP_PF5_PWM1_CH5);

SYS->ALT_MFP3 |= SYS_ALT_MFP3_PA10_PWM1_CH2;
SYS->ALT_MFP3 |= SYS_ALT_MFP3_PF5_PWM1_CH5;











                               
PWM_ConfigOutputChannel(PWM1, 2, 100, 99);
PWM_EnableOutput(PWM1, PWM_CH_2_MASK);                                     
PWM_Start(PWM1, PWM_CH_2_MASK);

                 
                 
PWM_ConfigOutputChannel(PWM1, 5, 1000, 55);
PWM_EnableOutput(PWM1, PWM_CH_5_MASK);
PWM_Start(PWM1, PWM_CH_5_MASK);




为什么PWM1_CH2输出正常可控, 但PWM1_CH5输出一直为0V?



回复

使用道具

chrishu 发表于 7 天前 | 显示全部楼层
看起来配置是对的。是不是其他代码里将PF5配置成了其他功能?附件是我这里测试正常的代码 main.zip (2.22 KB, 下载次数: 2)
回复 支持 反对

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies |上传

本版积分规则

新唐MCU