tim003 tim003
/
LV3-Zadatak2
Durakovic Adna Gazetic Elma
Diff: main.cpp
- 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; + + } + } +}