2020/0425 Milos Novakovic

Dependencies:   mbed

Committer:
mlos55
Date:
Sat Nov 06 09:27:37 2021 +0000
Revision:
1:4bf71be0038a
Parent:
0:e776d140b732
2020/0425 Milos Novakovic;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mlos55 1:4bf71be0038a 1 //Milos Novakovic 2020/0425
mlos55 0:e776d140b732 2
mlos55 1:4bf71be0038a 3
mlos55 1:4bf71be0038a 4 //Uvoz biblioteka i def. direktiva
mlos55 0:e776d140b732 5
mlos55 0:e776d140b732 6 #include "mbed.h"
mlos55 0:e776d140b732 7
mlos55 0:e776d140b732 8 //Globalne promjenljive
mlos55 0:e776d140b732 9
mlos55 0:e776d140b732 10 BusOut display1(PA_10, PA_9,PA_8,PB_10,PB_5,PB_4,PB_3);
mlos55 0:e776d140b732 11 BusOut display2(PA_10, PA_9,PA_8,PB_10,PB_5,PB_4,PB_3);
mlos55 0:e776d140b732 12 DigitalOut SEL2(PC_7);
mlos55 0:e776d140b732 13 DigitalOut SEL1(PB_6);
mlos55 1:4bf71be0038a 14 DigitalIn BUTTON(PC_8); //SW2
mlos55 1:4bf71be0038a 15 DigitalIn BUTTON2(PC_9); //SW1
mlos55 0:e776d140b732 16 static char i=0;
mlos55 0:e776d140b732 17
mlos55 1:4bf71be0038a 18 //Definicija f-ja
mlos55 0:e776d140b732 19
mlos55 0:e776d140b732 20 void increment(void){
mlos55 0:e776d140b732 21 switch(i){
mlos55 1:4bf71be0038a 22 case 0: SEL1=1;display2=0x40; break;
mlos55 1:4bf71be0038a 23 case 1: display2=0xF9; break;
mlos55 1:4bf71be0038a 24 case 2: display2=0xA4; break;
mlos55 1:4bf71be0038a 25 case 3: display2=0xB0; break;
mlos55 1:4bf71be0038a 26 case 4: display2=0x99; break;
mlos55 1:4bf71be0038a 27 case 5: display2=0x92; break;
mlos55 1:4bf71be0038a 28 case 6: display2=0x82; break;
mlos55 1:4bf71be0038a 29 case 7: display2=0xF8; break;
mlos55 1:4bf71be0038a 30 case 8: display2=0x80; break;
mlos55 1:4bf71be0038a 31 case 9: display2=0x90; break;
mlos55 1:4bf71be0038a 32 case 10: SEL1=1; SEL2=0; display2=0x40;break;
mlos55 1:4bf71be0038a 33 case 11: SEL1=1; SEL2=0; display2=0xF9;break;
mlos55 1:4bf71be0038a 34 case 12: SEL1=1; SEL2=0; display2=0xA4;break;
mlos55 1:4bf71be0038a 35 case 13: SEL1=1; SEL2=0; display2=0xB0;break;
mlos55 1:4bf71be0038a 36 case 14: SEL1=1; SEL2=0; display2=0x99;break;
mlos55 1:4bf71be0038a 37 case 15: SEL1=1; SEL2=0; display2=0x92; SEL2=0;SEL1=1; break;
mlos55 0:e776d140b732 38
mlos55 0:e776d140b732 39 }
mlos55 0:e776d140b732 40 }
mlos55 1:4bf71be0038a 41
mlos55 1:4bf71be0038a 42 //Glavni program
mlos55 0:e776d140b732 43 int main(){
mlos55 0:e776d140b732 44 SEL1=1;
mlos55 0:e776d140b732 45 SEL2=0;
mlos55 0:e776d140b732 46 display2=0x40;
mlos55 1:4bf71be0038a 47
mlos55 0:e776d140b732 48 while(1){
mlos55 1:4bf71be0038a 49
mlos55 1:4bf71be0038a 50 //Testirano bez jumpera
mlos55 1:4bf71be0038a 51
mlos55 1:4bf71be0038a 52 while(BUTTON==1){
mlos55 1:4bf71be0038a 53 if(i>9){
mlos55 1:4bf71be0038a 54 SEL2=1; SEL1=0; display1=0xF9;
mlos55 1:4bf71be0038a 55 wait_ms(10);
mlos55 1:4bf71be0038a 56 increment();
mlos55 1:4bf71be0038a 57 wait_ms(10);
mlos55 1:4bf71be0038a 58 }}
mlos55 1:4bf71be0038a 59
mlos55 0:e776d140b732 60 if(BUTTON==0){
mlos55 1:4bf71be0038a 61 SEL2=0;
mlos55 1:4bf71be0038a 62 if(i!=15){
mlos55 0:e776d140b732 63 i=i++;
mlos55 0:e776d140b732 64 increment();
mlos55 1:4bf71be0038a 65 }
mlos55 1:4bf71be0038a 66 else i=0;
mlos55 1:4bf71be0038a 67 increment();
mlos55 1:4bf71be0038a 68 while(BUTTON==0);
mlos55 1:4bf71be0038a 69 wait_ms(120);
mlos55 1:4bf71be0038a 70 }
mlos55 1:4bf71be0038a 71
mlos55 1:4bf71be0038a 72
mlos55 1:4bf71be0038a 73 //Bonus
mlos55 1:4bf71be0038a 74 if(BUTTON2==0){
mlos55 1:4bf71be0038a 75 if(i==0) i=15;
mlos55 1:4bf71be0038a 76 else i=i--;
mlos55 1:4bf71be0038a 77 increment();
mlos55 1:4bf71be0038a 78 while(BUTTON2==0);
mlos55 1:4bf71be0038a 79 }
mlos55 1:4bf71be0038a 80
mlos55 0:e776d140b732 81 }
mlos55 0:e776d140b732 82
mlos55 0:e776d140b732 83
mlos55 0:e776d140b732 84 }
mlos55 0:e776d140b732 85
mlos55 0:e776d140b732 86
mlos55 0:e776d140b732 87
mlos55 0:e776d140b732 88