US, Vjezba 2 Stol 8, Amer Surkovic, Enis Pajic Zadatak 1

Dependencies:   mbed

main.cpp

Committer:
2016US_AmerSurkovic
Date:
2016-03-11
Revision:
0:e7d477a2d869

File content as of revision 0:e7d477a2d869:

#include "mbed.h"
#define dp23 P0_0
 
DigitalOut enable(dp14);
 
DigitalOut red1(dp16); // Redovi tastature
DigitalOut red2(dp15);
DigitalOut red3(dp17);
DigitalOut red4(dp18);
 
DigitalOut d1(dp23); // Diode
DigitalOut d2(dp24);
DigitalOut d3(dp25);
DigitalOut d4(dp26);
DigitalOut d5(dp27);
DigitalOut d6(dp5);
DigitalOut d7(dp6);
DigitalOut d8(dp28);
 
DigitalIn kolona1(dp9); // Kolone tastature
DigitalIn kolona2(dp10);
DigitalIn kolona3(dp11);
DigitalIn kolona4(dp13);


int ocitavanjeTastature(){
    
        red1=1; // Pusten je napon logicke jedinice na red 1. Napon ostalih redova je 0.
        {
            // Ocitavamo napon kolona
            if(kolona1==1) return 1;
            if(kolona2==1) return 2;
            if(kolona3==1) return 3;
    
        }
        red1=0;
        
        red2=1; // Pusten je napon logicke jedinice na red 2. Napon ostalih redova je 0.
        {
            // Ocitavamo napon kolona
            if(kolona1==1) return 4;
            if(kolona2==1) return 5;
            if(kolona3==1) return 6;
        }
        red2=0;
        
        red3=1; // Pusten je napon logicke jedinice na red 3. Napon ostalih redova je 0.
        {
            // Ocitavamo napon kolona
            if(kolona1==1) return 7;
            if(kolona2==1) return 8;
        }
        red3=0;
} 

int main() {
    enable = 0;
    
    while(1) {
        d1 = d2 = d3 = d4 = d5 = d6 = d7 = d8 = 1;
        
        int pritisnuto = ocitavanjeTastature();
        
        if(pritisnuto == 1) d1=0;
        else if(pritisnuto == 2) d2=0;
        else if(pritisnuto == 3) d3=0;
        else if(pritisnuto == 4) d4=0;
        else if(pritisnuto == 5) d5=0;
        else if(pritisnuto == 6) d6=0;
        else if(pritisnuto == 7) d7=0;
        else if(pritisnuto == 8) d8=0;
        wait(0.8);
    }
}