AirsoftTimer software based on mbed

Dependencies:   mbed TextLCD keypad

board/Board.cpp

Committer:
sillevl
Date:
2015-05-23
Revision:
19:2eba101d9c2c
Parent:
18:abcebc4d0da0
Child:
20:b89791ecceec

File content as of revision 19:2eba101d9c2c:

#include "Board.h"

Board::Board(Pinouts pinouts){
    lcd = new LCD(pinouts.lcd.rs, pinouts.lcd.e, pinouts.lcd.p4, pinouts.lcd.p5, pinouts.lcd.p6, pinouts.lcd.p7, LCD::LCD20x4);
    leds = new Leds(pinouts.leds.left, pinouts.leds.right);
    button = new Button(pinouts.button);
    key = new Key(pinouts.key);
    keyboard = new Keyboard(pinouts.keyboard);
    buzzer = new Buzzer(pinouts.buzzer);    
    
    keyboard->attach(this, &Board::keyboardButton);
    //printf("keyboard attached\r\n");
    keyboard->start();  // energize the keypad via c0-c3
    //printf("keyboard started\r\n");
}

uint32_t Board::keyboardButton(uint32_t index){
    //printf("button pressed \r\n");
    //printf("button index: %d\r\n", index);
    //printf("button car: %c\r\n", Keyboard::KEYTABLE[index]);
    _callback.call(Keyboard::KEYTABLE[index]);
    //buttonEvent(Keyboard::KEYTABLE[index]);
    return 0;
}

/*void Board::attach(ButtonListener *bl)
{
    //printf("ButtonListener attached\r\n");
    listeners.push_back(bl);
    //printf("done\r\n");
}*/
/*void Board::buttonEvent(char c)
{
    //printf("ButtonListener executing\r\n");
    for (int i = 0; i < listeners.size(); i++)
      listeners[i]->buttonEvent(c);
    //printf("done\r\n");
}*/