滴答定时器可作为实时体系的滴答时钟。MDK新建工程完成后,增加core_me.h到工程,static __INLINE uint32_t SysTick_Config(uint32_t ticks),在core_m3.h文件中。初始化时分调用即可。然后直接增加定时器中止处理函数即可。
/* * main.c: the main file * NXP --> LPC1768** * Author : light * Date : 2012-4-16 **/#includevolatile uint32_t msTicks; /* counts 1ms timeTicks *//*----------------------------------------------------------------------------SysTick_Handler*----------------------------------------------------------------------------*//Descriptions :SysTick interrupt handleparameters :NoneReturned value :None*/void SysTick_Handler(void) {msTicks++; /* increment counter necessary in Delay() */}/*------------------------------------------------------------------------------delays number of tick Systicks (happens every 1 ms)*------------------------------------------------------------------------------*/__INLINE static void Delay (uint32_t dlyTicks) {uint32_t curTicks; curTicks = msTicks; // 获取当时值while ((msTicks - curTicks) < dlyTicks); //等候,即延时}/Descriptions :Function that initializes LEDsparameters :NoneReturned value :None*/void DelayMs(unsigned int m){int i,j;for(i=m;i>0;i--){for(j=3000;j>0;j--);}}/Descriptions :Function that initializes LEDsparameters :NoneReturned value :None*/void LedInit(void) {// PINSEL4,PINSEL5 设定P2.0 -- P2.32 端口功用(00,01,10,11)LPC_PINCON->PINSEL4 = 0XFC000000; // p2.0--p2.13设置为IO LPC_PINCON->PINMODE4 = 0XFC000000; // p2.0--p2.13设置为上拉电阻使能LPC_GPIO2->FIODIR = 0X000000FF; // p2.0--p2.7设置为输出}/Descriptions :Function that LED onparameters :n , which led is onReturned value :None*/void LedNOn(unsigned int n){LPC_GPIO2->FIOSET = (1< FIOCLR = (1< =0;loc--){LedNOn(loc);Delay(1000);LedNOff(loc);Delay(1000);}}}