Revision 0:02022f4feae7, committed 2012-06-22
- Comitter:
- PA
- Date:
- Fri Jun 22 02:56:17 2012 +0000
- Commit message:
Changed in this revision
GetTickCount.cpp | Show annotated file Show diff for this revision Revisions of this file |
GetTickCount.h | Show annotated file Show diff for this revision Revisions of this file |
diff -r 000000000000 -r 02022f4feae7 GetTickCount.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/GetTickCount.cpp Fri Jun 22 02:56:17 2012 +0000 @@ -0,0 +1,5 @@ +volatile unsigned int TickCount; + +extern "C" void SysTick_Handler (void) { + TickCount+= 10; +} \ No newline at end of file
diff -r 000000000000 -r 02022f4feae7 GetTickCount.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/GetTickCount.h Fri Jun 22 02:56:17 2012 +0000 @@ -0,0 +1,31 @@ +/* mbed GetTickCount Library + * Copyright (c) 2010 Michael Wei + */ + +//shouldn't have to include, but fixes weird problems with defines +#include "LPC1768/LPC17xx.h" + +#ifndef MBED_TICKCOUNT_H +#define MBED_TICKCOUNT_H +extern volatile unsigned int TickCount; + +inline void GetTickCount_Start(void) { + //CMSIS SYSTICK Config + SysTick_Config(SystemCoreClock / 100); /* Generate interrupt every 10 ms */ +} + +inline void GetTickCount_Stop(void) { + SysTick->CTRL = (1 << SYSTICK_CLKSOURCE) | (0<<SYSTICK_ENABLE) | (0<<SYSTICK_TICKINT); /* Disable SysTick IRQ and SysTick Timer */ +} + +inline void GetTickCount_Reset(void) { + SysTick->CTRL = (1 << SYSTICK_CLKSOURCE) | (0<<SYSTICK_ENABLE) | (0<<SYSTICK_TICKINT); /* Disable SysTick IRQ and SysTick Timer */ + TickCount = 0; + SysTick->CTRL = (1 << SYSTICK_CLKSOURCE) | (1<<SYSTICK_ENABLE) | (1<<SYSTICK_TICKINT); /* Enable SysTick IRQ and SysTick Timer */ +} + +inline unsigned int GetTickCount(void) +{ + return TickCount; +} +#endif \ No newline at end of file