Simon Hladek / Mbed 2 deprecated elevator1

Dependencies:   MMA8451Q mbed

Revision:
6:5c4bd6bb6c3c
Parent:
5:8ab8a587e609
Child:
7:9521d6ae3747
--- a/model.cpp	Sat Dec 10 13:49:46 2016 +0000
+++ b/model.cpp	Sat Dec 10 15:50:53 2016 +0000
@@ -39,8 +39,9 @@
                 sendPacket(0xa0,0x14,0x00,cmd->LedOn,1);
                 sendPacket(0xa0,0x24,0x00,cmd->LedOn,1);
                 if(poschodie<4) { //chod nahor
-                    upMotor();
-               }
+                    if(direction==0)
+                        upMotor();
+                }
             }
             break;
         case 0xb3:
@@ -50,9 +51,11 @@
                 sendPacket(0xa0,0x23,0x00,cmd->LedOn,1);
                 mapPoschodie.find("p3")->second=true;
                 if(poschodie<3) { //chod nahor
-                    upMotor();
+                    if(direction==0)
+                        upMotor();
                 } else {
-                    downMotor();
+                    if(direction==0)
+                        downMotor();
                 }
             }
             break;
@@ -63,9 +66,11 @@
                 sendPacket(0xa0,0x12,0x00,cmd->LedOn,1);
                 sendPacket(0xa0,0x22,0x00,cmd->LedOn,1);
                 if(poschodie<2) { //chod nahor
-                    upMotor();
+                    if(direction==0)
+                        upMotor();
                 } else {
-                    downMotor();
+                    if(direction==0)
+                        downMotor();
                 }
             }
             break;
@@ -76,9 +81,11 @@
                 sendPacket(0xa0,0x11,0x00,cmd->LedOn,1);
                 sendPacket(0xa0,0x21,0x00,cmd->LedOn,1);
                 if(poschodie<1) { //chod nahor
-                    upMotor();
+                    if(direction==0)
+                        upMotor();
                 } else {
-                    downMotor();
+                    if(direction==0)
+                        downMotor();
                 }
             }
             break;
@@ -89,7 +96,8 @@
                 sendPacket(0xa0,0x20,0x00,cmd->LedOn,1);
                 mapPoschodie.find("p0")->second=true;
                 if(mapPoschodie.find("p4")->second==false || mapPoschodie.find("p3")->second==false || mapPoschodie.find("p2")->second==false|| mapPoschodie.find("p1")->second==false  ) {
-                    downMotor();
+                    if(direction==0)
+                        downMotor();
                 }
             }
             break;
@@ -130,7 +138,7 @@
                 sendPacket(0xa0,0x22,0x00,cmd->LedOff,1);
                 sendPacket(0xa0,0xf1,0x00,cmd->MotorStop,1);
                 wait(3);
-                if(mapPoschodie.find("p2")->second==true||mapPoschodie.find("p1")->second==true||mapPoschodie.find("p0")->second==true) {
+                if(mapPoschodie.find("p1")->second==true||mapPoschodie.find("p0")->second==true) {
                     downMotor();
                 } else if(mapPoschodie.find("p3")->second==true||mapPoschodie.find("p4")->second==true) {
                     upMotor();
@@ -160,8 +168,10 @@
                 sendPacket(0xa0,0x10,0x00,cmd->LedOff,1);
                 sendPacket(0xa0,0x20,0x00,cmd->LedOff,1);
                 stopMotor();
-            } else if(mapPoschodie.find("p1")->second==true||mapPoschodie.find("p2")->second==true||mapPoschodie.find("p3")->second==true||mapPoschodie.find("p4")->second==true) {
-                upMotor();
+                wait(3);
+                if(mapPoschodie.find("p1")->second==true||mapPoschodie.find("p2")->second==true||mapPoschodie.find("p3")->second==true||mapPoschodie.find("p4")->second==true) {
+                    upMotor();
+                }
             }
 
             break;