E2i3 2015/2016 / Mbed 2 deprecated 2014-LCD_RGB_Blacklight_Basics

Dependencies:   mbed

Revision:
2:70793ff108a5
Parent:
1:ba258e2ff0b0
diff -r ba258e2ff0b0 -r 70793ff108a5 main.cpp
--- a/main.cpp	Thu Feb 25 09:24:59 2016 +0000
+++ b/main.cpp	Thu Feb 25 11:07:17 2016 +0000
@@ -83,6 +83,7 @@
     AnalogIn Pot(A0);       // Initialisation du potentiomètre branché en A0
     char data[12];          // Initialisation du tableau data pour envoyer des caractères sur l'écran LCD
     char R,G,B;             // Initialisation des variables R,G et B pour la couleur de l'écran LCD
+    int ValPot;
     
     Init();                 // Exécution de la fonction d'initialisation générale
     initRGB();              // Exécution de la fonction d'initialisation des couleurs RGB
@@ -101,27 +102,40 @@
     data[11] = 'd';
     
     link.write(addr,data,12);           // Envoi du tableau data à l'écran 
+    
+    
+    
 
 /* --- Boucle de test de la valeur du potentiomètre ---*/
 
     while(1){           //
-        if( (Pot>0.2f) & (Pot<=0.4f)){            // Couleur Rouge si 0.2f<pot<0.4f
-            R = 0xFF;                                   // Valeur de R = 255
-            G = 0x00;                                   // Valeur de G = 0
-            B = 0x00;                                   // Valeur de B = 0
-        }else if( (Pot>0.4f) & (Pot<=0.6f) ){     // Couleur Verte si 0.4f<pot<0.6f
-            R = 0x00;                                   // Valeur de R = 0
-            G = 0xFF;                                   // Valeur de G = 255
-            B= 0x00;                                    // Valeur de B = 0
-        }else if( (Pot>0.6f) ){                   // Couleur Bleu si 0.6f<pot
+        char cmd[2];                // Création d'une variable commande qui servira à envoyer un tableau d'ordres à l'écran LCD
+    cmd[0] = 0x80;              // 0x80 indique que la valeur envoyé ensuite est une commande
+    cmd[1] = 0x01;              // Commande : Power ON et Ecriture sur ligne du haut
+    link.write(addr,cmd,2);     // Envoi de la commande à l'écran
+    wait_ms(2);               // Pause de 2s
+        sprintf(data," %f",(float)Pot);
+        data[0] = 0x40; 
+        link.write(addr,data,6); 
+        wait_ms(10);
+       
+        if( (Pot<=0.5f)){            // Couleur Rouge si pot<0.5f
             R = 0x00;                                   // Valeur de R = 0
             G = 0x00;                                   // Valeur de G = 0
             B = 0xFF;                                   // Valeur de B = 255
-        }else{                                    // Aucune couleur si pot<0.2f
+        }else if( (Pot>0.5f) & (Pot<=0.95f) ){     // Couleur Verte si 0.5f<pot<0.95f
+            R = 0xFF;                                   // Valeur de R = 255
+            G = 0x00;                                   // Valeur de G = 0
+            B= 0xFF;                                    // Valeur de B = 255
+        }else if( (Pot>0.90f) ){                   // Couleur Bleu si 0.95f<pot
+            R = 0xFF;                                   // Valeur de R = 0
+            G = 0x00;                                   // Valeur de G = 0
+            B = 0x00;                                   // Valeur de B = 255
+        }/*else{                                    // Aucune couleur si pot<0.2f
             R = 0x00;                                   // Valeur de R = 0
             G = 0x00;                                   // Valeur de G = 0
             B = 0x00;                                   // Valeur de B = 0
-        }
+        }*/
         setup(R,G,B);                   //Envoi du nouveau code RGB pour rétroéclairer l'écran de couleur différente
     }
 }
\ No newline at end of file