ET MF incluye soporte mejorado para interfaces gráficas. Hay algunas placas con lcd integrado como el Tahoe II , ChipworkX o FEZ Cobra que tiene pantalla gráfica y puede ser manejado por las clases implementadas. .
Sin embargo, el más común entre los aficionados son el display alfanumérico tradicional, especialmente de 16 caracteres por dos líneas «16×2».
Prácticamentetodos los s LCDs populares sebasan en elfamoso chip de Hitachi HD44780 queademas conestecontroladorpermite lacomunicaciónparalela. El 16-pinconectorestándar en lalínea en la parte inferiorderecha de laesquinatablero LCDtambién esmuytípico ypuedeutilizar unacombinación deinformaciónparalela 8 de bits o 4 bits (pseudoserie), esdecir, el 16-pin 8 son parainformar de un feed lalógica, dos pines paraalimentar la luz defondo, elpoder y la terminal detierra de lapantalla ensí y de lacomunicación enserie de doscontactosascendió a 16 pins.
Las instrucciones para la escritura y la lectura es un estándar que Pavel Bansky demostró que es sencillo para multiplexar con registro de desplazamiento y poner el código en el Netduino.
Pavel utilizó el CMOS 4094 es el mismo que 74HC595 TTL que sólo se acepta como un archivo de valores de alto nivel por encima de 2,5 V que significa que usted puede colgar un 5V LCD directamente con Netduino de la IO y sin un circuito adicional sólo el registro de desplazamiento 74HC595.
Por otra parte, si desea utilizar una pantalla LCD de 3,3 V Restivo sólo hay que poner un separador hecho con un rango de 1.68 kOhms y 3,3 kOhm que el nivel de salida es de 3,3 V.
Pavel implementó el tratamiento en dos LCD papeles gemelos uno debajo del otro. La clase que en realidad está incluida en los códigos es LiquidCrystal y en un segundo nivel requerido ILiquidCrystalTransferProvider tratar con la interfaz de hardware para poder utilizar la misma clase de nuevo con los manipuladores de hardware diferente, ambos implementados por Pavel esGpioLiquidCrystalTransferProvider y HC4094 Szymon que en su mayor parte, procedió a llamar Shifter74Hc595LiquidCrystalTransferProvider, Szymon porque estaba usando el 74595 para conectar la pantalla LCD. tiene otras cosas implementas relacionas con algunas tarjetas de expansión para LCD equipado con un chip de comunicación, ya que estamos en Brasil, el más es la comunicación en serie se hace con una tarjeta de expansión con PIC16F628 o algo así. Las implementaciones realizadas por Pavel y por Szymon incluyen chips de soporte MCP23008 yPCF8574P una clase llamada BaseShifterLiquidCrystalTransferProvicer. ‘s Szymon en su blog mencionó la comunicación SPI a hablar como LCD, una alternativa si se carga el bus I ² C a pesar de que no he visto manera en que el tratamiento se produce la comunicación SPI.
El SPI se encuentra disponible a través de los pins Netduino 11 (MOSI), 12 (MOSO) y 13 (SPCK) y cualquier otro pasador para seleccionar el esclavo deseado. Esta implementación de Szymon parte de μLiquidCrystal, en realidad no lo probó, pero vale la pena echar un vistazo.
Con respecto al circuito, vale la pena una cierta consideración. La Primera refiere a un transistor NPN (BC548 pero se he usado el 2N2222 es el equivalente americano) que por lo general surge para controlar la luz de fondo de la pantalla LCD a través de un registro de desplazamiento de salida para que pueda encender y apagar la pantalla LCD en el Código si desea guardar energia.
A otra es controlar la luminosidad de la pantalla LCD se puede hacer mediante la colocación de una olla de 47Kohms la 2Kohms, o no quieren simplemente configurar y listo para poner un divisor resistivo. ‘s Pavel creado una biblioteca (que como tava viejo tuvo que . recrearlo en NETMF 4.2) llamado Bansky.SPOT.LCD donde existen métodos y ITransferProvider SendByte . capa utilizada para interactuar con otros El código de prueba es la siguiente:
> / / Crear instancia de registro de desplazamiento / / (Compatible con los 74.595!) Shifter HC4094 = nueva HC4094 (Pins.GPIO_PIN_D0, Pins.GPIO_PIN_D2, Pins.GPIO_PIN_D1, false ); / / Crear una nueva instancia LCD LCD4Bit lcd = nueva LCD4Bit (shifter); / / Activar la visualización, gire de nuevo la luz en, Gran espectáculo cursor / / Ocultar cursor pequeño, parpadeando lcd.Display ( verdadero , verdadero , falso , verdadero ); / / Borrar la ventana lcd.Clear (); / / Escribir el mensaje en primera línea lcd.Write ( "Victor M. >>>>>>>>" ); / / Mueve el cursor a 2 ª línea lcd.SetPosition (40); / / Escribir en el segundo Line lcd.Write ( "Q2 NETMF." ); Thread.Sleep (Timeout.Infinite); |
Tenga en cuenta que el flujo del proceso es muy simple:
- Crear la clase de la primera capa de informar a los pasadores del hardware que se utiliza para esa función;
- Cree el manejo de la pantalla LCD a partir del hardware de clase;
- Ajuste que desea mostrar en la pantalla LCD (si el parpadeo caja);
- Limpieza del LCD;
- Escriba el mensaje.
Hay mucho más que decir sobre el LCD, es muy sencillo, más que mi trabajo era para montar el circuito en el tablero para entender la operación. Y entonces la imagen que muestra el resultado final:
Fuente aqui
Una respuesta a “Usando el 16×4 LCD: μLiquidCrystal”