diff options
Diffstat (limited to 'libmaple')
| -rw-r--r-- | libmaple/systick.c | 5 | ||||
| -rw-r--r-- | libmaple/systick.h | 9 | 
2 files changed, 8 insertions, 6 deletions
| diff --git a/libmaple/systick.c b/libmaple/systick.c index 12a3e22..2b09a64 100644 --- a/libmaple/systick.c +++ b/libmaple/systick.c @@ -39,7 +39,7 @@  #define SYSTICK_TICKINT         BIT(1)    // Interrupt on systick countdown  #define SYSTICK_ENABLE          BIT(0)    // Turn on the counter -volatile uint32 systick_timer_millis = 0; +volatile uint32 systick_timer_millis;  void systick_init(uint32 reload_val) {      /* Set the reload counter to tick every 1ms  */ @@ -65,8 +65,7 @@ void systick_resume() {              SYSTICK_TICKINT);  } +/** SysTick interrupt handler.  Bumps up the tick counter. */  void SysTickHandler(void) {      systick_timer_millis++;  } - - diff --git a/libmaple/systick.h b/libmaple/systick.h index 7ec8497..ae1268a 100644 --- a/libmaple/systick.h +++ b/libmaple/systick.h @@ -33,14 +33,17 @@  #include "libmaple.h" +#ifdef __cplusplus +extern "C"{ +#endif +  #define SYSTICK_CSR             0xE000E010  // Control and status register  #define SYSTICK_CNT             0xE000E018  // Current value register  #define SYSTICK_CSR_COUNTFLAG   BIT(16) -#ifdef __cplusplus -extern "C"{ -#endif +/** System elapsed time in milliseconds */ +volatile uint32 systick_timer_millis;  void systick_init(uint32 reload_val);  void systick_disable(); | 
