Kiselica Aldin Muslija Adnan

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 
00005 DigitalOut rows[4]={dp2,dp1,dp28,dp6};
00006 DigitalIn columns[4]={dp9,dp10,dp11,dp13};
00007 
00008 Ticker ticker;
00009 char giveChar()
00010 {
00011     char value=0;
00012     for(int i=0;i<4;i++)
00013     {
00014         rows[i]=1;
00015         for(int j=0;j<4;j++)
00016         {
00017             if( i<3 && j<3 && columns[j] )
00018                 value= '1'+(i*3+j);
00019                 
00020             if(j==3 && columns[j] )
00021                 value= 'a'+i;
00022             if(i==3 && columns[j] )
00023             {
00024                 if(j==0)
00025                     value= '*';
00026                 if(j==1)
00027                     value= '0';
00028                 if(j==2)
00029                     value='#';
00030             }
00031         }
00032         rows[i]=0;
00033         if(value!=0)
00034             break;
00035     }            
00036     return value;   
00037 }
00038 
00039 void displayChar()
00040 {
00041     char c=giveChar();
00042     if(c==0)
00043     return;
00044     if(c!='*')
00045         pc.putc(c);
00046     else if(c=='*')
00047         pc.putc('\n');
00048 }
00049 int main() {
00050     ticker.attach(displayChar,0.2);
00051     while(1) {
00052     
00053     }
00054 }