Matija Vučina Juraj Meštrović

Dependencies:   mbed

Files at this revision

API Documentation at this revision

Comitter:
mvucina
Date:
Fri Jun 12 17:26:12 2015 +0000
Parent:
0:61f6dae447a3
Commit message:
Zadatak 1

Changed in this revision

main.cpp Show annotated file Show diff for this revision Revisions of this file
diff -r 61f6dae447a3 -r f16f1d69b376 main.cpp
--- a/main.cpp	Fri Jun 12 16:53:09 2015 +0000
+++ b/main.cpp	Fri Jun 12 17:26:12 2015 +0000
@@ -1,31 +1,32 @@
+/*
+Zadatak 1 Vu metar sa 20 LED elemenata.
+2 LED stripa svaki s 10 LED.        2 funkcije: pojedinačna LED, Rastuci niz LED
+Matija Vučina   &   Juraj Meštrović
+*/
 #include "mbed.h"
 
 BusOut LedStrip(p14,p13,p12,p11,p10,p9,p8,p7,p6,p5);
-//BusOut LedStrip(p5,p6,p7,p8,p9,p10,p11,p12,p13,p14);
 DigitalOut Strip1(p21);
 DigitalOut Strip2(p22);
 DigitalIn Din(p28);
-AnalogIn Ain(p20);   // float
+AnalogIn Ain(p20);   //  analogni ulaz   izmedu 0.0 i 1.0 
 
 void VuRastuci (float analog);
 void VuPojedinacno (float analog);
 
-int main(){
-
+int main()
+{
     Din.mode(PullUp);
     Strip1=0;
     Strip2=0;
 
     while(1) {
-
-        while(Din==1) {
-            //pojedinacno
-            VuPojedinacno(Ain);
+        while(Din==1) {            
+            VuPojedinacno(Ain);      //pojedinacno
         }
 
-        while (Din==0) {
-            //rastuce
-            VuRastuci(Ain);
+        while (Din==0) {            
+            VuRastuci(Ain);          //rastuce
         }
     }
 }
@@ -33,73 +34,46 @@
 
 void VuRastuci (float analog)
 {
-    
     Strip1=0;
     Strip2=0;
-    LedStrip = 0x0; //????
-
-    int x = (analog*100)/5;  // provjerit ovo  analog je float a x int
-                            // ako bude problema probat ovako int x = (int)(analog*100)/5;
-    LedStrip = ~(0x3FF<<x); //upali odgovarajuce izlaze
-    Strip1=1;               //upali prvu traku
-    Strip2=0;
-    wait(0.01);
-
-    Strip1=0;               //ugasi trake i reset izlaza
-    Strip2=0;
     LedStrip = 0x0;
 
-    if(x>10){
-    x=x-10;  
-    // netreba if (x<0) x==0;               
-    LedStrip = ~(0x3FF<<x); //isti postupak samo za drugu traku
-    Strip1=0;
-    Strip2=1;
+    int x = (analog*20);
+    LedStrip = ~(0x3FF<<x);          //upali odgovarajuce izlaze
+    Strip1=1;                        //upali prvu strip
     wait(0.01);
-    }
+
+    Strip1=0;                         //ugasi prvi strip  
+    LedStrip = 0x0;                   //reset izlaza
 
+    if(x>10) {
+        x=x-10;
+        LedStrip = ~(0x3FF<<x);      //isti postupak samo za drugi strip
+        Strip2=1;
+        wait(0.01);
+    }
 }
 
-
 void VuPojedinacno (float analog)
 {
-    // uzme analogni ulaz koji je izmedu 0.0 i 1.0 pomnozi s 100 da se dobe postoci
-    // podjelit s 5 da se dobije koja ledica treba gorit
-    int x = (analog*100)/5;
-    // ako je izmedu 0 i 10 to je prvi led strip
-    if(x>0 && x<=10) {
-        
-        // upali prvi bit i pomakni ga na odgovarajuce mjesto
-        LedStrip = 0x1<<(x-1);
-        //upali  prvu traku
-        Strip1=1;
-        Strip2=0;
-        wait(0.01);        
-        //ugasi trake
-        Strip1=0;
-        Strip2=0;
-
+    
+     Strip1=0;
+     Strip2=0;
+    
+    int x = (analog*20);            
+    
+    if(x>0 && x<=10) {              // ako je izmedu 0 i 10 to je prvi led strip
+        LedStrip = 0x1<<(x-1);      // upali prvi bit i pomakni ga na odgovarajuce mjesto
+        Strip1=1;                   //upali strip 1
+        wait(0.01);
+        Strip1=0;                   //ugasi strip 1
     } else if(x>10 && x<=20) {
-        
-        LedStrip = 0x1<<(x-11);        
-        //upali drugu traku
-        Strip1=0;
-        Strip2=1;
-        wait(0.01);        
-        //ugasi trake
-        Strip1=0;
-        Strip2=0;
-
+        LedStrip = 0x1<<(x-11);
+        Strip2=1;                   //upali strip 2
+        wait(0.01);
+        Strip2=0;                   //ugasi strip 2
     } else {
         Strip1=0;
         Strip2=0;
     }
-
-}
-
-//~ invertira bitove
-
-/*
-20 ledica, analogni ulaz od 0-100%
-svaka ledica je 5%
-*/
\ No newline at end of file
+}
\ No newline at end of file