Dependencies:   mbed

Revision:
0:2096207da3ca
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/console.cpp	Wed Aug 24 09:47:06 2011 +0000
@@ -0,0 +1,307 @@
+#include "console.h"
+#include <stdio.h>
+Serial mc(p13, p14);
+
+#define ETATACC 1  // Etat Acceuil
+#define ETATMV 2    // Etat MenuVitesse
+#define ETATVC1 3   // Etat Menu Vitesse CanOpen 01 
+#define ETATCV1 4   // Etat Configurer Vitesse CanOpen 01
+#define ETATVIC1 5  // Etat Vitesse Actuelle CanOpen 01
+#define ETATVC2 6   // Etat Menu Vitesse CanOpen 02
+#define ETATCV2 7   // Etat Configurer Vitesse CanOpen 02
+#define ETATVIC2 8  // Etat Vitesse Actuelle CanOpen 02
+#define ETATCFIP 9  // Etat Menu Configurer IP
+#define ETATAD 10   // Etat Adresse Configurer IP
+#define ETATMSQ 11   // Etat Masque Configurer Masque
+#define ETATCFACT 12   // Etat Config Actuelle configurer IP
+
+
+
+void tconsole :: RecevoirChaine(char* Tableau)
+{
+    bool arr = false ;
+    char car ;
+    int i = 0 ;
+    while (arr == false)
+    {
+        
+        car = mc.getc(); 
+        
+        if( car == ' ')
+        {
+            arr = true;   
+        }
+        else
+        {
+            Tableau[i] = car ;
+            i++;
+        }
+    }
+}
+
+
+void tconsole :: Menu()
+{
+  mc.baud(9600);
+  int etat ;
+  char choix ;
+  etat = ETATACC;
+
+while(1)   
+{   
+ if(etat == ETATACC ) // Etat Accueil
+ {
+    mc.printf("\r\n\r ACCUEIL\r\n\r");
+    mc.printf("1 - Vitesse\r\n\r");
+    mc.printf("2 - Configuration\r\n\r");
+    choix = mc.getc();
+
+    if(choix == '1')
+    {
+       etat = ETATMV ;
+    }  
+    
+    if(choix == '2')
+    {
+        etat = ETATCFIP ;    
+    }  
+ }
+
+if (etat == ETATMV)          // Etat MenuVitesse
+{
+     mc.printf("\r\n\r VITESSE\r\n\r");
+     mc.printf("1 - Vitesse Bus Can 1\r\n\r");
+     mc.printf("2 - Vitesse Bus Can 2\r\n\r");
+     mc.printf("3 - Precedent");
+     choix = mc.getc();
+     
+
+    if(choix == '1')
+    {
+        etat =ETATVC1 ;
+    }
+    if(choix == '2')
+    {
+        etat = ETATVC2 ;
+    }
+    if(choix == '3')
+    {
+        etat = ETATACC ;
+    }
+ }
+
+ if (etat == ETATVC1)      // Etat Menu Vitesse CanOpen 01 
+ {
+     mc.printf("\r\n\rVITESSE BUS CAN 1\r\n\r");
+     mc.printf("1 - Changer Vitesse\r\n\r");
+     mc.printf("2 - Vitesse Actuel\r\n\r");
+     mc.printf("3 - Precedent\r\n\r");
+     choix = mc.getc();
+
+     if(choix == '1')
+    {
+        etat = ETATCV1 ;
+    }
+    if(choix == '2')
+    {
+        etat = ETATVIC1 ;
+    }
+    if(choix == '3')
+    {
+        etat = ETATMV ;
+    }           
+  }  
+ 
+  if (etat == ETATCV1)  // Etat Configurer Vitesse CanOpen 01
+  {
+    
+     mc.printf("\r\n\r Changer Vitesse\r\n\r");
+     mc.printf("Choisir une nouvelle vitesse pour bus can 1\r\n\r");
+     mc.printf(" 1 - 1 Mbit/s\r\n\r 2 - 500 Kbit/s\r\n\r 3 - 100 Kbit/s\r\n\r 4 - 20 Kbit/s\r\n\r");
+     mc.printf("0 - Precedent\r\n\r");
+     choix = mc.getc();
+     if(choix == '1')
+     {
+       V1 = 1000000 ;
+       mc.printf("Vitesse = 1000000 (1 Mbit/s)");
+       etat = ETATVC1 ;
+     }           
+     
+     if(choix == '2')
+     { 
+       V1 = 500000 ;
+       mc.printf("Vitesse = 500000 (500 Kbit/s)");
+       etat = ETATVC1 ;
+     }          
+    
+     if(choix == '3')
+     {
+       V1 = 100000 ;
+       mc.printf("Vitesse = 100000 (100 Kbit/s)");
+       etat = ETATVC1 ;
+     }
+    
+     if(choix == '4')
+     { 
+       V1 = 20000 ;
+       mc.printf("Vitesse = 20000 (20 Kbit/s)");
+       etat = ETATVC1 ;
+     }
+      
+     if(choix == '5')
+     {  
+       etat = ETATVC1 ;
+     }                                                   
+               
+   } 
+  
+   if (etat == ETATVIC1) // Etat Vitesse Actuelle CanOpen 01
+   {
+     mc.printf("\r\n\rVitesse Actuel\r\n\r");
+     mc.printf("Vitesse Actuel = %d\r\n\r", V1);
+     mc.printf("0 - Precedent\r\n\r");
+     choix = mc.getc();
+
+    if(choix == '0')
+    {
+        etat = ETATVC1 ;
+    }
+   }
+   
+    if (etat == ETATVC2)      // Etat Menu Vitesse CanOpen 02 
+ {
+     mc.printf("\r\n\rVITESSE BUS CAN 2\r\n\r");
+     mc.printf("1 - Changer Vitesse\r\n\r");
+     mc.printf("2 - Vitesse Actuel\r\n\r");
+     mc.printf("3 - Precedent\r\n\r");
+     choix = mc.getc();
+
+    if(choix == '1')
+    {
+        etat = ETATCV2 ;
+    }
+    if(choix == '2')
+    {
+        etat = ETATVIC2 ;
+    }
+    if(choix == '3')
+    {
+        etat = ETATMV ;
+    }           
+  }  
+ 
+  if (etat == ETATCV2)  // Etat Configurer Vitesse CanOpen 02
+  {
+     mc.printf("\r\n\rChanger Vitesse\r\n\r");
+     mc.printf("Choisir une nouvelle vitesse pour bus can 2\n\r\n\r");
+     mc.printf(" 1 - 1 Mbit/s\r\n\r 2 - 500 Kbit/s\r\n\r 3 - 100 Kbit/s\r\n\r 4 - 20 Kbit/s\r\n\r");
+     mc.printf("0 - Precedent\r\n\r");
+     choix = mc.getc();
+     if(choix == '1')
+     {
+       V2 = 1000000 ;
+       mc.printf("Vitesse = 1000000 (1 Mbit/s)");
+       etat = ETATVC2 ;
+     }           
+     
+     if(choix == '2')
+     { 
+       V2 = 500000 ;
+       mc.printf("Vitesse = 500000 (500 Kbit/s)");
+       etat = ETATVC2 ;
+     }          
+    
+     if(choix == '3')
+     {
+       V2 = 100000 ;
+       mc.printf("Vitesse = 100000 (100 Kbit/s)");
+       etat = ETATVC2 ;
+     }
+    
+     if(choix == '4')
+     { 
+       V2 = 20000 ;
+       mc.printf("Vitesse = 20000 (20 Kbit/s)");
+       etat = ETATVC2 ;
+     }
+      
+     if(choix == '5')
+     {  
+       etat = ETATVC2 ;
+     }                                                   
+               
+   } 
+   
+  
+   if (etat == ETATVIC2) // Etat Vitesse Actuelle CanOpen 02
+   {
+     mc.printf("Vitesse Actuel\r\n\r");
+     mc.printf("Vitesse Actuel = %d\r\n\r", V2);
+     mc.printf("0 - Precedent\r\n\r");
+     choix = mc.getc();
+
+    if(choix == '0')
+    {
+        etat = ETATVC2 ;
+    }
+   }
+
+   
+   if (etat == ETATCFIP)        // Etat Menu Configurer IP
+   {
+     mc.printf("\r\n\rCONFIGURER\r\n\r");
+     mc.printf("1 - Adresse\r\n\r");
+     mc.printf("2 - Masque \r\n\r");
+     mc.printf("3 - Configuration Actuelle\r\n\r");
+     mc.printf("4 - Precedent\r\n\r");
+     choix = mc.getc();
+
+        if (choix == '1')
+        {
+            etat = ETATAD ;
+        }
+        if (choix == '2')
+        {
+            etat = ETATMSQ ;
+        }
+        if (choix == '3')
+        {
+            etat = ETATCFACT ;
+        }
+        if (choix == '4')
+        {
+            etat = ETATACC ;
+        }
+    }
+    if(etat == ETATAD)      // Etat Adresse Configurer IP
+    {
+
+       mc.printf("\r\n\rNouvelle IP\r\n\r");
+       mc.printf("Ip : ");
+       RecevoirChaine(IP);
+       etat = ETATCFIP ;      
+    }  
+    
+    if(etat == ETATMSQ)          // Etat Masque Configurer Masque
+    {
+       
+       mc.printf("\r\n\rNouveau Masque\r\n\r");
+       mc.printf("Masque : ");
+       RecevoirChaine(Masque);       
+       etat = ETATCFIP ;
+    }
+    if(etat == ETATCFACT )         // Etat Config Actuelle configurer IP
+    {
+         mc.printf ("\r\n\rConfiguration Actuelle\r\n\r");
+         mc.printf ("Adresse : %s\r\n\r",IP);
+         mc.printf ("Masque : %s\r\n\r",Masque);
+         mc.printf ("0 - Precedent\r\n\r");
+         choix = mc.getc();
+
+        if(choix == '0');
+        {
+            etat = ETATCFIP ;
+        }
+     }   
+}
+}