Prvi test iz Praktikuma iz mikrokontrolera - ETF 2021

Dependencies:   mbed

Committer:
yu5eea
Date:
Sat Nov 06 09:28:32 2021 +0000
Revision:
0:3231ebcb290c
Prvi test iz Praktikuma iz mikrokontrolera - ETF 2021

Who changed what in which revision?

UserRevisionLine numberNew contents of line
yu5eea 0:3231ebcb290c 1 // Uvoz datoteka
yu5eea 0:3231ebcb290c 2 #include "mbed.h"
yu5eea 0:3231ebcb290c 3
yu5eea 0:3231ebcb290c 4 //Definisanje direktiva i glavnih promenljivih
yu5eea 0:3231ebcb290c 5 #define BR0 0x01 //10000 0001
yu5eea 0:3231ebcb290c 6 #define BR1 0x4F //10100 1111
yu5eea 0:3231ebcb290c 7 #define BR2 0x12 //10001 0010
yu5eea 0:3231ebcb290c 8 #define BR3 0x06 //10000 0110
yu5eea 0:3231ebcb290c 9 #define BR4 0x4C //10100 1100
yu5eea 0:3231ebcb290c 10 #define BR5 0x24 //10010 0100
yu5eea 0:3231ebcb290c 11 #define BR6 0x20 //10010 0000
yu5eea 0:3231ebcb290c 12 #define BR7 0x0F //10000 1111
yu5eea 0:3231ebcb290c 13 #define BR8 0x00 //10000 0000
yu5eea 0:3231ebcb290c 14 #define BR9 0x04 //10000 0100
yu5eea 0:3231ebcb290c 15
yu5eea 0:3231ebcb290c 16 // A B C D E F G
yu5eea 0:3231ebcb290c 17 BusOut display(PB_3, PB_4, PB_5, PB_10, PA_8, PA_9, PA_10);
yu5eea 0:3231ebcb290c 18
yu5eea 0:3231ebcb290c 19 DigitalOut SEL1(PB_6);
yu5eea 0:3231ebcb290c 20 DigitalOut SEL2(PC_7);
yu5eea 0:3231ebcb290c 21 DigitalIn SW1(PC_9);
yu5eea 0:3231ebcb290c 22 DigitalIn SW2(PC_8);
yu5eea 0:3231ebcb290c 23 //Pomocne funkcije
yu5eea 0:3231ebcb290c 24
yu5eea 0:3231ebcb290c 25 //Glavna funkija
yu5eea 0:3231ebcb290c 26 int main()
yu5eea 0:3231ebcb290c 27 {
yu5eea 0:3231ebcb290c 28 int broj = 0;
yu5eea 0:3231ebcb290c 29 SEL1.write(1);
yu5eea 0:3231ebcb290c 30 SEL2.write(0);
yu5eea 0:3231ebcb290c 31 display = BR0;
yu5eea 0:3231ebcb290c 32 while(true)
yu5eea 0:3231ebcb290c 33 {
yu5eea 0:3231ebcb290c 34
yu5eea 0:3231ebcb290c 35 if(SW1 == 0)
yu5eea 0:3231ebcb290c 36 {
yu5eea 0:3231ebcb290c 37 wait_ms(100);
yu5eea 0:3231ebcb290c 38 if(broj != 15)
yu5eea 0:3231ebcb290c 39 {
yu5eea 0:3231ebcb290c 40 broj++;
yu5eea 0:3231ebcb290c 41 }
yu5eea 0:3231ebcb290c 42 else
yu5eea 0:3231ebcb290c 43 {
yu5eea 0:3231ebcb290c 44 broj=0;
yu5eea 0:3231ebcb290c 45 }
yu5eea 0:3231ebcb290c 46 }
yu5eea 0:3231ebcb290c 47
yu5eea 0:3231ebcb290c 48 if(SW2 == 0)
yu5eea 0:3231ebcb290c 49 {
yu5eea 0:3231ebcb290c 50 wait_ms(100);
yu5eea 0:3231ebcb290c 51 if(broj != 0)
yu5eea 0:3231ebcb290c 52 {
yu5eea 0:3231ebcb290c 53 broj--;
yu5eea 0:3231ebcb290c 54 }
yu5eea 0:3231ebcb290c 55 else
yu5eea 0:3231ebcb290c 56 {
yu5eea 0:3231ebcb290c 57 broj=15;
yu5eea 0:3231ebcb290c 58 }
yu5eea 0:3231ebcb290c 59 }
yu5eea 0:3231ebcb290c 60
yu5eea 0:3231ebcb290c 61 if(broj == 0)
yu5eea 0:3231ebcb290c 62 {
yu5eea 0:3231ebcb290c 63 SEL1.write(1);
yu5eea 0:3231ebcb290c 64 SEL2.write(0);
yu5eea 0:3231ebcb290c 65 display = BR0;
yu5eea 0:3231ebcb290c 66 wait_ms(200);
yu5eea 0:3231ebcb290c 67
yu5eea 0:3231ebcb290c 68 }
yu5eea 0:3231ebcb290c 69 if(broj == 1)
yu5eea 0:3231ebcb290c 70 {
yu5eea 0:3231ebcb290c 71 SEL1.write(1);
yu5eea 0:3231ebcb290c 72 SEL2.write(0);
yu5eea 0:3231ebcb290c 73 display = BR1;
yu5eea 0:3231ebcb290c 74 wait_ms(200);
yu5eea 0:3231ebcb290c 75 }
yu5eea 0:3231ebcb290c 76 if(broj == 2)
yu5eea 0:3231ebcb290c 77 {
yu5eea 0:3231ebcb290c 78 SEL1.write(1);
yu5eea 0:3231ebcb290c 79 SEL2.write(0);
yu5eea 0:3231ebcb290c 80 display = BR2;
yu5eea 0:3231ebcb290c 81 wait_ms(200);
yu5eea 0:3231ebcb290c 82 }
yu5eea 0:3231ebcb290c 83 if(broj == 3)
yu5eea 0:3231ebcb290c 84 {
yu5eea 0:3231ebcb290c 85 SEL1.write(1);
yu5eea 0:3231ebcb290c 86 SEL2.write(0);
yu5eea 0:3231ebcb290c 87 display = BR3;
yu5eea 0:3231ebcb290c 88 wait_ms(200);
yu5eea 0:3231ebcb290c 89 }
yu5eea 0:3231ebcb290c 90 if(broj == 4)
yu5eea 0:3231ebcb290c 91 {
yu5eea 0:3231ebcb290c 92 SEL1.write(1);
yu5eea 0:3231ebcb290c 93 SEL2.write(0);
yu5eea 0:3231ebcb290c 94 display = BR4;
yu5eea 0:3231ebcb290c 95 wait_ms(200);
yu5eea 0:3231ebcb290c 96 }
yu5eea 0:3231ebcb290c 97 if(broj == 5)
yu5eea 0:3231ebcb290c 98 {
yu5eea 0:3231ebcb290c 99 SEL1.write(1);
yu5eea 0:3231ebcb290c 100 SEL2.write(0);
yu5eea 0:3231ebcb290c 101 display = BR5;
yu5eea 0:3231ebcb290c 102 wait_ms(200);
yu5eea 0:3231ebcb290c 103 }
yu5eea 0:3231ebcb290c 104 if(broj == 6)
yu5eea 0:3231ebcb290c 105 {
yu5eea 0:3231ebcb290c 106 SEL1.write(1);
yu5eea 0:3231ebcb290c 107 SEL2.write(0);
yu5eea 0:3231ebcb290c 108 display = BR6;
yu5eea 0:3231ebcb290c 109 wait_ms(200);
yu5eea 0:3231ebcb290c 110 }
yu5eea 0:3231ebcb290c 111 if(broj == 7)
yu5eea 0:3231ebcb290c 112 {
yu5eea 0:3231ebcb290c 113 SEL1.write(1);
yu5eea 0:3231ebcb290c 114 SEL2.write(0);
yu5eea 0:3231ebcb290c 115 display = BR7;
yu5eea 0:3231ebcb290c 116 wait_ms(200);
yu5eea 0:3231ebcb290c 117 }
yu5eea 0:3231ebcb290c 118 if(broj == 8)
yu5eea 0:3231ebcb290c 119 {
yu5eea 0:3231ebcb290c 120 SEL1.write(1);
yu5eea 0:3231ebcb290c 121 SEL2.write(0);
yu5eea 0:3231ebcb290c 122 display = BR8;
yu5eea 0:3231ebcb290c 123 wait_ms(200);
yu5eea 0:3231ebcb290c 124 }
yu5eea 0:3231ebcb290c 125 if(broj == 9)
yu5eea 0:3231ebcb290c 126 {
yu5eea 0:3231ebcb290c 127 SEL1.write(1);
yu5eea 0:3231ebcb290c 128 SEL2.write(0);
yu5eea 0:3231ebcb290c 129 display = BR9;
yu5eea 0:3231ebcb290c 130 wait_ms(200);
yu5eea 0:3231ebcb290c 131 }
yu5eea 0:3231ebcb290c 132 if(broj == 10)
yu5eea 0:3231ebcb290c 133 {
yu5eea 0:3231ebcb290c 134 SEL1.write(0);
yu5eea 0:3231ebcb290c 135 SEL2.write(1);
yu5eea 0:3231ebcb290c 136 display = BR1;
yu5eea 0:3231ebcb290c 137 wait_ms(10);
yu5eea 0:3231ebcb290c 138 SEL1.write(1);
yu5eea 0:3231ebcb290c 139 SEL2.write(0);
yu5eea 0:3231ebcb290c 140 display = BR0;
yu5eea 0:3231ebcb290c 141 wait_ms(10);
yu5eea 0:3231ebcb290c 142
yu5eea 0:3231ebcb290c 143 }
yu5eea 0:3231ebcb290c 144 if(broj == 11)
yu5eea 0:3231ebcb290c 145 {
yu5eea 0:3231ebcb290c 146 SEL1.write(0);
yu5eea 0:3231ebcb290c 147 SEL2.write(1);
yu5eea 0:3231ebcb290c 148 display = BR1;
yu5eea 0:3231ebcb290c 149 wait_ms(10);
yu5eea 0:3231ebcb290c 150 SEL1.write(1);
yu5eea 0:3231ebcb290c 151 SEL2.write(0);
yu5eea 0:3231ebcb290c 152 display = BR1;
yu5eea 0:3231ebcb290c 153 wait_ms(10);
yu5eea 0:3231ebcb290c 154
yu5eea 0:3231ebcb290c 155 }
yu5eea 0:3231ebcb290c 156 if(broj == 12)
yu5eea 0:3231ebcb290c 157 {
yu5eea 0:3231ebcb290c 158 SEL1.write(0);
yu5eea 0:3231ebcb290c 159 SEL2.write(1);
yu5eea 0:3231ebcb290c 160 display = BR1;
yu5eea 0:3231ebcb290c 161 wait_ms(10);
yu5eea 0:3231ebcb290c 162 SEL1.write(1);
yu5eea 0:3231ebcb290c 163 SEL2.write(0);
yu5eea 0:3231ebcb290c 164 display = BR2;
yu5eea 0:3231ebcb290c 165 wait_ms(10);
yu5eea 0:3231ebcb290c 166
yu5eea 0:3231ebcb290c 167 }
yu5eea 0:3231ebcb290c 168 if(broj == 13)
yu5eea 0:3231ebcb290c 169 {
yu5eea 0:3231ebcb290c 170 SEL1.write(0);
yu5eea 0:3231ebcb290c 171 SEL2.write(1);
yu5eea 0:3231ebcb290c 172 display = BR1;
yu5eea 0:3231ebcb290c 173 wait_ms(10);
yu5eea 0:3231ebcb290c 174 SEL1.write(1);
yu5eea 0:3231ebcb290c 175 SEL2.write(0);
yu5eea 0:3231ebcb290c 176 display = BR3;
yu5eea 0:3231ebcb290c 177 wait_ms(10);
yu5eea 0:3231ebcb290c 178
yu5eea 0:3231ebcb290c 179 }
yu5eea 0:3231ebcb290c 180 if(broj == 14)
yu5eea 0:3231ebcb290c 181 {
yu5eea 0:3231ebcb290c 182 SEL1.write(0);
yu5eea 0:3231ebcb290c 183 SEL2.write(1);
yu5eea 0:3231ebcb290c 184 display = BR1;
yu5eea 0:3231ebcb290c 185 wait_ms(10);
yu5eea 0:3231ebcb290c 186 SEL1.write(1);
yu5eea 0:3231ebcb290c 187 SEL2.write(0);
yu5eea 0:3231ebcb290c 188 display = BR4;
yu5eea 0:3231ebcb290c 189 wait_ms(10);
yu5eea 0:3231ebcb290c 190
yu5eea 0:3231ebcb290c 191 }
yu5eea 0:3231ebcb290c 192 if(broj == 15)
yu5eea 0:3231ebcb290c 193 {
yu5eea 0:3231ebcb290c 194 SEL1.write(0);
yu5eea 0:3231ebcb290c 195 SEL2.write(1);
yu5eea 0:3231ebcb290c 196 display = BR1;
yu5eea 0:3231ebcb290c 197 wait_ms(10);
yu5eea 0:3231ebcb290c 198 SEL1.write(1);
yu5eea 0:3231ebcb290c 199 SEL2.write(0);
yu5eea 0:3231ebcb290c 200 display = BR5;
yu5eea 0:3231ebcb290c 201 wait_ms(10);
yu5eea 0:3231ebcb290c 202
yu5eea 0:3231ebcb290c 203 }
yu5eea 0:3231ebcb290c 204
yu5eea 0:3231ebcb290c 205
yu5eea 0:3231ebcb290c 206
yu5eea 0:3231ebcb290c 207
yu5eea 0:3231ebcb290c 208
yu5eea 0:3231ebcb290c 209
yu5eea 0:3231ebcb290c 210
yu5eea 0:3231ebcb290c 211
yu5eea 0:3231ebcb290c 212
yu5eea 0:3231ebcb290c 213
yu5eea 0:3231ebcb290c 214 }
yu5eea 0:3231ebcb290c 215 }
yu5eea 0:3231ebcb290c 216