Agić Lejla Đenašević Emir

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 DigitalIn kolone[4]={dp9, dp10, dp11, dp13};
00004 DigitalOut redovi[4]={dp16, dp15, dp17, dp18};
00005 BusOut cifre(dp23, dp24, dp25);
00006 BusOut ekran(dp26, dp27, dp5, dp6, dp28, dp1, dp2);
00007 int brojevi[10]= {0x40, 0xf9, 0x24, 0x30, 0x19, 0x12, 0x02, 0xf8, 0x00, 0x10};
00008 int brojac=0;
00009 
00010 int vrijednosti[3];
00011 char taster(){
00012     char a='F';
00013     for(int i=0; i<4; i++){   
00014         redovi[i]=1;
00015         if(i==0){
00016             if(kolone[0]==1) a='1';
00017             if(kolone[1]==1) a='2';
00018             if(kolone[2]==1) a='3';
00019         }
00020         else if(i==1){
00021             if(kolone[0]==1) a='4';
00022             if(kolone[1]==1) a='5';
00023             if(kolone[2]==1) a='6';
00024         }
00025         else if(i==2){
00026             if(kolone[0]==1) {a='7'; wait(10000);};
00027             if(kolone[1]==1) a='8';
00028             if(kolone[2]==1) a='9';
00029             if(kolone[3]==1) a='C';
00030         }
00031         else if(i==3){
00032             if(kolone[1]==1) a='0';
00033         }  
00034        redovi[i]=0;  
00035     }
00036     return a;
00037 }
00038 
00039 void prikaz(char znak){
00040     if(znak == 'c')
00041     {
00042         vrijednosti[0]=0;
00043         vrijednosti[1]=0;
00044         vrijednosti[2]=0;
00045     }
00046     else if(znak>='0' &&  znak<='9')
00047     {
00048         vrijednosti[2]=vrijednosti[1];
00049         vrijednosti[1]=vrijednosti[0];
00050         vrijednosti[0]=znak-'0';
00051     }
00052     for(int i=1;i<=4;i=i*2)
00053     {
00054         cifre=i;
00055         ekran=brojevi[vrijednosti[2-i/2]];
00056         wait_ms(10);
00057     }
00058 }
00059 
00060 int main() {
00061     char pom;
00062     while(1) {
00063         pom=taster();
00064         prikaz(pom);        
00065     }
00066 }