Ljubuncic Orhan Odobasic Faris

Dependencies:   mbed

main.cpp

Committer:
tim008
Date:
2014-05-05
Revision:
0:c7e0af67daff

File content as of revision 0:c7e0af67daff:

#include "mbed.h"

Serial pc(USBTX,USBRX);
DigitalOut red[4] = {dp2, dp1, dp28, dp6};
DigitalIn kolona[4]  = {dp9, dp10, dp11, dp13};
Ticker ticker;

Timer db;

char vratiZnak()
{
    
    for(int i = 0; i < 4; i++)
    {
        red[i] = 0;
    }
    
    char znak = 0;
    for(int i = 0; i < 4; i++)
    {
        red[i] = 1;
        for(int j = 0; j < 4; j++)
        {
            if(kolona[j]==1)
                {
                    
                     if(db.read_ms() <= 200) break;
                    
                    if(i < 3 && j < 3) //znaci broj
                        return znak = i * 3 + j + 1 + '0';
                    else if(j == 3) // znaci slovo
                        return znak = 'A' + i;
                    else if(i == 3)//neki znak ili 0
                    {
                        if(j == 1)
                            return znak = '0';
                        if(j == 0)
                            return znak = '*';
                        if(j == 2)
                            return znak = '#';
                            
                    }
                    
                     db.reset();
                }
        }
        red[i] = 0;
    }
    
    //return znak;
}

void prikaziZnak()
{
    char c = vratiZnak();
    
    if(c != '*')
        pc.putc(c);
    else if (c == '*')
        pc.putc('\n');
}



int main() 
{
    db.start();
    
    for(int i = 0; i < 4; i++)
    {
        red[i] = 0;
    }
    ticker.attach(&prikaziZnak,0.1);
    while(1) 
    {
        
    }
}