Tutorial Netduino Parte 5


 Netduino es una plataforma de desarrollo de código abierto integrado similar al Arduino, excepto que utiliza .NET Micro Framework para la programación.  La placa de desarrollo Netduino tiene el mismo factor que Arduino Uno, y por lo tanto la mayoría de los escudos de Arduino son también compatibles con Netduino.  Las placas de desarrollo Arduino se basan en 8 bits microcontroladores Atmel que corren a una velocidad máxima de reloj de 16 MHz en su versión primera. Por otra parte, el hardware Netduino usa potentes procesadores de 32 bits (en el caso de la primera versión un  Atmel SAM7x en Netduino, y STMicro STM32F4 en versiones Netduino Plus) y funciona a una velocidad mucho más rápida (48 MHz a 168 MHz).

El  siguiente tutorial  extraidos de http://embedded-lab.com/blog    tienen como objetivo proporcionar una amplia introducción a la plataforma Netduino  y asegurar que cualquier principiante, estudiante o aficionado, será rápidamente capaz de empezar a usarlo para sus propios proyectos y diseños embebidos. En todos los ejemplos se usa una placa  Netduino Plus ( es la versión mas antigua con NETMF 4,1) se utiliza para ilustrar la salida en estos experimentos.

Como continuación del curso básico de Netduino  donde se trataba la gestión  de un display de leds de 7 segmentos en esta   ocasión vamos   a tratar la  gestión de la escritura/lectura en una  memoria externa microsd   .

Memoria ampliable siempre es un plus, no importa si se trata de un teléfono, una cámara o un microcontrolador. Incluso es ventajoso si sabemos cómo usarlo. En esta parte (la quinta entrega ), vamos a aprender algunas operaciones de escritura sobre una tarjeta SD. Vamos a aprender cómo escribir en un archivo de texto, se muestra como un ejemplo de escritura de un registro. La clase Logger también es capaz de crear un archivo de texto en cualquier lugar determinado y luego escribir algo de información de texto a la misma.

 

Configuración de Circuito y Teoría

El  plus de incluir  la ranura de microsd  en Netduino +  y Neetduino 2+ ,    puede ser muy  util  (no  hay cables desordenados  ni mas módulos externos)

Cuando se inserta una tarjeta SD en la ranura, Netduino Plus automáticamente montarlo como directorio SD. Así que la raíz de particular es SD. El archivo logger, por defecto crea un registro en la ubicación SD \ Report \ logger.txt. Si tiene que escribir en una ubicación personalizada a continuación, utilizar el método LogCustom.

Después de iniciar sesión, por lo general al final de su programa, debe llamar al método Close de lo contrario la información no se guardará a menos que llame método Flush de la clase Logger.

C Programa # .NET

Escribir en un archivo de texto (o registro) se realiza a través de la clase Logger. Para hacer la vida poco más simple, hay algunas propiedades estáticas y métodos que se pueden llamar directamente a escribir en una tarjeta SD. Veamos el diagrama de clase de la clase Logger. Los métodos resaltados / propiedades son miembros estáticos.

Echemos un vistazo a algunos de los métodos principales de esta clase tales como registro, StreamWriter, etc. En el método, simplemente ponemos juntos todos los argumentos en una cadena y luego se llama a WriteLog.

 

public static void Log(params object[] strings)
{
    string message = string.Empty;
    for (int i = 0; i < strings.Length; i++)
    {
        message = message + strings[i].ToString() + " ";
    }
    WriteLog(message, StreamWriter, PrefixDateTime, LogToFile );
}

Uno de los argumentos utilizados es StreamWriter que es una propiedad y se crea una nueva instancia de StreamWriter cuando llamó por primera vez.

 

private static StreamWriter StreamWriter
{
    get
    {
        if (_streamWriter == null) _streamWriter = new StreamWriter(LogFilePath,(bool)Append);
        return _streamWriter;
    }
}

 

El método WriteLog, primero se añade la marca de tiempo si es necesario y luego llama al método WriteLine de un escritor corriente. Tenga en cuenta que Netduino no tiene reloj interno así que el tiempo registrado por Netduino no será la misma que la hora del reloj.

 

private static void WriteLog(string message, StreamWriter streamWriter, bool addDateTime, bool logToFile)
{
    if (addDateTime)
    {
        DateTime current = DateTime.Now;
        message = "[" + current + ":" + current.Millisecond + "] " + message;
    }
 
    Debug.Print(message);
    if (logToFile) streamWriter.WriteLine(message);
}

Cuando llamamos directamente la clase Logger y comenzamos registros envío como a continuación (código), la salida puede ser similar a la imagen de abajo

 

// Directly start logging, no need to create any instance of Logger class
Logger.LogToFile = true;    // if false it will only do Debug.Print()
Logger.Append = true;       // will append the information to existing if any
Logger.PrefixDateTime = true; // add a time stamp on each Log call. Note: Netduino time is not same as clock time.
 
// any number of arguments can be passed. They will appended by a white space
Logger.Log("All", "these", "will", "be", "combined", "in", "to", "one", "string");
Logger.Log("This should go into the second line.");
Debug.Print(Logger.LogFilePath);

He aquí un ejemplo de escritura a una ubicación personalizada

 

// Create an instance of Logger if you need to write to a custom location.
Logger customLogger = new Logger(@"One\OneOne", "one.txt", true);
customLogger.CustomPrefixDateTime = false;
customLogger.CustomLogToFile = true;
customLogger.LogCustom("All", "these", "will", "be", "combined", "in", "to", "one", "string", "-CustomLogger1.");
Debug.Print(customLogger.CustomFilePath);

Descarga

1) Código C # .NET (Solución de archivos)

Lo Siguiente

Ahora mismo, si usted necesita para comprobar lo que está escrito en la tarjeta SD, usted tiene que tomar físicamente la tarjeta y luego insertarlo en el ordenador, lo que obviamente, no quiere hacer más frecuencia. Por lo tanto, vamos a aprender acerca de la lectura en lugar de enviar la información del archivo de texto al ordenador a través de comunicación serie, ninguna necesidad de sacar la tarjeta!

 

 

 

Fuente aqui

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s