Jovan Jovanovic 2019/0469
Dependencies: 19E042PIM_MB_PINS
main1.txt@0:01c4b34da6d2, 2022-01-17 (annotated)
- Committer:
- dzombah
- Date:
- Mon Jan 17 16:12:11 2022 +0000
- Revision:
- 0:01c4b34da6d2
; Jovan Jovanovic 2019/0469
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
dzombah | 0:01c4b34da6d2 | 1 | // biblioteke za uvoz: |
dzombah | 0:01c4b34da6d2 | 2 | #include "mbed.h" |
dzombah | 0:01c4b34da6d2 | 3 | |
dzombah | 0:01c4b34da6d2 | 4 | //pinovi |
dzombah | 0:01c4b34da6d2 | 5 | #define A PA_10 |
dzombah | 0:01c4b34da6d2 | 6 | #define B PA_9 |
dzombah | 0:01c4b34da6d2 | 7 | #define C PA_8 |
dzombah | 0:01c4b34da6d2 | 8 | #define D PB_10 |
dzombah | 0:01c4b34da6d2 | 9 | #define E PB_5 |
dzombah | 0:01c4b34da6d2 | 10 | #define F PB_4 |
dzombah | 0:01c4b34da6d2 | 11 | #define G PB_3 |
dzombah | 0:01c4b34da6d2 | 12 | #define SEL1 PB_6 |
dzombah | 0:01c4b34da6d2 | 13 | #define SEL2 PC_7 |
dzombah | 0:01c4b34da6d2 | 14 | #define SW1 PC_9 |
dzombah | 0:01c4b34da6d2 | 15 | #define SW2 PC_8 |
dzombah | 0:01c4b34da6d2 | 16 | |
dzombah | 0:01c4b34da6d2 | 17 | //makroi: |
dzombah | 0:01c4b34da6d2 | 18 | #define WAITTIME_MS 1 |
dzombah | 0:01c4b34da6d2 | 19 | |
dzombah | 0:01c4b34da6d2 | 20 | // globalne promenjive: |
dzombah | 0:01c4b34da6d2 | 21 | BusOut display (A,B,C,D,E,F,G); |
dzombah | 0:01c4b34da6d2 | 22 | BusOut select (SEL2,SEL1); |
dzombah | 0:01c4b34da6d2 | 23 | DigitalIn Dugme1 (SW1); |
dzombah | 0:01c4b34da6d2 | 24 | DigitalIn Dugme2 (SW2); |
dzombah | 0:01c4b34da6d2 | 25 | |
dzombah | 0:01c4b34da6d2 | 26 | //definicije funkcija: |
dzombah | 0:01c4b34da6d2 | 27 | void konvertor (int num){ |
dzombah | 0:01c4b34da6d2 | 28 | switch(num){ |
dzombah | 0:01c4b34da6d2 | 29 | case 0:display = 0b1000000;break; |
dzombah | 0:01c4b34da6d2 | 30 | case 1:display = 0b1111001;break; |
dzombah | 0:01c4b34da6d2 | 31 | case 2:display = 0b0100100;break; |
dzombah | 0:01c4b34da6d2 | 32 | case 3:display = 0b0110000;break; |
dzombah | 0:01c4b34da6d2 | 33 | case 4:display = 0b0011001;break; |
dzombah | 0:01c4b34da6d2 | 34 | case 5:display = 0b0010010;break; |
dzombah | 0:01c4b34da6d2 | 35 | case 6:display = 0b0000010;break; |
dzombah | 0:01c4b34da6d2 | 36 | case 7:display = 0b1111000;break; |
dzombah | 0:01c4b34da6d2 | 37 | case 8:display = 0b0000000;break; |
dzombah | 0:01c4b34da6d2 | 38 | case 9:display = 0b0010000;break; |
dzombah | 0:01c4b34da6d2 | 39 | default:display = 0x7f; break; |
dzombah | 0:01c4b34da6d2 | 40 | } |
dzombah | 0:01c4b34da6d2 | 41 | } |
dzombah | 0:01c4b34da6d2 | 42 | |
dzombah | 0:01c4b34da6d2 | 43 | |
dzombah | 0:01c4b34da6d2 | 44 | void ispisi(int num){ |
dzombah | 0:01c4b34da6d2 | 45 | int j = num%10, d = num/10; |
dzombah | 0:01c4b34da6d2 | 46 | if(d==0) |
dzombah | 0:01c4b34da6d2 | 47 | konvertor(-1); |
dzombah | 0:01c4b34da6d2 | 48 | else |
dzombah | 0:01c4b34da6d2 | 49 | konvertor(d); |
dzombah | 0:01c4b34da6d2 | 50 | select = 01; |
dzombah | 0:01c4b34da6d2 | 51 | wait_ms(WAITTIME_MS); |
dzombah | 0:01c4b34da6d2 | 52 | konvertor(j); |
dzombah | 0:01c4b34da6d2 | 53 | select = 10; |
dzombah | 0:01c4b34da6d2 | 54 | wait_ms(WAITTIME_MS); |
dzombah | 0:01c4b34da6d2 | 55 | } |
dzombah | 0:01c4b34da6d2 | 56 | |
dzombah | 0:01c4b34da6d2 | 57 | |
dzombah | 0:01c4b34da6d2 | 58 | |
dzombah | 0:01c4b34da6d2 | 59 | |
dzombah | 0:01c4b34da6d2 | 60 | //pomocne promenjive |
dzombah | 0:01c4b34da6d2 | 61 | int lastDugme1=1,lastDugme2=1; |
dzombah | 0:01c4b34da6d2 | 62 | int lastlastDugme1=1,lastlastDugme2=1; |
dzombah | 0:01c4b34da6d2 | 63 | int brojac=0; |
dzombah | 0:01c4b34da6d2 | 64 | |
dzombah | 0:01c4b34da6d2 | 65 | |
dzombah | 0:01c4b34da6d2 | 66 | // glavna funkcija: |
dzombah | 0:01c4b34da6d2 | 67 | |
dzombah | 0:01c4b34da6d2 | 68 | int main(){ |
dzombah | 0:01c4b34da6d2 | 69 | //Default vrednosti za sve ugaseno |
dzombah | 0:01c4b34da6d2 | 70 | display = 1111111; |
dzombah | 0:01c4b34da6d2 | 71 | select = 111; |
dzombah | 0:01c4b34da6d2 | 72 | |
dzombah | 0:01c4b34da6d2 | 73 | while(1){ |
dzombah | 0:01c4b34da6d2 | 74 | |
dzombah | 0:01c4b34da6d2 | 75 | ispisi(brojac); |
dzombah | 0:01c4b34da6d2 | 76 | |
dzombah | 0:01c4b34da6d2 | 77 | |
dzombah | 0:01c4b34da6d2 | 78 | if(lastlastDugme1==0 && lastDugme1==0 && Dugme1==1) |
dzombah | 0:01c4b34da6d2 | 79 | brojac=(brojac+1)%11; |
dzombah | 0:01c4b34da6d2 | 80 | |
dzombah | 0:01c4b34da6d2 | 81 | if(lastlastDugme2==0 && lastDugme2==0 && Dugme2==1) |
dzombah | 0:01c4b34da6d2 | 82 | brojac=(brojac+10)%11; |
dzombah | 0:01c4b34da6d2 | 83 | |
dzombah | 0:01c4b34da6d2 | 84 | |
dzombah | 0:01c4b34da6d2 | 85 | lastlastDugme1=lastDugme1; |
dzombah | 0:01c4b34da6d2 | 86 | lastlastDugme2=lastDugme2; |
dzombah | 0:01c4b34da6d2 | 87 | |
dzombah | 0:01c4b34da6d2 | 88 | lastDugme1=Dugme1; |
dzombah | 0:01c4b34da6d2 | 89 | lastDugme2=Dugme2; |
dzombah | 0:01c4b34da6d2 | 90 | |
dzombah | 0:01c4b34da6d2 | 91 | } |
dzombah | 0:01c4b34da6d2 | 92 | |
dzombah | 0:01c4b34da6d2 | 93 | } |
dzombah | 0:01c4b34da6d2 | 94 | |
dzombah | 0:01c4b34da6d2 | 95 | |
dzombah | 0:01c4b34da6d2 | 96 | |
dzombah | 0:01c4b34da6d2 | 97 |