IoT - Kubus / Mbed 2 deprecated Kubus

Dependencies:   mbed nRF24L01P

Committer:
pannaannap
Date:
Mon Jan 09 23:26:52 2017 +0000
Revision:
27:27cffdb2e9d3
Child:
34:e67581c9b50d
all sensor boards

Who changed what in which revision?

UserRevisionLine numberNew contents of line
pannaannap 27:27cffdb2e9d3 1 #include "common.h"
pannaannap 27:27cffdb2e9d3 2
pannaannap 27:27cffdb2e9d3 3 class Sensor {
pannaannap 27:27cffdb2e9d3 4 public:
pannaannap 27:27cffdb2e9d3 5 explicit Sensor(SENSOR_TYPE id);
pannaannap 27:27cffdb2e9d3 6
pannaannap 27:27cffdb2e9d3 7 virtual void updateState() = 0;
pannaannap 27:27cffdb2e9d3 8 virtual Data dataToSend() = 0;
pannaannap 27:27cffdb2e9d3 9 virtual void resetState() = 0;
pannaannap 27:27cffdb2e9d3 10
pannaannap 27:27cffdb2e9d3 11 protected:
pannaannap 27:27cffdb2e9d3 12 SENSOR_TYPE sensor_id_;
pannaannap 27:27cffdb2e9d3 13 };
pannaannap 27:27cffdb2e9d3 14
pannaannap 27:27cffdb2e9d3 15 class DigitalSensor: public Sensor {
pannaannap 27:27cffdb2e9d3 16 public:
pannaannap 27:27cffdb2e9d3 17 explicit DigitalSensor(SENSOR_TYPE id, PinName pin=PA_10);
pannaannap 27:27cffdb2e9d3 18
pannaannap 27:27cffdb2e9d3 19 virtual void updateState();
pannaannap 27:27cffdb2e9d3 20 virtual Data dataToSend();
pannaannap 27:27cffdb2e9d3 21 virtual void resetState();
pannaannap 27:27cffdb2e9d3 22
pannaannap 27:27cffdb2e9d3 23 static const float SEND_INTERVAL;
pannaannap 27:27cffdb2e9d3 24 private:
pannaannap 27:27cffdb2e9d3 25 DigitalIn sensor_;
pannaannap 27:27cffdb2e9d3 26 bool last_state_;
pannaannap 27:27cffdb2e9d3 27 int32_t changes_counter_;
pannaannap 27:27cffdb2e9d3 28 };
pannaannap 27:27cffdb2e9d3 29
pannaannap 27:27cffdb2e9d3 30 class AnalogSensor: public Sensor {
pannaannap 27:27cffdb2e9d3 31 public:
pannaannap 27:27cffdb2e9d3 32 explicit AnalogSensor(SENSOR_TYPE id, PinName pin=PA_4);
pannaannap 27:27cffdb2e9d3 33
pannaannap 27:27cffdb2e9d3 34 virtual void updateState();
pannaannap 27:27cffdb2e9d3 35 virtual Data dataToSend();
pannaannap 27:27cffdb2e9d3 36 virtual void resetState();
pannaannap 27:27cffdb2e9d3 37
pannaannap 27:27cffdb2e9d3 38 static const float SEND_INTERVAL;
pannaannap 27:27cffdb2e9d3 39 private:
pannaannap 27:27cffdb2e9d3 40 AnalogIn sensor_;
pannaannap 27:27cffdb2e9d3 41 };