Ljubuncic Orhan Odobasic Faris

Dependencies:   mbed

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers main.cpp Source File

main.cpp

00001 #include "mbed.h"
00002 
00003 Serial pc(USBTX,USBRX);
00004 DigitalOut red[4] = {dp2, dp1, dp28, dp6};
00005 DigitalIn kolona[4]  = {dp9, dp10, dp11, dp13};
00006 Ticker ticker;
00007 
00008 Timer db;
00009 
00010 char vratiZnak()
00011 {
00012     
00013     for(int i = 0; i < 4; i++)
00014     {
00015         red[i] = 0;
00016     }
00017     
00018     char znak = 0;
00019     for(int i = 0; i < 4; i++)
00020     {
00021         red[i] = 1;
00022         for(int j = 0; j < 4; j++)
00023         {
00024             if(kolona[j]==1)
00025                 {
00026                     
00027                      if(db.read_ms() <= 200) break;
00028                     
00029                     if(i < 3 && j < 3) //znaci broj
00030                         return znak = i * 3 + j + 1 + '0';
00031                     else if(j == 3) // znaci slovo
00032                         return znak = 'A' + i;
00033                     else if(i == 3)//neki znak ili 0
00034                     {
00035                         if(j == 1)
00036                             return znak = '0';
00037                         if(j == 0)
00038                             return znak = '*';
00039                         if(j == 2)
00040                             return znak = '#';
00041                             
00042                     }
00043                     
00044                      db.reset();
00045                 }
00046         }
00047         red[i] = 0;
00048     }
00049     
00050     //return znak;
00051 }
00052 
00053 void prikaziZnak()
00054 {
00055     char c = vratiZnak();
00056     
00057     if(c != '*')
00058         pc.putc(c);
00059     else if (c == '*')
00060         pc.putc('\n');
00061 }
00062 
00063 
00064 
00065 int main() 
00066 {
00067     db.start();
00068     
00069     for(int i = 0; i < 4; i++)
00070     {
00071         red[i] = 0;
00072     }
00073     ticker.attach(&prikaziZnak,0.1);
00074     while(1) 
00075     {
00076         
00077     }
00078 }