Time (seconds) counter based on TimerSubscriber

Committer:
Waldek
Date:
Fri Jun 06 09:04:55 2014 +0000
Revision:
1:49c28e93d358
Parent:
0:b72c7c2ee5f3
Time dependent on TimerSubscriber

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Waldek 0:b72c7c2ee5f3 1 #pragma once
Waldek 0:b72c7c2ee5f3 2 #include "mbed.h"
Waldek 0:b72c7c2ee5f3 3 #include "TimerSubscriber.h"
Waldek 0:b72c7c2ee5f3 4
Waldek 0:b72c7c2ee5f3 5 /*-------------------------------------------------------------
Waldek 0:b72c7c2ee5f3 6
Waldek 0:b72c7c2ee5f3 7 (c) W.D. 2014
Waldek 0:b72c7c2ee5f3 8
Waldek 1:49c28e93d358 9 Usage example
Waldek 1:49c28e93d358 10
Waldek 1:49c28e93d358 11 #include "TimeCounter.h"
Waldek 1:49c28e93d358 12
Waldek 1:49c28e93d358 13 TimerSubscriber timer_user(10, 1000); // 10 in table, 1ms period
Waldek 1:49c28e93d358 14 TimeCounter time_counter;
Waldek 1:49c28e93d358 15
Waldek 1:49c28e93d358 16 main()
Waldek 1:49c28e93d358 17 {
Waldek 1:49c28e93d358 18 long int Second = time_counter.ReadSeconds();
Waldek 1:49c28e93d358 19 }
Waldek 0:b72c7c2ee5f3 20 -------------------------------------------------------------*/
Waldek 0:b72c7c2ee5f3 21
Waldek 0:b72c7c2ee5f3 22 /* ------ sample usage------
Waldek 0:b72c7c2ee5f3 23 */
Waldek 0:b72c7c2ee5f3 24
Waldek 0:b72c7c2ee5f3 25 extern TimerSubscriber timer_user;
Waldek 0:b72c7c2ee5f3 26
Waldek 0:b72c7c2ee5f3 27 class TimeCounter : TimerDependent
Waldek 0:b72c7c2ee5f3 28 {
Waldek 0:b72c7c2ee5f3 29 public:
Waldek 0:b72c7c2ee5f3 30 TimeCounter();
Waldek 0:b72c7c2ee5f3 31 virtual ~TimeCounter();
Waldek 1:49c28e93d358 32 inline long int ReadSeconds(void){return this->ticks / this->TicksPerSecond;};
Waldek 0:b72c7c2ee5f3 33 inline long int ReadTicks(void){return ticks;};
Waldek 1:49c28e93d358 34 inline void SetSeconds(long int InSeconds){this->ticks = InSeconds * this->TicksPerSecond;};
Waldek 0:b72c7c2ee5f3 35 virtual void TimerEvent(void);
Waldek 0:b72c7c2ee5f3 36 private:
Waldek 0:b72c7c2ee5f3 37 long long int ticks;
Waldek 0:b72c7c2ee5f3 38 int TicksPerSecond;
Waldek 0:b72c7c2ee5f3 39 };
Waldek 0:b72c7c2ee5f3 40