En esta aplicación se muestra el procedimiento para leer un Acelerómetro digital que utiliza el protocolo serial I2C.
Para este ejemplo se requiere preguntar por el de los ejes en todo momento, por lo que utilizaremos un hilo o subproceso (Thread) y esté trabajando en segundo plano.
Vamos a la pestaña Project > Add Existing Item… y seleccionamos el archivo Hilo.cs.
Ahora debemos agregar la librería Threading.
Creamos los objetos hilo y t.
Colocamos un botón a nuestro diseño, damos doble click para crear un evento, así al presionarlo se ejecutará el hilo.
Agregamos 3 etiquetas que las utilizaremos para mostrar el valor de los ejes X, Y y Z. En las propiedades de cada etiqueta podemos editar algunos parámetros como por ejemplo el texto que mostrarán al iniciar la aplicación.
Como éstas etiquetas las vamos a modificar desde la clase Hilo hay que volverlas objetos públicos. En las propiedades de cada etiqueta cambiamos el valor de Modifiers de Private a Public.
De igual forma ms debe ser público
Para evitar la restricción de poder modificar los elementos de la interfaz de usuario mediante un hilo, debemos agregar la siguiente instrucción.
Lo que sigue es editar el código de la classe Hilo. Damos click a la pestaña Solution Explorer, expandimos Hilo.cs y abrimos Hilo.
Ya en la clase colocamos el código que se ejecutará en segundo plano en un while infinito dentro de Metodo(). Para mandar a llamar un elemento de la clase Form1 desde la clase Hilo utilizamos el objeto form1.
Nótese como utilizamos form1 para mandar a llamar a las etiquetas label1 y label2 y también a los métodos de SADE ms. Utilizamos variables de tipo sbyte ya que el sensor trabaja con números negativos con complemento a 2.
Por último ejecutamos nuestra aplicación presionando el botón
Y así finaliza nuestra aplicación.
¡Gracias por su interés en SADE!
Cualquier duda o información pueden contactarnos en: [email protected]