tim003 tim003
/
LV6-Grupa6-tim003-Zadatak1
Hadzic Muharem Haris Šemić
main.cpp@0:a2ffc0e92dde, 2014-04-10 (annotated)
- Committer:
- tim003
- Date:
- Thu Apr 10 15:19:46 2014 +0000
- Revision:
- 0:a2ffc0e92dde
LV6-PAI-Grupa6-tim003
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
tim003 | 0:a2ffc0e92dde | 1 | #include "mbed.h" |
tim003 | 0:a2ffc0e92dde | 2 | |
tim003 | 0:a2ffc0e92dde | 3 | BusOut Broj(dp17,dp18,dp4,dp28,dp6,dp5,dp27,dp26); |
tim003 | 0:a2ffc0e92dde | 4 | BusOut Cifra(dp23,dp24,dp25); |
tim003 | 0:a2ffc0e92dde | 5 | |
tim003 | 0:a2ffc0e92dde | 6 | int broj[10]={0x03,0x9F,0x25,0x0D,0x99,0x49,0x41,0x1F,0x01,0x09}; |
tim003 | 0:a2ffc0e92dde | 7 | int brojDP[10]={0x02,0x9E,0x24,0x0C,0x98,0x48,0x40,0x1E,0x00,0x08}; |
tim003 | 0:a2ffc0e92dde | 8 | int cifra[3]={0xB,0xD,0xE}; |
tim003 | 0:a2ffc0e92dde | 9 | |
tim003 | 0:a2ffc0e92dde | 10 | InterruptIn taster1(dp1); |
tim003 | 0:a2ffc0e92dde | 11 | InterruptIn taster2(dp2); |
tim003 | 0:a2ffc0e92dde | 12 | |
tim003 | 0:a2ffc0e92dde | 13 | //Timer desetinka; |
tim003 | 0:a2ffc0e92dde | 14 | //Timer jedinica; |
tim003 | 0:a2ffc0e92dde | 15 | //Timer desetica; |
tim003 | 0:a2ffc0e92dde | 16 | |
tim003 | 0:a2ffc0e92dde | 17 | Ticker osvjezavanje; |
tim003 | 0:a2ffc0e92dde | 18 | Ticker desetinka; |
tim003 | 0:a2ffc0e92dde | 19 | Timer debounce; |
tim003 | 0:a2ffc0e92dde | 20 | |
tim003 | 0:a2ffc0e92dde | 21 | bool s(false),stop(true); |
tim003 | 0:a2ffc0e92dde | 22 | int b1(0),b2(0),b3(0),c(0); |
tim003 | 0:a2ffc0e92dde | 23 | |
tim003 | 0:a2ffc0e92dde | 24 | void f1(){ |
tim003 | 0:a2ffc0e92dde | 25 | if(!stop){ |
tim003 | 0:a2ffc0e92dde | 26 | b1++; |
tim003 | 0:a2ffc0e92dde | 27 | if(b1==10){ |
tim003 | 0:a2ffc0e92dde | 28 | b1=0; |
tim003 | 0:a2ffc0e92dde | 29 | b2++; |
tim003 | 0:a2ffc0e92dde | 30 | if(b2==10){ |
tim003 | 0:a2ffc0e92dde | 31 | b2=0; |
tim003 | 0:a2ffc0e92dde | 32 | b3++; |
tim003 | 0:a2ffc0e92dde | 33 | if(b3==10) b3=0; |
tim003 | 0:a2ffc0e92dde | 34 | } |
tim003 | 0:a2ffc0e92dde | 35 | } |
tim003 | 0:a2ffc0e92dde | 36 | } |
tim003 | 0:a2ffc0e92dde | 37 | } |
tim003 | 0:a2ffc0e92dde | 38 | |
tim003 | 0:a2ffc0e92dde | 39 | void start(){ |
tim003 | 0:a2ffc0e92dde | 40 | if(debounce.read_ms()>200){ |
tim003 | 0:a2ffc0e92dde | 41 | if(!s){ |
tim003 | 0:a2ffc0e92dde | 42 | stop=false; |
tim003 | 0:a2ffc0e92dde | 43 | s=true; |
tim003 | 0:a2ffc0e92dde | 44 | } |
tim003 | 0:a2ffc0e92dde | 45 | else{ |
tim003 | 0:a2ffc0e92dde | 46 | stop=true; |
tim003 | 0:a2ffc0e92dde | 47 | s=false; |
tim003 | 0:a2ffc0e92dde | 48 | } |
tim003 | 0:a2ffc0e92dde | 49 | } |
tim003 | 0:a2ffc0e92dde | 50 | debounce.reset(); |
tim003 | 0:a2ffc0e92dde | 51 | } |
tim003 | 0:a2ffc0e92dde | 52 | |
tim003 | 0:a2ffc0e92dde | 53 | void reset(){ |
tim003 | 0:a2ffc0e92dde | 54 | stop=true; |
tim003 | 0:a2ffc0e92dde | 55 | b1=0; |
tim003 | 0:a2ffc0e92dde | 56 | b2=0; |
tim003 | 0:a2ffc0e92dde | 57 | b3=0; |
tim003 | 0:a2ffc0e92dde | 58 | s=false; |
tim003 | 0:a2ffc0e92dde | 59 | } |
tim003 | 0:a2ffc0e92dde | 60 | |
tim003 | 0:a2ffc0e92dde | 61 | void osvjezi(){ |
tim003 | 0:a2ffc0e92dde | 62 | Cifra=0xF; |
tim003 | 0:a2ffc0e92dde | 63 | if(c==0){ |
tim003 | 0:a2ffc0e92dde | 64 | Broj=broj[b1]; |
tim003 | 0:a2ffc0e92dde | 65 | } |
tim003 | 0:a2ffc0e92dde | 66 | else if(c==1){ |
tim003 | 0:a2ffc0e92dde | 67 | Broj=brojDP[b2]; |
tim003 | 0:a2ffc0e92dde | 68 | } |
tim003 | 0:a2ffc0e92dde | 69 | else{ |
tim003 | 0:a2ffc0e92dde | 70 | Broj=broj[b3]; |
tim003 | 0:a2ffc0e92dde | 71 | } |
tim003 | 0:a2ffc0e92dde | 72 | Cifra=cifra[c]; |
tim003 | 0:a2ffc0e92dde | 73 | c++; |
tim003 | 0:a2ffc0e92dde | 74 | if(c==3) c=0; |
tim003 | 0:a2ffc0e92dde | 75 | } |
tim003 | 0:a2ffc0e92dde | 76 | |
tim003 | 0:a2ffc0e92dde | 77 | |
tim003 | 0:a2ffc0e92dde | 78 | |
tim003 | 0:a2ffc0e92dde | 79 | int main() { |
tim003 | 0:a2ffc0e92dde | 80 | debounce.start(); |
tim003 | 0:a2ffc0e92dde | 81 | taster1.rise(&start); |
tim003 | 0:a2ffc0e92dde | 82 | taster2.rise(&reset); |
tim003 | 0:a2ffc0e92dde | 83 | desetinka.attach(&f1,0.1); |
tim003 | 0:a2ffc0e92dde | 84 | osvjezavanje.attach(&osvjezi,0.001); |
tim003 | 0:a2ffc0e92dde | 85 | while(1) { |
tim003 | 0:a2ffc0e92dde | 86 | |
tim003 | 0:a2ffc0e92dde | 87 | } |
tim003 | 0:a2ffc0e92dde | 88 | } |