Proyecto de Tesis en Mecatrónica. Universidad Técnica del Norte. Ernesto Palacios <mecatronica.mid@gmail.com>

Dependencies:   EthernetNetIf HTTPServer QEI_hw RPCInterface mbed

Revision:
20:4b154134ab20
Parent:
19:c26cf8a48986
Child:
21:353b0fe8fc54
--- a/setup.cpp	Wed May 23 17:09:28 2012 +0000
+++ b/setup.cpp	Wed Jun 06 03:08:27 2012 +0000
@@ -1,7 +1,7 @@
 /**
- * @brief  Tren de impulsos con Timer2
  * @file   setup.cpp
  * @author Ernesto Palacios
+ * @brief  Codigo Fuente de las funciones para el deslizador.
  *
  * Created on 25 de Marzo de 2012
  *
@@ -23,111 +23,10 @@
 extern InterruptIn  pin_alm;   // ALM 
 extern AnalogOut    aout;      // +-10V
 
+
 int fq_posicion = 10000;  // Variable global donde se almacenara 
                          // la velocidad de posicionamiento en Hz
 
-
-EthernetNetIf configurarEthernet()
-{
-        //____________ *** ARCHIVO DE CONFIGURACION  ***_______________________ //
-        
-        printf("\n *** CONFIGURACION ETHERNET DE MBED ***\n"); 
-        printf("Leyendo archivo de configuracion...\n\n"); 
-        
-        FILE *fp = fopen("/local/config.txt", "r"); // Abre el archivo y lo guarda en fp
-        
-        if(!fp)   // En caso de no encontrarse el archivo
-        {
-            printf("\nEl archivo /mbed/config.txt no puede ser abierto!\n");
-            exit(1);
-              
-        }
-        else
-        {
-            // Cadenas de caracteres desde el Archivo config.txt
-            char isDHCP [15];    //Modo Automatico o Manual
-            char empty  [2];     // Linea vacia
-            char ip     [40];    // Direccion IP
-            char mask   [40];    // Mascara de Subred
-            char gate   [40];    // Puerta de enlace 
-            char dns    [40];    // Direccion DNS
-            
-            // Valores 'int' para agregar a la configuracion manual
-            int DHCP;
-            int n_ip[4];
-            int n_mask[4];
-            int n_gate[4];
-            int n_dns[4];
-            
-            
-            // Leer linea a linea el archivo
-            fgets( isDHCP, 15, fp );
-            fgets( empty,  2, fp );
-            fgets( ip,     40, fp );
-            fgets( mask,   40, fp );
-            fgets( gate,   40, fp );
-            fgets( dns,    40, fp );
-            
-            printf("Cerrando archivo...\n");
-            fclose(fp);
-            
-            // Extraer los valores numericos
-            sscanf( isDHCP,"%*s %d",&DHCP );
-            
-            sscanf(   ip,"%*s %d.%d.%d.%d",&n_ip[0],&n_ip[1],&n_ip[2],&n_ip[3] );
-            sscanf( mask,"%*s %d.%d.%d.%d",&n_mask[0],&n_mask[1],&n_mask[2],&n_mask[3] );
-            sscanf( gate,"%*s %d.%d.%d.%d",&n_gate[0],&n_gate[1],&n_gate[2],&n_gate[3] );
-            sscanf(  dns,"%*s %d.%d.%d.%d",&n_dns[0],&n_dns[1],&n_dns[2],&n_dns[3] );
-            
-            
-            if(DHCP) //En caso de modo DHCP
-            {
-                printf("\n   Configurar red de manera automatica\n");
-                EthernetNetIf eth; //Crea la interfaz
-                EthernetErr ethErr = eth.setup();
-                if( ethErr )
-                {
-                    printf( "Error %d en la configuracion\n", ethErr );
-                    exit(1);
-                }
-            
-                printf("Configuracion Correcta\n\n");
-                return eth;
-            }
-            else                       
-            {                        
-                sscanf(   ip,"%*s %d.%d.%d.%d",&n_ip[0],  &n_ip[1],  &n_ip[2],  &n_ip[3] );
-                sscanf( mask,"%*s %d.%d.%d.%d",&n_mask[0],&n_mask[1],&n_mask[2],&n_mask[3] );
-                sscanf( gate,"%*s %d.%d.%d.%d",&n_gate[0],&n_gate[1],&n_gate[2],&n_gate[3] );
-                sscanf(  dns,"%*s %d.%d.%d.%d",&n_dns[0], &n_dns[1], &n_dns[2], &n_dns[3] );
-                printf(" %s %s %s %s %s\n  " , isDHCP, ip, mask, gate, dns );            
-                
-                printf("\n   Configurar red de manera manual\n");
-                EthernetNetIf eth(
-                IpAddr( n_ip[0],  n_ip[1],  n_ip[2],  n_ip[3]), //IP Address
-                IpAddr( n_mask[0],n_mask[1],n_mask[2],n_mask[3]), //Network Mask
-                IpAddr( n_gate[0],n_gate[1],n_gate[2],n_gate[3]), //Gateway
-                IpAddr( n_dns[0], n_dns[1], n_dns[2], n_dns[3] )  //DNS
-                );
-                
-                EthernetErr ethErr = eth.setup();
-                if( ethErr )
-                {
-                    printf( "Error %d en la configuracion\n", ethErr );
-                    exit(1);
-                }
-    
-                printf("Configuracion Correcta\n\n");
-                return eth;
-            }
-            
-        }   
-        
-        EthernetNetIf eth;
-        return eth;
-}
-
-
 void setTimer2()
 {
     // Encender Timer2 (PCONP[22])
@@ -376,11 +275,57 @@
 }
 
 
+int configurarBaudios()
+{
+        int baudios = 115200;  //Valor por defecto   
+        
+        //____________ *** ARCHIVO DE CONFIGURACION  ***_______________________ //
+        
+        printf("\n\n *** CONFIGURACION DE MBED ***\n"); 
+        printf(" Leyendo archivo de configuracion...\n\n"); 
+        
+        FILE *fp = fopen("/local/config.mbd", "r"); // Abre el archivo y lo guarda en fp
+        
+        if(!fp)   // En caso de no encontrarse el archivo
+        {
+            printf("\nEl archivo /mbed/config.txt no puede ser abierto!\n");
+            exit(1);
+              
+        }
+        else
+        {
+            // Cadenas de caracteres desde el Archivo config.txt
+            char notstr  [04];    // linea vacia
+            char baud    [40];    // Direccion DNS
+            
+           
+            // Leer linea a linea el archivo
+            // cuatro primeras lineas no sirven
+            fgets( notstr, 4, fp );
+            fgets( notstr, 4, fp );
+            fgets( notstr, 4, fp );
+            fgets( notstr, 4, fp );
+            
+            fgets( baud,  40, fp );
+            
+            printf("Cerrando archivo...\n");
+            fclose(fp);
+         
+            
+            // Extraer los valores numericos
+            sscanf( baud,"%*s %d",&baudios );
+            
+            
+        }   
+        
+        return baudios;
+}
 
 /*  LEGACY FUNCTIONS
  *
- *  El codigo actual no hace referencia a estas funciones
- *  sin embargo no hay problema en definirlas.
+ *  El siguiente codigo no es utilizado por el 
+ *  programa. Sin embargo pueden servir como 
+ *  futuras referencias.
  */ 
 void setMR3( int newValue )
 {
@@ -392,3 +337,104 @@
 {
     LPC_TIM2->PR = newValue; 
 }
+
+
+EthernetNetIf configurarEthernet()
+{
+        //____________ *** ARCHIVO DE CONFIGURACION  ***_______________________ //
+        
+        printf("\n *** CONFIGURACION ETHERNET DE MBED ***\n"); 
+        printf("Leyendo archivo de configuracion...\n\n"); 
+        
+        FILE *fp = fopen("/local/config.txt", "r"); // Abre el archivo y lo guarda en fp
+        
+        if(!fp)   // En caso de no encontrarse el archivo
+        {
+            printf("\nEl archivo /mbed/config.txt no puede ser abierto!\n");
+            exit(1);
+              
+        }
+        else
+        {
+            // Cadenas de caracteres desde el Archivo config.txt
+            char isDHCP [15];    //Modo Automatico o Manual
+            char empty  [2];     // Linea vacia
+            char ip     [40];    // Direccion IP
+            char mask   [40];    // Mascara de Subred
+            char gate   [40];    // Puerta de enlace 
+            char dns    [40];    // Direccion DNS
+            
+            // Valores 'int' para agregar a la configuracion manual
+            int DHCP;
+            int n_ip[4];
+            int n_mask[4];
+            int n_gate[4];
+            int n_dns[4];
+            
+            
+            // Leer linea a linea el archivo
+            fgets( isDHCP, 15, fp );
+            fgets( empty,  2, fp );
+            fgets( ip,     40, fp );
+            fgets( mask,   40, fp );
+            fgets( gate,   40, fp );
+            fgets( dns,    40, fp );
+            
+            printf("Cerrando archivo...\n");
+            fclose(fp);
+            
+            // Extraer los valores numericos
+            sscanf( isDHCP,"%*s %d",&DHCP );
+            
+            sscanf(   ip,"%*s %d.%d.%d.%d",&n_ip[0],&n_ip[1],&n_ip[2],&n_ip[3] );
+            sscanf( mask,"%*s %d.%d.%d.%d",&n_mask[0],&n_mask[1],&n_mask[2],&n_mask[3] );
+            sscanf( gate,"%*s %d.%d.%d.%d",&n_gate[0],&n_gate[1],&n_gate[2],&n_gate[3] );
+            sscanf(  dns,"%*s %d.%d.%d.%d",&n_dns[0],&n_dns[1],&n_dns[2],&n_dns[3] );
+            
+            
+            if(DHCP) //En caso de modo DHCP
+            {
+                printf("\n   Configurar red de manera automatica\n");
+                EthernetNetIf eth; //Crea la interfaz
+                EthernetErr ethErr = eth.setup();
+                if( ethErr )
+                {
+                    printf( "Error %d en la configuracion\n", ethErr );
+                    exit(1);
+                }
+            
+                printf("Configuracion Correcta\n\n");
+                return eth;
+            }
+            else                       
+            {                        
+                sscanf(   ip,"%*s %d.%d.%d.%d",&n_ip[0],  &n_ip[1],  &n_ip[2],  &n_ip[3] );
+                sscanf( mask,"%*s %d.%d.%d.%d",&n_mask[0],&n_mask[1],&n_mask[2],&n_mask[3] );
+                sscanf( gate,"%*s %d.%d.%d.%d",&n_gate[0],&n_gate[1],&n_gate[2],&n_gate[3] );
+                sscanf(  dns,"%*s %d.%d.%d.%d",&n_dns[0], &n_dns[1], &n_dns[2], &n_dns[3] );
+                printf(" %s %s %s %s %s\n  " , isDHCP, ip, mask, gate, dns );            
+                
+                printf("\n   Configurar red de manera manual\n");
+                EthernetNetIf eth(
+                IpAddr( n_ip[0],  n_ip[1],  n_ip[2],  n_ip[3]), //IP Address
+                IpAddr( n_mask[0],n_mask[1],n_mask[2],n_mask[3]), //Network Mask
+                IpAddr( n_gate[0],n_gate[1],n_gate[2],n_gate[3]), //Gateway
+                IpAddr( n_dns[0], n_dns[1], n_dns[2], n_dns[3] )  //DNS
+                );
+                
+                EthernetErr ethErr = eth.setup();
+                if( ethErr )
+                {
+                    printf( "Error %d en la configuracion\n", ethErr );
+                    exit(1);
+                }
+    
+                printf("Configuracion Correcta\n\n");
+                return eth;
+            }
+            
+        }   
+        
+        EthernetNetIf eth;
+        return eth;
+}
\ No newline at end of file