Durakovic Adna Gazetic Elma

Dependencies:   mbed

Revision:
0:280c5960c707
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Mon Mar 17 19:12:22 2014 +0000
@@ -0,0 +1,172 @@
+#include "mbed.h"
+
+DigitalIn k1(dp9), k2(dp10), k3(dp11), k4(dp13);
+DigitalOut r1(dp16), r2(dp15), r3(dp17), r4(dp18);
+
+BusOut segments(dp2,dp1,dp28,dp6,dp5,dp27,dp26);
+DigitalOut enable(dp25);
+DigitalOut e2(dp23),e3(dp24);
+int znakovi[16] = {0x01,0x4F,0x12,0x06,0x4C,0x24,0x20,0x0F,0x00,0x04, 0x02, 0x60, 0x72, 0x42, 0x48, 0x36};
+
+char ocitajTast()
+{
+    r1 = 0; r2 = 0; r3 = 0; r4 = 0;
+    
+    r1 =1 ;
+    if(k1 == 1) return '1';
+    if(k2 == 1) return '2';
+    if(k3 == 1) return '3';
+    if(k4 == 1) return 'A';
+    r1 = 0;
+    
+    r2 =1 ;
+    if(k1 == 1) return '4';
+    if(k2 == 1) return '5';
+    if(k3 == 1) return '6';
+    if(k4 == 1) return 'B';
+    r2 = 0;
+    
+    r3 =1 ;
+    if(k1 == 1) return '7';
+    if(k2 == 1) return '8';
+    if(k3 == 1) return '9';
+    if(k4 == 1) return 'C';
+    r3 = 0;
+    
+    r4 =1 ;
+    if(k1 == 1) return '*';
+    if(k2 == 1) return '0';
+    if(k3 == 1) return '#';
+    if(k4 == 1) return 'D';
+    r4 = 0;
+}
+
+
+
+int main() {
+    
+    char znak ;
+    int broj = 0;
+    while(1) {
+       znak = ocitajTast();
+       switch(znak)
+       {
+        case '0':
+        if(broj>0)
+        {
+            e2 = enable;
+              
+            
+            }
+        segments = znakovi[0];
+        enable = 0;
+        wait(1);
+        enable = 1;
+        broj++;
+        
+        break;   
+                case '1':
+        segments = znakovi[1];
+        enable = 0;
+        wait(1);
+        enable = 1;
+         broj++;
+        break;  
+                case '2':
+        segments = znakovi[2];
+        enable = 0;
+        wait(1);
+        enable = 1;
+         broj++;
+        break;  
+                case '3':
+        segments = znakovi[3];
+        enable = 0;
+        wait(1);
+        enable = 1;
+         broj++;
+        break;  
+                case '4':
+        segments = znakovi[4];
+        enable = 0;
+        wait(1);
+        enable = 1;
+        break;  
+        
+                 case '5':
+        segments = znakovi[5];
+        enable = 0;
+        wait(1);
+        enable = 1;
+        break;  
+                case '6':
+        segments = znakovi[6];
+        enable = 0;
+        wait(1);
+        enable = 1;
+        break;  
+                case '7':
+        segments = znakovi[7];
+        enable = 0;
+        wait(1);
+        enable = 1;
+        break;  
+                case '8':
+        segments = znakovi[8];
+        enable = 0;
+        wait(1);
+        enable = 1;
+        break;  
+        
+               case '9':
+        segments = znakovi[9];
+        enable = 0;
+        wait(1);
+        enable = 1;
+        break;  
+        
+               case 'A':
+        segments = znakovi[10];
+        enable = 0;
+        wait(1);
+        enable = 1;
+        break;  
+        
+           case 'B':
+        segments = znakovi[11];
+        enable = 0;
+        wait(1);
+        enable = 1;
+        break;  
+        
+           case 'C':
+        segments = znakovi[12];
+        enable = 0;
+        wait(1);
+        enable = 1;
+        break;  
+        
+           case 'D':
+        segments = znakovi[13];
+        enable = 0;
+        wait(1);
+        enable = 1;
+        break;  
+        
+           case '*':
+        segments = znakovi[14];
+        enable = 0;
+        wait(1);
+        enable = 1;
+        break;  
+        
+           case '#':
+        segments = znakovi[15];
+        enable = 0;
+        wait(1);
+        enable = 1;
+        break;  
+        
+        }
+    }
+}