Modified for compatibility with Rev.E. hardware
Fork of AkmSensor by
ak09970ctrl.h
- Committer:
- masahikofukasawa
- Date:
- 2016-08-12
- Revision:
- 13:d008249f0359
- Parent:
- 10:5c69b067d88a
- Child:
- 23:50c98b286e41
- Child:
- 27:41aa9fb23a2f
File content as of revision 13:d008249f0359:
#ifndef AK09970CTRL_H #define AK09970CTRL_H #include "mbed.h" #include "SerialNano.h" #include "akmsensor.h" #include "ak09970.h" class Ak09970Ctrl : public AkmSensor { public: // SUB ID typedef enum { // 5bit ID SUB_ID_AK09970 = 0x03, // 3 } SubIdSwitch; /** * Constructor. * */ Ak09970Ctrl(); /** * Destructor. * */ virtual ~Ak09970Ctrl(); virtual AkmSensor::Status init(const uint8_t id, const uint8_t subid); virtual bool isEvent(); virtual AkmSensor::Status startSensor(); virtual AkmSensor::Status startSensor(const float sec); virtual AkmSensor::Status stopSensor(); virtual AkmSensor::Status readSensorData(Message* msg); virtual AkmSensor::Status requestCommand(Message* in, Message* out); virtual char* getSensorName(); void checkINT(); void detectINT(); private: bool event; uint8_t primaryId; uint8_t subId; AK09970* ak09970; char* sensorName; // hold settings for AK09970 AK09970::Threshold threshold; AK09970::OperationMode mode; AK09970::SensorDriveMode sensorDriveMode; AK09970::SensorMeasurementRange sensorMeasurementRange; AK09970::ReadConfig readConfig; AK09970::SwitchConfig switchConfig; InterruptIn* sw; }; #endif