Nurif, Kenan

Dependencies:   N5110 mbed

main.cpp

Committer:
tim010
Date:
2014-05-05
Revision:
0:4899d3017afd

File content as of revision 0:4899d3017afd:

#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;
    }
}
 
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) 
    {
        
    }
}