modtronix H / modtronix_im4OLED

Fork of Adafruit_GFX by Neal Horman

Committer:
modtronix
Date:
Mon Aug 31 10:27:55 2015 +1000
Revision:
21:e9892783ce17
Parent:
20:0d7144a4d1ca
Child:
22:f63aeb3769b5
Updated getBtn functions

Who changed what in which revision?

UserRevisionLine numberNew contents of line
modtronix 18:cad3dec05e0d 1 #include "mbed.h"
modtronix 18:cad3dec05e0d 2
modtronix 18:cad3dec05e0d 3 typedef struct {
modtronix 18:cad3dec05e0d 4 union {
modtronix 18:cad3dec05e0d 5 struct {
modtronix 18:cad3dec05e0d 6 uint8_t fallingLatch :1;
modtronix 18:cad3dec05e0d 7 uint8_t risingLatch :1;
modtronix 18:cad3dec05e0d 8 } bit;
modtronix 18:cad3dec05e0d 9 uint8_t Val;
modtronix 18:cad3dec05e0d 10 } flags;
modtronix 18:cad3dec05e0d 11 } ButtonFlags;
modtronix 18:cad3dec05e0d 12
modtronix 18:cad3dec05e0d 13
modtronix 20:0d7144a4d1ca 14 class Im4OLED {
modtronix 18:cad3dec05e0d 15 public:
modtronix 20:0d7144a4d1ca 16 Im4OLED(PinName pinOK, PinName pinStar, PinName pinUp, PinName pinDown);
modtronix 18:cad3dec05e0d 17
modtronix 21:e9892783ce17 18 uint8_t getOkBtn(void);
modtronix 21:e9892783ce17 19 uint8_t getStarBtn(void);
modtronix 21:e9892783ce17 20 uint8_t getUpBtn(void);
modtronix 21:e9892783ce17 21 uint8_t getDownBtn(void);
modtronix 18:cad3dec05e0d 22
modtronix 21:e9892783ce17 23 // uint8_t getOkBtnRissing();
modtronix 21:e9892783ce17 24 // uint8_t getStarBtnRissing();
modtronix 21:e9892783ce17 25 // uint8_t getUpBtnRissing();
modtronix 21:e9892783ce17 26 // uint8_t getDownBtnRissing();
modtronix 18:cad3dec05e0d 27
modtronix 21:e9892783ce17 28 uint8_t getBtnFalling(uint16_t btnID);
modtronix 18:cad3dec05e0d 29
modtronix 21:e9892783ce17 30 uint8_t getOkBtnFalling(void);
modtronix 21:e9892783ce17 31 uint8_t getStarBtnFalling(void);
modtronix 21:e9892783ce17 32 uint8_t getUpBtnFalling(void);
modtronix 21:e9892783ce17 33 uint8_t getDownBtnFalling(void);
modtronix 18:cad3dec05e0d 34
modtronix 18:cad3dec05e0d 35 private :
modtronix 18:cad3dec05e0d 36 // objects
modtronix 18:cad3dec05e0d 37 Ticker _ticker;
modtronix 18:cad3dec05e0d 38
modtronix 18:cad3dec05e0d 39 DigitalIn btnOK;
modtronix 18:cad3dec05e0d 40 DigitalIn btnStar;
modtronix 18:cad3dec05e0d 41 DigitalIn btnUp;
modtronix 18:cad3dec05e0d 42 DigitalIn btnDown;
modtronix 18:cad3dec05e0d 43
modtronix 18:cad3dec05e0d 44 uint8_t arrButtons[4]; //OK, Star, Up, Down
modtronix 18:cad3dec05e0d 45 uint8_t arrBtnFalling[4]; //OK, Star, Up, Down
modtronix 18:cad3dec05e0d 46 ButtonFlags arrBtnFlags[4];
modtronix 18:cad3dec05e0d 47
modtronix 18:cad3dec05e0d 48 // function to take a sample, and update flags
modtronix 18:cad3dec05e0d 49 void _sample(void);
modtronix 18:cad3dec05e0d 50 };