AirsoftTimer software based on mbed
Dependencies: mbed TextLCD keypad
board/Board.h@16:e8e96bf22df1, 2015-05-23 (annotated)
- Committer:
- sillevl
- Date:
- Sat May 23 18:36:54 2015 +0000
- Revision:
- 16:e8e96bf22df1
- Parent:
- 5:be598835bab0
- Child:
- 17:19dbb1dbb640
added observer for button events;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
sillevl | 5:be598835bab0 | 1 | #ifndef BOARD_H |
sillevl | 5:be598835bab0 | 2 | #define BOARD_H |
sillevl | 5:be598835bab0 | 3 | |
sillevl | 5:be598835bab0 | 4 | #include "LCD.h" |
sillevl | 5:be598835bab0 | 5 | #include "Leds.h" |
sillevl | 5:be598835bab0 | 6 | #include "Key.h" |
sillevl | 5:be598835bab0 | 7 | #include "Buzzer.h" |
sillevl | 5:be598835bab0 | 8 | #include "Button.h" |
sillevl | 5:be598835bab0 | 9 | #include "Keyboard.h" |
sillevl | 5:be598835bab0 | 10 | |
sillevl | 16:e8e96bf22df1 | 11 | #include <vector> |
sillevl | 16:e8e96bf22df1 | 12 | |
sillevl | 5:be598835bab0 | 13 | // class for debug leds |
sillevl | 5:be598835bab0 | 14 | // class for eeprom memory |
sillevl | 5:be598835bab0 | 15 | // class for wireless (nordic chip or xbee) |
sillevl | 5:be598835bab0 | 16 | |
sillevl | 5:be598835bab0 | 17 | struct Pinouts{ |
sillevl | 5:be598835bab0 | 18 | PinName button; |
sillevl | 5:be598835bab0 | 19 | PinName key; |
sillevl | 5:be598835bab0 | 20 | LedPins leds; |
sillevl | 5:be598835bab0 | 21 | PinName buzzer; |
sillevl | 5:be598835bab0 | 22 | KeyboardPins keyboard; |
sillevl | 5:be598835bab0 | 23 | LcdPins lcd; |
sillevl | 5:be598835bab0 | 24 | }; |
sillevl | 5:be598835bab0 | 25 | |
sillevl | 16:e8e96bf22df1 | 26 | class ButtonListener |
sillevl | 16:e8e96bf22df1 | 27 | { |
sillevl | 16:e8e96bf22df1 | 28 | public: |
sillevl | 16:e8e96bf22df1 | 29 | virtual void buttonEvent(char c){ |
sillevl | 16:e8e96bf22df1 | 30 | |
sillevl | 16:e8e96bf22df1 | 31 | }; |
sillevl | 16:e8e96bf22df1 | 32 | }; |
sillevl | 16:e8e96bf22df1 | 33 | |
sillevl | 5:be598835bab0 | 34 | class Board{ |
sillevl | 5:be598835bab0 | 35 | public: |
sillevl | 5:be598835bab0 | 36 | Board(Pinouts pinouts); |
sillevl | 5:be598835bab0 | 37 | |
sillevl | 5:be598835bab0 | 38 | LCD* lcd; |
sillevl | 5:be598835bab0 | 39 | Leds* leds; |
sillevl | 5:be598835bab0 | 40 | Key* key; |
sillevl | 5:be598835bab0 | 41 | Button* button; |
sillevl | 5:be598835bab0 | 42 | Keyboard* keyboard; |
sillevl | 5:be598835bab0 | 43 | Buzzer* buzzer; |
sillevl | 5:be598835bab0 | 44 | |
sillevl | 16:e8e96bf22df1 | 45 | vector < ButtonListener * > listeners; |
sillevl | 16:e8e96bf22df1 | 46 | |
sillevl | 16:e8e96bf22df1 | 47 | void attach(ButtonListener *bl); |
sillevl | 16:e8e96bf22df1 | 48 | |
sillevl | 16:e8e96bf22df1 | 49 | protected: |
sillevl | 16:e8e96bf22df1 | 50 | void buttonEvent(char c); |
sillevl | 16:e8e96bf22df1 | 51 | |
sillevl | 16:e8e96bf22df1 | 52 | |
sillevl | 5:be598835bab0 | 53 | }; |
sillevl | 5:be598835bab0 | 54 | |
sillevl | 5:be598835bab0 | 55 | #endif |