pwm period is now 200us instead of the default 20ms veml6040 config is now AF_BIT | TRIG_BIT

Dependencies:   mbed MMA8451Q USBDevice WakeUp vt100

Fork of afero_node_suntory_2017_06_15 by Orefatoi

Committer:
wataloh
Date:
Tue Feb 28 02:09:06 2017 +0000
Revision:
5:9d5c7ee80f3b
Parent:
4:b38e09f24711
Child:
6:88cc04eb613a
added watchdog timer for kl25z.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
wataloh 0:20bce0dcc921 1 #ifndef _AFERO_COMM_HNDLR_
wataloh 0:20bce0dcc921 2 #define _AFERO_COMM_HNDLR_
wataloh 0:20bce0dcc921 3
wataloh 0:20bce0dcc921 4 #include "mbed.h"
wataloh 0:20bce0dcc921 5 #include "pin_defines.h"
wataloh 0:20bce0dcc921 6 #include "mbedSPI.h"
wataloh 0:20bce0dcc921 7 #include "afLib.h"
wataloh 0:20bce0dcc921 8 #include "ToDoQ.h"
wataloh 2:dfe671e31221 9 #include "Preferences.hpp"
wataloh 2:dfe671e31221 10 #include "RTC_Handler.h"
wataloh 0:20bce0dcc921 11
wataloh 0:20bce0dcc921 12 #define ATTR_ID_SENSE_VAL 1
wataloh 1:b2a9a6f2c30e 13 #define ATTR_ID_FLOW_CONTROL 4
wataloh 0:20bce0dcc921 14 #define ATTR_ID_SENSING_INTERVAL 3
wataloh 0:20bce0dcc921 15
wataloh 0:20bce0dcc921 16 using namespace MaruSolSensorManager;
wataloh 0:20bce0dcc921 17
wataloh 1:b2a9a6f2c30e 18 class Necochan
wataloh 1:b2a9a6f2c30e 19 {
wataloh 1:b2a9a6f2c30e 20 DigitalOut *out;
wataloh 1:b2a9a6f2c30e 21 Timeout timeout;
wataloh 1:b2a9a6f2c30e 22 static Necochan *ref;
wataloh 1:b2a9a6f2c30e 23 public:
wataloh 1:b2a9a6f2c30e 24 Necochan();
wataloh 1:b2a9a6f2c30e 25 static void release();
wataloh 1:b2a9a6f2c30e 26 void push();
wataloh 1:b2a9a6f2c30e 27 };
wataloh 1:b2a9a6f2c30e 28
wataloh 0:20bce0dcc921 29 class AferoCommHndlr
wataloh 0:20bce0dcc921 30 {
wataloh 0:20bce0dcc921 31 public:
wataloh 0:20bce0dcc921 32 void loop();
wataloh 0:20bce0dcc921 33 static void init();
wataloh 0:20bce0dcc921 34 static AferoCommHndlr *create(Timer *timer, mbedSPI *spi);
wataloh 0:20bce0dcc921 35 void update();
wataloh 4:b38e09f24711 36 int32_t sanitizeSensingInterval(uint16_t attributeId, int32_t interval);
wataloh 0:20bce0dcc921 37 private:
wataloh 1:b2a9a6f2c30e 38 bool flowControlEnabled; //ATTR_ID_FLOW_CONTROL;
wataloh 0:20bce0dcc921 39 ToDoQ *todoQ;
wataloh 0:20bce0dcc921 40 uint8_t sem;
wataloh 0:20bce0dcc921 41 AferoCommHndlr();
wataloh 0:20bce0dcc921 42 iafLib *piafLib;
wataloh 0:20bce0dcc921 43 static void fco_irq_fall();
wataloh 0:20bce0dcc921 44 static void myOnAttributeSet(const uint8_t requestId, const uint16_t attributeId, const uint16_t valueLen, const uint8_t *value);
wataloh 0:20bce0dcc921 45 static void myOnAttributeSetComplete(const uint8_t requestId, const uint16_t attributeId, const uint16_t valueLen, const uint8_t *value);
wataloh 0:20bce0dcc921 46 static void onGetTodo(ToDo *todo);
wataloh 0:20bce0dcc921 47 mbedSPI *spi;
wataloh 0:20bce0dcc921 48 Timer *timer;
wataloh 1:b2a9a6f2c30e 49 Necochan *necochan;
wataloh 0:20bce0dcc921 50 };
wataloh 0:20bce0dcc921 51
wataloh 0:20bce0dcc921 52 #endif //_AFERO_COMM_HNDLR_