ワークショップ用のサンプルプログラムです。

Dependencies:   DHT Milkcocoa mbed

Committer:
jksoft
Date:
Fri Apr 29 21:31:00 2016 +0000
Revision:
0:8ac5bb04e34d
??

Who changed what in which revision?

UserRevisionLine numberNew contents of line
jksoft 0:8ac5bb04e34d 1 //A modified version of the regular ticker/timeout libraries to allow us to do timeout without losing accuracy
jksoft 0:8ac5bb04e34d 2
jksoft 0:8ac5bb04e34d 3 #ifndef FLEXTICKER_H
jksoft 0:8ac5bb04e34d 4 #define FLEXTICKER_H
jksoft 0:8ac5bb04e34d 5
jksoft 0:8ac5bb04e34d 6 #include "mbed.h"
jksoft 0:8ac5bb04e34d 7
jksoft 0:8ac5bb04e34d 8 class FlexTicker: public TimerEvent {
jksoft 0:8ac5bb04e34d 9 public:
jksoft 0:8ac5bb04e34d 10 template<typename T>
jksoft 0:8ac5bb04e34d 11 void attach(T* tptr, void (T::*mptr)(void)) {
jksoft 0:8ac5bb04e34d 12 _function.attach(tptr, mptr);
jksoft 0:8ac5bb04e34d 13 }
jksoft 0:8ac5bb04e34d 14
jksoft 0:8ac5bb04e34d 15 /** Detach the function
jksoft 0:8ac5bb04e34d 16 */
jksoft 0:8ac5bb04e34d 17 void detach() {
jksoft 0:8ac5bb04e34d 18 remove();
jksoft 0:8ac5bb04e34d 19 }
jksoft 0:8ac5bb04e34d 20
jksoft 0:8ac5bb04e34d 21 void setNext(int delay) {
jksoft 0:8ac5bb04e34d 22 insert(event.timestamp + delay);
jksoft 0:8ac5bb04e34d 23 }
jksoft 0:8ac5bb04e34d 24
jksoft 0:8ac5bb04e34d 25 void prime(void) {
jksoft 0:8ac5bb04e34d 26 event.timestamp = us_ticker_read();
jksoft 0:8ac5bb04e34d 27 }
jksoft 0:8ac5bb04e34d 28
jksoft 0:8ac5bb04e34d 29 protected:
jksoft 0:8ac5bb04e34d 30 virtual void handler() {
jksoft 0:8ac5bb04e34d 31 _function.call();
jksoft 0:8ac5bb04e34d 32 }
jksoft 0:8ac5bb04e34d 33
jksoft 0:8ac5bb04e34d 34 unsigned int _delay;
jksoft 0:8ac5bb04e34d 35 FunctionPointer _function;
jksoft 0:8ac5bb04e34d 36 };
jksoft 0:8ac5bb04e34d 37
jksoft 0:8ac5bb04e34d 38 #endif