ok

Dependencies:   mbed

Files at this revision

API Documentation at this revision

Comitter:
stersky
Date:
Sun Jan 27 20:48:32 2019 +0000
Commit message:
kb

Changed in this revision

main.cpp Show annotated file Show diff for this revision Revisions of this file
mbed.bld Show annotated file Show diff for this revision Revisions of this file
diff -r 000000000000 -r 33f12c4938ba main.cpp
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Sun Jan 27 20:48:32 2019 +0000
@@ -0,0 +1,78 @@
+#include "mbed.h"
+
+Serial energie(p28, p27);
+Serial moteurs(p9, p10);
+
+Serial PC(USBTX,USBRX);
+
+void lecture_energie(double* ptr1);
+void ecriture_moteurs(int vitesse);
+
+int main() {
+    double niveau = 0;
+    int vitesse=7;
+    
+    moteurs.baud(9600);
+    energie.baud(9600);
+    PC.baud(460800);
+    
+    while(1) {
+        //lecture_energie(&niveau);//attention:on reste dans lecture_energie tant qu'on n'a pas la trame en entier
+        ecriture_moteurs(vitesse);
+        PC.printf("Niveau : %lf\n\r",niveau);
+        vitesse++;
+        wait(0.2);
+    }
+}
+
+void ecriture_moteurs(int vitesse)
+{
+    moteurs.printf("$%d*",vitesse);
+}
+
+
+void lecture_energie(double* ptr1)
+{
+    char fin=0;
+    char etat = 0;
+    char a,i=0;
+    char buffer[17];
+    
+    while(fin==0)
+    {
+if (energie.readable()) 
+        {  // attention PC.readable reste à 1 tant qu'il n'y a pas eu de getc qui vide le buffer
+            a=energie.getc();
+            
+        switch(etat)
+        {
+            case 0 :
+            if(a=='$')//On attend le début d'une trame
+            {
+                buffer[0] = '$';
+                i=1;
+                etat = 1;
+            }
+            break;
+            
+            case 1 ://Après le début d'une trame, on récupère la trame en entier et on l'analyse
+            buffer[i] = a;
+            i++;
+            if(a=='*')
+            {
+                sscanf(buffer,"$%lf*",ptr1);
+                fin = 1;
+                i=0;
+                etat=0;
+            }
+            break;
+            
+            default :
+            etat = 0;
+            break;
+            
+
+           }
+           }
+           }
+           }
\ No newline at end of file
diff -r 000000000000 -r 33f12c4938ba mbed.bld
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mbed.bld	Sun Jan 27 20:48:32 2019 +0000
@@ -0,0 +1,1 @@
+https://os.mbed.com/users/mbed_official/code/mbed/builds/3a7713b1edbc
\ No newline at end of file