Subversion Repositories HomeAutomation

Rev

Rev 127 | Go to most recent revision | Blame | Last modification | View Log | SVN | RSS feed

  1. #ifndef timebase_h_
  2. #define timebase_h_
  3.  
  4.  
  5. /*-----------------------------------------------------------------------------
  6.  * Includes
  7.  *---------------------------------------------------------------------------*/
  8. #include <inttypes.h>
  9.  
  10.  
  11. /*-----------------------------------------------------------------------------
  12.  * Defines
  13.  *---------------------------------------------------------------------------*/
  14. #define TIMEBASE_PRESCALE (64)
  15. #define TIMEBASE_HITS_PER_1MS (F_OSC/TIMEBASE_PRESCALE/1000)
  16.  
  17. #if TIMEBASE_HITS_PER_1MS > 255
  18. #undef TIMEBASE_PRESCALE
  19. #define TIMEBASE_PRESCALE (256)
  20. #undef TIMEBASE_HITS_PER_1MS
  21. #define TIMEBASE_HITS_PER_1MS (F_OSC/TIMEBASE_PRESCALE/1000)    // behöver denna definieras om ifall prescalern definierats om?
  22. #endif
  23.  
  24. #define TIMEBASE_RELOAD ((uint8_t)(0xff-TIMEBASE_HITS_PER_1MS+1))
  25.  
  26.  
  27. /*-----------------------------------------------------------------------------
  28.  * Public Function Prototypes
  29.  *---------------------------------------------------------------------------*/
  30. void Timebase_Init(void);
  31. uint32_t Timebase_CurrentTime(void);
  32. uint32_t Timebase_PassedTimeMillis(uint32_t t0);
  33.  
  34.  
  35. #endif
  36.