TI Stellaris LM4 PWM输出问题

2019-08-06 17:08发布

void PWM0_Configure(void)
{
        //使能PWM外设
        SysCtlPeripheralEnable(SYSCTL_PERIPH_PWM);
        //使能GPIO管脚
        SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOD);
        //配置GPIO管脚的PWM复用功能
        GPIOPinConfigure(GPIO_PD2_WT3CCP0);
        //选择管脚作为硬件外设控制
        GPIOPinTypePWM(GPIO_PORTD_BASE,GPIO_PIN_2);       
        //设置PWM系统时钟
        SysCtlPWMClockSet(SYSCTL_PWMDIV_1);
        //配置pwm模块的工作模式
        PWMGenConfigure(PWM_BASE,PWM_GEN_0,PWM_GEN_MODE_DOWN|PWM_GEN_MODE_NO_SYNC);
        //PWM发生器周期配置
        //IN this case you get: (1/250Hz)*16MHz=64000 cycles.
        //T = 4(ms)
        PWMGenPeriodSet(PWM_BASE,PWM_GEN_0,64000);
        //设置输出PWM的高电平宽度,宽度值是PWM计数器的计时时钟数
        PWMPulseWidthSet(PWM_BASE,PWM_OUT_0,16000);
        //使能PWM输出管脚
        PWMOutputState(PWM_BASE,PWM_OUT_0_BIT,true);
        //开启PWM发生器的定时计数器
        PWMGenEnable(PWM_BASE,PWM_GEN_0);
}
以上是我PWM初始化的代码,用示波器检测输出信号,发现输出一直为高电平,调试了很久了,一直没找到原因,遇到类似情况的或者了解的可以交流下
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。