logo资料库

TM4C123G定时器配置步骤.doc

第1页 / 共2页
第2页 / 共2页
资料共2页,全文预览结束
1.使能时钟 2.使能定时器 3.定时器功能配置 4.使能定时器中断 5.注册中断语句 6.全局中断开启 7.定时器中断开启 注意:在 start_up.s 文件里声明中断语句 例子:定时器中断使两灯交替闪烁 void Timer0IntHandler(); int main(void) { SysCtlClockSet(SYSCTL_SYSDIV_5|SYSCTL_USE_PLL|SYSCTL_XTAL_16MHZ|SYSCTL_OSC_MAIN); SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOB); GPIOPinTypeGPIOOutput(GPIO_PORTB_BASE, GPIO_PIN_4|GPIO_PIN_5); SysCtlPeripheralEnable(SYSCTL_PERIPH_TIMER0); TimerConfigure(TIMER0_BASE, TIMER_CFG_PERIODIC); TimerLoadSet(TIMER0_BASE, TIMER_A, SysCtlClockGet()/2-1); IntEnable(INT_TIMER0A); TimerIntEnable(TIMER0_BASE, TIMER_TIMA_TIMEOUT); IntMasterEnable(); IntRegister(INT_TIMER0A,Timer0IntHandler); TimerEnable(TIMER0_BASE, TIMER_A); GPIOPinWrite(GPIO_PORTB_BASE,GPIO_PIN_4,GPIO_PIN_4); GPIOPinWrite(GPIO_PORTB_BASE,GPIO_PIN_5,0); while(1) { } } void Timer0IntHandler(void) { TimerEnable(TIMER0_BASE, TIMER_A); TimerIntClear(TIMER0_BASE,TIMER_TIMA_TIMEOUT); GPIOPinWrite(GPIO_PORTB_BASE,GPIO_PIN_4|GPIO_PIN_5,(~GPIOPinRead(GPIO_PORTB_BASE,GPIO_PIN_ 4|GPIO_PIN_5))); }
分享到:
收藏