Julien Deschamps / Mbed 2 deprecated projetv1

Dependencies:   mbed

Revision:
2:53d8e05db3d9
Parent:
1:8e1033a40696
Child:
3:fb15a9d24ccf
--- a/main.cpp	Mon May 04 13:05:10 2020 +0000
+++ b/main.cpp	Mon May 04 13:28:09 2020 +0000
@@ -6,13 +6,86 @@
 DigitalOut brkb (PTC12);
 DigitalOut dira (PTD3);
 DigitalOut dirb (PTD1);
+DigitalOut pwma (PTD2);
 
+char pas=1;
+bool sens=0;
+unsigned int compteur=0;
+char message[30];
 Ticker mon_IT; // on associe l'interface Timeout à l'objet mon_IT
 
 void Interruption_timer() {
     printf("coucou\n");
     led1=!led1;
     
+    if(sens==0)
+    {
+        pas++;
+        compteur++;
+        if(pas>8)pas=1;
+    }
+    if(sens==1)
+    {
+        pas--;
+        compteur--;
+        if(pas<1)pas=8;
+    }
+    if(compteur<=0){
+        PWMA_ClrVal();
+    }
+    switch (pas)
+    {
+    case 1:
+    brka=0;
+    dira=1;
+    brkb=1;
+    dirb=0;
+    break;
+    case 2:
+    brka=0;
+    dira=1;
+    brkb=0;
+    dirb=1;
+    break;
+    case 3:
+    brka=1;
+    dira=0;
+    brkb=0;
+    dirb=1;
+    break;
+    case 4:
+    brka=0;
+    dira=0;
+    brkb=0;
+    dirb=1;
+    break;
+    case 5:
+    brka=0;
+    dira=0;
+    brkb=1;
+    dirb=0;
+    break;
+    case 6:
+    brka=0;
+    dira=0;
+    brkb=0;
+    dirb=0;
+    break;
+    case 7:
+    brka=1;
+    dira=0;
+    brkb=0;
+    dirb=0;
+    break;
+    case 8:
+    brka=0;
+    dira=1;
+    brkb=0;
+    dirb=0;
+    break;
+    default:
+    break;
+    }
     }
 
 int main(void)
@@ -20,8 +93,30 @@
     mon_IT.attach(&Interruption_timer,0.5); // l'interruption est associée au programme Interruption_timer et s'exécute toutes les 0.5s
                                             // pour stopper mon_IT.detach();
     while(1)
-    {        
-    }
+    { 
+    for(;;){
+      {
+          Term1_SendStr("Fin de course");
+          Term1_CRLF();
+          F=0;
+      }
+   if (Term1_KeyPressed()==1)
+   {
+     Term1_ReadLine(message);
+     if(strcmp(message,"monte_v1")==0)
+     {
+         sens=0; // marche avant
+         pwma=1;
+         TI1_EnableEvent();
+     }
+     else if(strcmp(message,"descend_v1")==0)
+     {
+         sens=1; // marche arriere
+         pwma=1;
+         TI1_EnableEvent();
+         }
+    }       
+ }
 }