GDP group 24 node core
Dependencies: EthernetInterface SDFileSystem mbed-rtos mbed snail MbedJSONValue
sensorinterface.h
- Committer:
- Trumple
- Date:
- 2015-01-28
- Revision:
- 31:9cf3f1e5ad68
- Parent:
- 20:fb2a9f4d2de7
File content as of revision 31:9cf3f1e5ad68:
#ifndef SENSORINTERFACE_H #define SENSORINTERFACE_H #include "mbed.h" #include <map> #include <vector> #define I2C_TYPE_HEADER 'T' #define I2C_REQUEST_HEADER 'R' #define I2C_DATA_HEADER 'D' #define I2C_TYPE_PACKET_SIZE 4 #define DEBUG struct sensor { char type; char packetSize; char readingSize; }; struct d_reply { char type; vector<int> readings; }; class sensorinterface { public: map<char, sensor> sensors; sensorinterface(); void requestData(); bool isDataWaiting(); d_reply readData(); private: map<char, sensor>::iterator currentSensor; int update(); void error(int); sensor& findType(sensor& s, int address); int sendRequest(char address); void readySet(); void readyUnset(); bool ready; I2C i2c; InterruptIn readyLine; }; #endif