= =..做了做PWM的实验..翻阅StellarisWare的文档直接奔着Chapter 21 PWM那一章去了,写好代码上电,,没反应,,,调试,,发现进入了系统错误中断...
搞了半天才知道原来LM4F120没有PWM模块,还是得用定时器...晕..
ROM_SysCtlClockSet(SYSCTL_SYSDIV_2_5 | SYSCTL_USE_PLL | SYSCTL_XTAL_16MHZ | //80mhz
SYSCTL_OSC_MAIN);
SysCtlPeripheralEnable(SYSCTL_PERIPH_TIMER0);
SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOF);
GPIOPinConfigure(GPIO_PF1_T0CCP1);
GPIOPinTypeTimer(GPIO_PORTF_BASE, GPIO_PIN_1); //PF1
TimerConfigure(TIMER0_BASE, TIMER_CFG_SPLIT_PAIR|TIMER_CFG_B_PWM);
TimerLoadSet(TIMER0_BASE, TIMER_B, 50000);
TimerMatchSet(TIMER0_BASE, TIMER_B, 40000); // PWM
TimerEnable(TIMER0_BASE, TIMER_B);
一般就是这样启动的了.
但有一个疑问.
输出反相怎么设置?手册上说写TnPWML位设置输出正反相.可是在StellarisWare里面找不到相关的函数啊,,还得自己写寄存器..有大神找到么?
此帖出自
小平头技术问答
一周热门 更多>