Published for Bernard

Dependencies:   DebounceIn USBDevice mbed

main.cpp

Committer:
figlax
Date:
2014-09-17
Revision:
4:d591b4a00e37
Parent:
3:4a263f3d8b0b
Child:
5:3b729656a1ff

File content as of revision 4:d591b4a00e37:

#include "mbed.h"
#include "DebounceIn.h"
//must import cookbook debounce library into project

DigitalOut myled(LED3);
Serial pc(USBTX, USBRX); // tx, rx
DigitalIn button(D2);
DigitalIn button2(D3);
DigitalIn button3(D4);
DigitalIn button4(D5);
DigitalIn button5(D10); 
DebounceIn toggle(D8);
DebounceIn enter(D7);

int main() {
    
    //initiate button modes to use internal pull up resistor
    button.mode(PullUp); 
    button2.mode(PullUp);
    button3.mode(PullUp);
    button4.mode(PullUp);
    button5.mode(PullUp);
    toggle.mode(PullUp);
    enter.mode(PullUp);
    
    wait(0.001);
    
    //initiate counters and other variables
    
    int enter_old=1;
    int enter_new;
    int toggle_old=1;
    int toggle_new;
    int button_counter=0;
    int button2_counter=0;
    int button3_counter=0;
    int button4_counter=0;
    int button5_counter=0;
    
    
    myled=0;
    
    while(1) {
        enter_new = enter.read();
        if((enter_new==0) && (enter_old==1)) {
            
            if (button.read()==0) {
                if (button_counter==0){
                    pc.printf("a");
                    button_counter=0;
                } 
                if (button_counter==1){
                    pc.printf("b");
                    button_counter=0;
                }
            }
            if (button2.read()==0) {
                pc.printf("b");
            }
            if (button3.read()==0) {
                pc.printf("c");
            }
             if (button4.read()==0) {
                pc.printf("d");
            }
            if (button5.read()==0) {
                pc.printf("e");
            }
            
        }
        enter_old= enter_new;   
        
        
        toggle_new = toggle.read();
        if ((toggle_new==0) && (toggle_old==1)) {
            if (button.read()==0) {
                button_counter= button_counter + 1;
                button2_counter=0;
                button3_counter=0;
                button4_counter=0;
                button5_counter=0;
            }
            if (button2.read()==0) {
                button_counter= 0;
                button2_counter= button2_counter + 1;
                button3_counter=0;
                button4_counter=0;
                button5_counter=0;
            }
            if (button3.read()==0) {
                button_counter= 0;
                button2_counter=0;
                button3_counter= button3_counter + 1;
                button4_counter=0;
                button5_counter=0;
            }
             if (button4.read()==0) {
                button_counter= 0;
                button2_counter=0;
                button3_counter=0;
                button4_counter= button4_counter + 1;
                button5_counter=0;
            }
            if (button5.read()==0) {
                button_counter= 0;
                button2_counter=0;
                button3_counter=0;
                button4_counter=0;
                button5_counter= button5_counter + 1;
            }
            
        }
        toggle_old= toggle_new; 
        
        
        
        
        
        
    }
}