Treehouse Mbed Team / Mbed 2 deprecated APS_DCM1SL

Dependencies:   mbed

Revision:
47:d10bf65cb7dc
Parent:
42:3ae73b61f657
Child:
48:8e9de9ff1f22
--- a/src/clocks.cpp	Sun Mar 10 18:03:46 2019 +0000
+++ b/src/clocks.cpp	Sun Mar 10 21:39:14 2019 +0000
@@ -28,10 +28,21 @@
 #include "Ticker.h"
 #include "stdlib.h"
 #include "all_io.h"
+int i;
 
+volatile bool dosFlip = FALSE;
+volatile bool dofFlip = FALSE;
+
+void slowFlip() {
+    dosFlip = TRUE;
+}
+
+void fastFlip() {
+    dofFlip = TRUE;
+}
 
 void initOut(void){
-    ec2  = 1;
+    /*ec2  = 1;
     ec15 = 1;
     ec26 = 1;
     ec6  = 1;
@@ -64,13 +75,80 @@
     ec17 = 1;
     ec13 = 1;
     ec26 = 1;
-    ec22 = 1;
+    ec22 = 1;*/
+    for(i = 0; i < 34; i++){
+        ec[i] = 1;
+    }
 }
 
-void flipSlow(void){
+void flipSlow(unsigned short numFast){
     dosFlip = FALSE;
     if(!ILR_enable){
-        ec2 = !ec2;
+        /*ec2 = !ec2;
+        ec15 = !ec15;
+        ec26 = !ec26;
+        ec6 = !ec6;
+        ec12 = !ec12;
+        ec25 = !ec25;
+        ec36 = !ec36;
+        ec31 = !ec31;
+        ec9 = !ec9;
+        ec5 = !ec5;
+        ec24 = !ec24;
+        ec11 = !ec11;
+        ec1 = !ec1;
+        ec10 = !ec10;
+        ec23 = !ec23;
+        ec7 = !ec7;
+        ec18 = !ec18;
+        ec14 = !ec14;
+        ec27 = !ec27;
+        ec19 = !ec19;
+        ec32 = !ec32;
+        ec35 = !ec35;
+        ec21 = !ec21;
+        ec30 = !ec30;
+        ec33 = !ec33;
+        ec20 = !ec20;
+        ec34 = !ec34;
+        ec29 = !ec29;
+        ec8 = !ec8;
+        ec4 = !ec4;
+        ec17 = !ec17;
+        ec13 = !ec13;
+        ec26 = !ec26;
+        ec22 = !ec22;*/
+        for (i = numFast; i < 34; i++){
+            if (ec[i] == 1){
+                ec[i] = 0;
+            }else{
+                ec[i] = 1;
+            }
+        }
+        
+    }
+}
+
+void flipFast(unsigned short numFast){
+    dofFlip = FALSE;
+    if(ILR_enable){
+        for (i = 0; i < 34; i++){
+            if (ec[i] == 1){
+                ec[i] = 0;
+            }else{
+                ec[i] = 1;
+            }
+        }
+    }else{
+        for (i = 0; i < numFast; i++){
+            if (ec[i] == 1){
+                ec[i] = 0;
+            }else{
+                ec[i] = 1;
+            }
+        }
+    }
+        /*ec2 = !ec2;
         ec15 = !ec15;
         ec26 = !ec26;
         ec6 = !ec6;
@@ -104,54 +182,14 @@
         ec13 = !ec13;
         ec26 = !ec26;
         ec22 = !ec22;
-    }
-}
-
-void flipFast(void){
-    dofFlip = FALSE;
-    if(ILR_enable){
-        ec2 = !ec2;
-        ec15 = !ec15;
-        ec26 = !ec26;
-        ec6 = !ec6;
-        ec12 = !ec12;
-        ec25 = !ec25;
-        ec36 = !ec36;
-        ec31 = !ec31;
-        ec9 = !ec9;
-        ec5 = !ec5;
-        ec24 = !ec24;
-        ec11 = !ec11;
-        ec1 = !ec1;
-        ec10 = !ec10;
-        ec23 = !ec23;
-        ec7 = !ec7;
-        ec18 = !ec18;
-        ec14 = !ec14;
-        ec27 = !ec27;
-        ec19 = !ec19;
-        ec32 = !ec32;
-        ec35 = !ec35;
-        ec21 = !ec21;
-        ec30 = !ec30;
-        ec33 = !ec33;
-        ec20 = !ec20;
-        ec34 = !ec34;
-        ec29 = !ec29;
-        ec8 = !ec8;
-        ec4 = !ec4;
-        ec17 = !ec17;
-        ec13 = !ec13;
-        ec26 = !ec26;
-        ec22 = !ec22;
-    }
+    }*/
 }
 
 void checkFlip(void){
     if(dosFlip){
-        flipSlow();
+        flipSlow(5);
     }
     if(dofFlip){
-        flipFast();
+        flipFast(5);
     }
 }
\ No newline at end of file