dujardin stephane / Mbed 2 deprecated base_mbed_SAE1_S2

Dependencies:   mbed

Revision:
4:fdb2d0fefd66
Parent:
3:032c516c2ffa
Child:
5:c404ef14ea33
diff -r 032c516c2ffa -r fdb2d0fefd66 main.cpp
--- a/main.cpp	Mon Sep 16 14:39:31 2019 +0000
+++ b/main.cpp	Wed Sep 18 08:29:56 2019 +0000
@@ -1,6 +1,6 @@
 #include "mbed.h"  //
 
-//-------- exemple dit <toto>  dans  mes432 ----------------
+//-------- programme de test carte   mes432 ----------------
 // chaque seconde, numérise 4 valeurs sur ch1 ch2 
 // et envoie betement une trame neutre en codage duj2
 //
@@ -9,6 +9,7 @@
 // A3 et A4 sont placées en sortie analogique ( offset vers AOP)
 // sorties led sur carte nommée LL , IO sur D3 , pol sur D2
 // broches D0 D1  sont précablées en I2C  ( sans plus)
+// connecteur (vue de face)*** I2C   I2C   IO  Ov  Ov   3.3V   ch2   ch1 ***
 //------------------------------------
 
 //****************** déclaration des broches ****************
@@ -21,17 +22,17 @@
 DigitalOut LL(LED1);                        //  led nommée LL ( sur module L432
 // nota IO peut etre déclarée en entrée en ecrivant  DigitalIn IO(D3);
 //**********************************************************************
-uint16_t ch1i[5];  // tableaux d' int
-uint16_t ch2i[5];
+uint16_t chi[5];  // déclaratiion d'un tableau  d'entiers 16bits sans signe
+float chf[5];     // déclaration d'un tableau de float 
 
 void init(void)  // initialisation 
     {
-    pc.baud(19200);     // initialisations 
-    pol = 1;            //on polarise l'I2C  au cas ou 
+    pc.baud(19200);     // vitesse liaison série
+    pol = 1;            // polarisation résistancesde l' I2C  
     LL = 0 ;            // led du L432 on
-    out1.write(0.5);    // sortie A3 = 0.5 * 3.3V  soit 1.6 V
-    out2.write(0.25);   // sortie A4 = 0.25* 3.3V  soit 0.8 V
-    IO = 1 ;            // sortie I/O commande mise à 1 ou 3.3V   
+    out1.write(0.5);    // sortie ana A3 = 0.5 * 3.3V  soit 1.6 V
+    out2.write(0.25);   // sortie ana A4 = 0.25* 3.3V  soit 0.8 V
+    IO = 0 ;            // sortie I/O  mise à 0  
     }
     
 int main()
@@ -40,21 +41,32 @@
     
     while(1)        // boucle sans fin 
         {
-        LL = 1 ;       // re allume Led
-        wait(0.5);
+        LL = 1 ;       // re allume Led carte
+        IO = 1;        // sortie IO mise à 1 ( led hors carte )
+        wait(0.5);      // delai 0.5s
         LL= 0 ;
+        IO = 0 ;
         wait(0.5);
-        for ( int i = 0 ; i < 5 ; i++)
-            { 
-            ch1i[i] = Ch1.read_u16()/16;     // lecture 1
-            ch2i[i] = Ch2.read_u16()/16;     // c'est tout 
-            }
-        // transfert comme dans l'avant dernier exemple de la fiche duj2    
-        pc.putc('i');     // poiteur 1 = 0
-        pc.putc('e'); pc.putc('0'); pc.putc('1'); pc.putc('0'); pc.putc('0');//Pt++
-        pc.putc('e'); pc.putc('0'); pc.putc('1'); pc.putc('0'); pc.putc('1');
-        pc.putc('e'); pc.putc('0'); pc.putc('1'); pc.putc('0'); pc.putc('2');
-        pc.putc('e'); pc.putc('0'); pc.putc('1'); pc.putc('0'); pc.putc('3');
-        pc.putc('q');   // mise en mémoire vers utilisateur + pointeur1 = 0
+        
+        chi[1] =  Ch1.read_u16();  // lecture  ch1 mise en memoire 16bits
+        chf[1] =  Ch2.read();      // lecture ch2 mise en float en mémoire
+
+       //  transfert d'une trame de  4 entiers  au protocole duj2 ( exemple)
+       pc.putc('i');     // pointeur 1 = 0
+       pc.putc('e'); pc.putc('0'); pc.putc('1'); pc.putc('0'); pc.putc('0');//Pt++
+       pc.putc('e'); pc.putc('0'); pc.putc('1'); pc.putc('0'); pc.putc('1');
+       pc.putc('e'); pc.putc('0'); pc.putc('1'); pc.putc('0'); pc.putc('2');
+       pc.putc('e'); pc.putc('0'); pc.putc('1'); pc.putc('0'); pc.putc('3');
+       pc.putc('q');   // mise en mémoire 
+       // on verra sur Tera Term 
+       // ceci " ie0100e0101e0102e0103q  "
+       // cette partie sera celle qui vous servira a valider votre processing
+        
+        //zone pour tester la carte et son cablage ( inutile pour processing)
+        printf(" chi =0x%04x "  ,  chi[1] );
+        printf("     chf =%.6f \n", 3.3*( chf[1]));
+        // on lira sur Tera Term ( hors modifs sur le programme)
+        // ceci "   chi =0x80b8      chf =0.710769   "
+
         }   
     }