Marko Spremic 2020/0066 verzija poslednja
Embed:
(wiki syntax)
Show/hide line numbers
main.cpp
00001 /* 00002 *Marko Spremic 00003 *Indeks: 2020/0066 00004 */ 00005 //Ukljucivanje biblioteka: 00006 00007 #include "mbed.h" 00008 00009 //Definisanje direktiva: 00010 #define null 0 00011 #define one 1 00012 #define ADD(x) x+=1; 00013 #define DEC(x) x-=1; 00014 #define time 8 00015 #define time2 50 00016 #define CHECK(x) if(x > 15) x = 0; 00017 #define CHECK_0(x) if(x < 0) x = 15; 00018 00019 //Definisanje glavnih promenljivih: 00020 00021 BusOut led_dis(PA_10, PA_9, PA_8, PB_10, PB_5, PB_4, PB_3, PA_2); 00022 DigitalOut SEL2(PC_7); 00023 DigitalOut SEL1(PB_6); 00024 DigitalIn btn1(PC_9); 00025 DigitalIn btn2(PC_8); 00026 00027 00028 //Definisanje pomocne funkcije: 00029 void write_num(int broj) 00030 { 00031 switch(broj) 00032 { 00033 case 0: led_dis = 0xC0; break; 00034 case 1: led_dis = 0xF9; break; 00035 case 2: led_dis = 0xA4; break; 00036 case 3: led_dis = 0xB0; break; 00037 case 4: led_dis = 0x99; break; 00038 case 5: led_dis = 0x92; break; 00039 case 6: led_dis = 0x82; break; 00040 case 7: led_dis = 0xF8; break; 00041 case 8: led_dis = 0x80; break; 00042 case 9: led_dis = 0x90; break; 00043 default: led_dis = 0xFF; 00044 } 00045 } 00046 00047 //Definisanje glavne funkcije: 00048 00049 int main() 00050 { 00051 int x = null, x1 = null, x2 = null;static char ButtonReleased1 = 1, ButtonReleased2 = 1; 00052 while(1) 00053 { 00054 x1 = x % 10; 00055 x2 = (x / 10 == 1)? 1:-1; 00056 SEL2.write(0); 00057 SEL1.write(1); 00058 write_num(x1); 00059 wait_ms(time); 00060 00061 SEL2.write(1); 00062 SEL1.write(0); 00063 write_num(x2); 00064 wait_ms(time); 00065 00066 if(!btn1 && btn2) 00067 { 00068 if(ButtonReleased1) 00069 { 00070 ADD(x) 00071 CHECK(x) 00072 ButtonReleased1 = 0; 00073 } 00074 wait_ms(time2); 00075 } 00076 else 00077 { 00078 ButtonReleased1 = 1; 00079 } 00080 if(!btn2 && btn1) 00081 { 00082 if(ButtonReleased2) 00083 { 00084 DEC(x) 00085 CHECK_0(x) 00086 ButtonReleased2 = 0; 00087 } 00088 wait_ms(time2); 00089 } 00090 else 00091 { 00092 ButtonReleased2 = 1; 00093 } 00094 } 00095 }
Generated on Sat Oct 1 2022 03:59:27 by
1.7.2