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.

PWM输出配置问题!!!!!!!!!!!!!!



SysCtlPWMClockSet(SYSCTL_PWMDIV_1);//²»·ÖƵ
SysCtlPeripheralEnable(SYSCTL_PERIPH_PWM0);
SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOF);
// GPIODirModeSet(GPIO_PORTF_BASE, GPIO_PIN_0|GPIO_PIN_1,GPIO_DIR_MODE_OUT);
// GPIOPadConfigSet(GPIO_PORTF_BASE, GPIO_PIN_0|GPIO_PIN_1,GPIO_STRENGTH_2MA, GPIO_PIN_TYPE_STD_WPU);
GPIOPinConfigure(GPIO_PF0_M0PWM0);
GPIOPinConfigure(GPIO_PF1_M0PWM1);
GPIOPinTypePWM(GPIO_PORTF_BASE,GPIO_PIN_0);
GPIOPinTypePWM(GPIO_PORTF_BASE,GPIO_PIN_1);
PWMGenConfigure(PWM0_BASE, PWM_GEN_0, PWM_GEN_MODE_UP_DOWN |PWM_GEN_MODE_NO_SYNC);//PWM¶¨Ê±Æ÷µÄ¼ÆÊýģʽΪµÝ¼õ¼ÆÊýģʽ|Òì²½¸üÐÂģʽ
/*ÉèÖÃPWMÊä³öΪ250hz*/
PWMGenPeriodSet(PWM0_BASE, PWM_GEN_0, (1/250)*25000000);//(N = (1 / f) * SysClk)//PWMÖÜÆÚÅäÖÃ

PWMPulseWidthSet(PWM0_BASE, PWM_OUT_0,PWMGenPeriodGet(PWM0_BASE, PWM_OUT_0) / 4);//Õ¼¿Õ±È25%
PWMPulseWidthSet(PWM0_BASE, PWM_OUT_1,PWMGenPeriodGet(PWM0_BASE, PWM_OUT_1) / 5);//20%
PWMOutputState(PWM0_BASE, PWM_OUT_0_BIT, true);
PWMOutputState(PWM0_BASE, PWM_OUT_1_BIT, true);
PWMGenEnable(PWM0_BASE, PWM_GEN_0);//ʹÄܶ¨Ê±¼ÆÊýÆ÷