Hello World with Timeout class

Dependencies:   mbed

Committer:
kimito
Date:
Sat Oct 11 11:45:38 2014 +0000
Revision:
2:9dcd56f48e69
Parent:
0:fb6bbc10ffa0
initial commit

Who changed what in which revision?

UserRevisionLine numberNew contents of line
simon 0:fb6bbc10ffa0 1 #include "mbed.h"
simon 0:fb6bbc10ffa0 2
kimito 2:9dcd56f48e69 3 class Flicker
kimito 2:9dcd56f48e69 4 {
kimito 2:9dcd56f48e69 5 public:
kimito 2:9dcd56f48e69 6 Flicker(PinName pin, float interval)
kimito 2:9dcd56f48e69 7 :_out(pin),_interval(interval) {
kimito 2:9dcd56f48e69 8 _out = 1;
kimito 2:9dcd56f48e69 9 registerNextFlick();
kimito 2:9dcd56f48e69 10 }
kimito 2:9dcd56f48e69 11
kimito 2:9dcd56f48e69 12 void flick() {
kimito 2:9dcd56f48e69 13 _out = !_out;
kimito 2:9dcd56f48e69 14 registerNextFlick();
kimito 2:9dcd56f48e69 15 }
simon 0:fb6bbc10ffa0 16
kimito 2:9dcd56f48e69 17 void registerNextFlick() {
kimito 2:9dcd56f48e69 18 _timer.attach(this, &Flicker::flick, _interval);
simon 0:fb6bbc10ffa0 19 }
kimito 2:9dcd56f48e69 20
kimito 2:9dcd56f48e69 21 private:
kimito 2:9dcd56f48e69 22 DigitalOut _out;
kimito 2:9dcd56f48e69 23 float _interval;
kimito 2:9dcd56f48e69 24 Timeout _timer;
kimito 2:9dcd56f48e69 25 };
kimito 2:9dcd56f48e69 26
kimito 2:9dcd56f48e69 27
kimito 2:9dcd56f48e69 28
kimito 2:9dcd56f48e69 29 int main()
kimito 2:9dcd56f48e69 30 {
kimito 2:9dcd56f48e69 31 Flicker f1(LED1, 0.5);
kimito 2:9dcd56f48e69 32
kimito 2:9dcd56f48e69 33 while(true){}
simon 0:fb6bbc10ffa0 34 }