Emina Muharemovic Muris Nuhodzic
Embed:
(wiki syntax)
Show/hide line numbers
main.cpp
00001 #include "mbed.h" 00002 00003 using namespace std; 00004 00005 BusOut segments(dp26, dp27, dp5, dp6, dp28, dp4, dp18); 00006 BusOut cifre(dp23, dp24, dp25); 00007 DigitalOut point(dp17); 00008 00009 InterruptIn taster1(dp1); 00010 InterruptIn taster2(dp2); 00011 00012 Timer d; 00013 Timer count; 00014 Timer t; 00015 Ticker osvjezi; 00016 00017 bool pom = false; 00018 00019 int led[10] = {0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x078,0x0,0x10}; 00020 00021 00022 00023 void display() { 00024 float time = count.read(); 00025 00026 00027 int cifra1=(int)(time) / 10; 00028 int cifra2=(int)(time) % 10; 00029 int cifra3=(int)((time - int(time))* 10); 00030 00031 cifre = 7; 00032 segments = led[cifra1]; 00033 cifre = 6; 00034 point = 1; 00035 t.reset(); 00036 t.start(); 00037 while(t.read_ms() < 2); 00038 00039 00040 cifre = 7; 00041 00042 segments = led[cifra2]; 00043 cifre = 5; 00044 point = 0; 00045 t.reset(); 00046 t.start(); 00047 while(t.read_ms() < 2); 00048 00049 cifre = 7; 00050 00051 segments = led[cifra3]; 00052 cifre = 3; 00053 point = 1; 00054 t.reset(); 00055 t.start(); 00056 while(t.read_ms() < 2); 00057 00058 cifre=7; 00059 segments = 7; 00060 point = 1; 00061 } 00062 00063 void pocetak_Kraj() 00064 { 00065 if(d.read_ms() >= 200) 00066 { 00067 if(!pom) 00068 { count.start(); 00069 pom = true; 00070 } 00071 else 00072 {count.stop(); 00073 pom = false; 00074 } 00075 d.reset(); 00076 } 00077 } 00078 00079 00080 void reset() 00081 { 00082 count.reset(); 00083 count.stop(); 00084 pom = false; 00085 } 00086 00087 int main() { 00088 cifre=0; 00089 segments=0; 00090 wait(1); 00091 cifre=7; 00092 wait(1); 00093 cifre=0; 00094 wait(1); 00095 00096 d.start(); 00097 taster1.rise(&pocetak_Kraj); 00098 00099 taster2.rise(&reset); 00100 00101 osvjezi.attach_us(&display, 10000); 00102 00103 while(true) { 00104 00105 } 00106 00107 00108 }
Generated on Thu Oct 27 2022 08:22:20 by
1.7.2