Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
RunTimer.cpp@1:134292d456c9, 2016-05-19 (annotated)
- Committer:
- jebradshaw
- Date:
- Thu May 19 13:39:12 2016 +0000
- Revision:
- 1:134292d456c9
- Parent:
- 0:21dc6ad1a795
- Child:
- 2:67e16d628edc
RunTimer library for timer that keeps track of 10ms intervals up to days
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
jebradshaw | 0:21dc6ad1a795 | 1 | #include "RunTimer.h" |
jebradshaw | 0:21dc6ad1a795 | 2 | |
jebradshaw | 0:21dc6ad1a795 | 3 | RunTimer::RunTimer(){ |
jebradshaw | 0:21dc6ad1a795 | 4 | this->ms=0; |
jebradshaw | 0:21dc6ad1a795 | 5 | this->sec =0; |
jebradshaw | 0:21dc6ad1a795 | 6 | this->min = 0; |
jebradshaw | 0:21dc6ad1a795 | 7 | this->hour = 0; |
jebradshaw | 0:21dc6ad1a795 | 8 | this->days = 0; |
jebradshaw | 0:21dc6ad1a795 | 9 | |
jebradshaw | 0:21dc6ad1a795 | 10 | this->timer_10ms.attach(this, &RunTimer::timeAcc, .01); |
jebradshaw | 0:21dc6ad1a795 | 11 | } |
jebradshaw | 0:21dc6ad1a795 | 12 | |
jebradshaw | 0:21dc6ad1a795 | 13 | void RunTimer::timeAcc(void){ |
jebradshaw | 0:21dc6ad1a795 | 14 | this->ms +=10; |
jebradshaw | 0:21dc6ad1a795 | 15 | if(this->ms == 1000){ |
jebradshaw | 0:21dc6ad1a795 | 16 | this->ms = 0; |
jebradshaw | 0:21dc6ad1a795 | 17 | this->sec++; |
jebradshaw | 0:21dc6ad1a795 | 18 | if(this->sec==60){ |
jebradshaw | 0:21dc6ad1a795 | 19 | this->sec=0; |
jebradshaw | 0:21dc6ad1a795 | 20 | this->min++; |
jebradshaw | 0:21dc6ad1a795 | 21 | if(this->min == 60){ |
jebradshaw | 0:21dc6ad1a795 | 22 | this->min=0; |
jebradshaw | 0:21dc6ad1a795 | 23 | this->hour++; |
jebradshaw | 0:21dc6ad1a795 | 24 | if(this->hour==24){ |
jebradshaw | 0:21dc6ad1a795 | 25 | this->hour=0; |
jebradshaw | 0:21dc6ad1a795 | 26 | days++; |
jebradshaw | 0:21dc6ad1a795 | 27 | } |
jebradshaw | 0:21dc6ad1a795 | 28 | } |
jebradshaw | 0:21dc6ad1a795 | 29 | } |
jebradshaw | 0:21dc6ad1a795 | 30 | } |
jebradshaw | 0:21dc6ad1a795 | 31 | }//timeAcc |
jebradshaw | 0:21dc6ad1a795 | 32 | |
jebradshaw | 0:21dc6ad1a795 | 33 | void RunTimer::Reset(void){ |
jebradshaw | 1:134292d456c9 | 34 | this->ms=0; |
jebradshaw | 1:134292d456c9 | 35 | this->sec =0; |
jebradshaw | 1:134292d456c9 | 36 | this->min = 0; |
jebradshaw | 1:134292d456c9 | 37 | this->hour = 0; |
jebradshaw | 1:134292d456c9 | 38 | this->days = 0; |
jebradshaw | 0:21dc6ad1a795 | 39 | } |