Rasenmaeher_Angabe

Dependencies:   BertlLib mbed

Revision:
5:952090ddc8eb
Child:
6:5d2d394eb087
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/RasenMaeher.cpp	Tue Jun 12 11:19:48 2018 +0000
@@ -0,0 +1,90 @@
+
+#include "mbed.h"
+#include "Serial_HL.h"
+#include "Bertl14.h"
+#include "BertlObjects.h"
+
+//              main=2^0  LS    ENC 2^2
+BusOut boardPow(p30,      P1_6, P1_7);
+AnalogInHL ls1(p18), ls2(p16), ls3(p20), ls4(p19), ls5(p17); // B15
+
+// Alle Funktionen die den Bertl bewegen werden mit
+// ausgeschalteten Motoren betreten und mit ausgeschalteten Motoren
+// wieder verlassen
+
+void ForewardUntilWall();
+
+void SomeStepsBack();
+
+void TurnLeft();
+
+void TurnRight();
+
+void FrontBlinkerTask();
+
+void BackBlinkerTask();
+
+// Line==left ret 1   Line==right ret 2
+int CheckLineSensors();
+
+int main(void)
+{
+    boardPow=3; wait_ms(10);
+    InitBertl(); leds=9;
+    pex.ClearLeds();
+    
+    int dir;
+    while(1)
+    {
+        ForewardUntilWall();
+        dir = CheckLineSensors();
+        wait_ms(200); // for debugging
+        SomeStepsBack();
+        wait_ms(200); // for debugging
+        if( dir==1 )
+          TurnLeft();
+        else
+          TurnRight();
+        wait_ms(200); // for debugging
+    }
+    
+    return 1;
+}
+
+void ForewardUntilWall()
+{
+  // Motorten einschalten
+  while(1)
+  {
+    FrontBlinkerTask();
+    // CheckLineSensors();
+    // für Aufgabe 3 CheckButtons()
+    // if( Button_pressed or LinSensor )
+    //    break;
+  }
+  // Motoren ausschalten
+}
+
+void SomeStepsBack()
+{
+  // Motoren auf rückwärts
+  // wait_ms(100);
+  // Motoren ausschalten
+}
+
+void TurnLeft()
+{
+}
+
+void TurnRight()
+{
+}
+
+void FrontBlinkerTask()
+{
+}
+
+void BackBlinkerTask()
+{
+}
+