主题中讨论的其他器件:EK-TM4C123GXL、 TM4C123、 EK-LM4F120XL、
大家好、 我正在尝试编写一个简单的程序、该程序将占空比设置为每秒递减10、因此引脚 B0将以其淡出的方式驱动 LED、然后在达到0%占空比后返回100%占空比。 首先、我只是尝试驱动输出引脚以实现恒定(40%)占空比。 但是,每次我调用 PWMGenConfigure()时,我都会得到一个 HardFault。 这是使用通道0初始化 PWM 模块的代码。
void initPWM() { SysCtlPWMClockSet(SYSCTL_PWMDIV_1); SysCtlPeripheralEnable(SYSCTL_PERIPH_PWM0); SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOB); GPIOPinConfigure(GPIO_PB6_M0PWM0); GPIOPinTypePWM(GPIO_PORTB_BASE,GPIO_PIN_6); PWMGenConfigure(PWM0_BASE,PWM_GEN_0,PWM_GEN_MODE_DOWN); //set 1 lkHZ PWM frequency (16,000 / 16,000,0000) = 1 kHZ PWMGenPeriodSet(PWM0_BASE, PWM_GEN_0, 160000); //set duty cycle to 40 % by loading in 6400 to PWM0CMPA. Every time we have had 6400 positive pulses in a frequency of 16,000, we will reset, meaning we were driving the pin high for 40% of the PWM period PWMPulseWidthSet(PWM0_BASE,PWM_OUT_0,6400 - 1); }