Loup Langard / Mbed 2 deprecated base_mbed_SAE1_S2-V0

Dependencies:   mbed

Revision:
14:f632015dde70
Parent:
13:b19e2f833926
Child:
15:41977c40cfbe
--- a/main.cpp	Fri Dec 17 17:42:00 2021 +0000
+++ b/main.cpp	Sat Dec 18 08:29:22 2021 +0000
@@ -11,16 +11,15 @@
 DigitalOut  LED(D9);   // sortie pour la LED de la carte MicroC
           
 //****variables ***********************************************************
-int recpt = 0;     // variable tampon : arrivée d'un octet de la liaison série  
+int   recpt = 0     ; // tampon : arrivée d'un octet de la liaison série  
+float inVs  = 0.5   ; // pour lire la temperature dans Vs , 0 à 1 pour 0 à 3.3V
+float simVs = 0.5   ; // pour lire V potentiomètre pareil , 0 à 1 pour 0 à 3.3V
+float outVk = 0.3681; // pour sortir vK, 0,3681 fait Vk = 1.244  (  20°C +-10mv)
+float P     = 0.1   ; // tampon de lecture des broches P0 et P1 
+int   out   = 0     ; // variable de sortie à serialiser en duj10
 
-float inVs  = 0.5 ;    // variable pour Vs   float de 0 à 1 pour 0 à 3.3V
-float simVs = 0.5 ;    // variable pour V potentiomètre pareil
-float outVk = 0.5 ;    // varible qui fait Vk = 1.244  ( compense ambiant)
-float P = 0.1 ;        // tampon de lecture des broches P0 et P1 
-int   out = 0    ;     // variable de sortie à serialiser en duj10
-
-//******** sous programmes ( situés ici  en bas  de page )
-void interrupt();  // lié à la liaison série 
+//******** détail vers les sous programmes 
+void interrupt();  // lié à la liaison série   ( en bas de page)
 
 void init(void)    // initialisations hard  
     {
@@ -62,8 +61,8 @@
         pc.printf("%d", out);     // duj10 de la temperature ( de 0 à 333)
         pc.putc('T');             // fermer et utiliser     
         
-          // lire le vK
-        out = 333*outVk       ;   // mettre dans une echelle 0 à 333 
+                                  // LIRE  vK  
+        out = 1000*outVk ;        // mettre dans une echelle 0 à 1000
         pc.putc('D');             // ouvrir transfert
         pc.printf("%d", out);     // duj10 de vK en fait 
         pc.putc('C');             // fermer et utiliser    
@@ -74,11 +73,15 @@
 void interrupt()//"recepteur"  à chaque carractère reçut ce programme est activé
     {  // 
     recpt =  pc.getc();  
+    // action sur la LED carte microC
     if ( recpt == 'l') LED = 1 ; //allumer   LED 
     if ( recpt == 'k') LED = 0 ; //eteindre  LED 
-      // augmenter ou baisser Vk de 33mv 
-    if ( recpt == 'm') {outVk = outVk - 0.01 ; if ( outVk < 0.11) outVk = 0.1;} 
-    if ( recpt == 'p') {outVk = outVk + 0.01 ; if ( outVk > 0.85) outVk = 0.9;} 
+    // augmenter ou baisser Vk ( compensation en température)  
+    if ( recpt == 'm') {outVk = outVk - 0.02  ; if ( outVk < 0.05) outVk = 0.06;} // 20/1000
+    if ( recpt == 'p') {outVk = outVk + 0.02  ; if ( outVk > 0.95) outVk = 0.94;} 
+    if ( recpt == 'r') {outVk = outVk - 0.001 ; if ( outVk < 0.05) outVk = 0.06;} //  1/1000
+    if ( recpt == 's') {outVk = outVk + 0.001 ; if ( outVk > 0.95) outVk = 0.94;} 
+    if ( recpt == 't')  outVk = 0.3681 ; //vK remis à 20°C (environ )
 
     return;
     }