Escudo del telclado numérico de la exhibición de Arduino LCD (ficha técnica) para el tablero de Freeduino o de Arduino
Descripción de producto Esto es un escudo muy popular del telclado numérico del LCD para el tablero de Arduino o de Freeduino. Puede estar directamente tapa sobre el tablero de Arudino, ningún soldar o el mosca-cableado necesarios. Un 16x2 HD44780 LCD compatible, carácter blanco y retroiluminación azul.
Este escudo utiliza la biblioteca de Arudino LCD4Bit.
Asignación del Pin
Pin |
Función |
Análogo 0 |
Botón (seleccione, encima de, derecho, abajo y se fue) |
Digitaces 4 |
DB4 |
Digitaces 5 |
DB5 |
Digitaces 6 |
DB6 |
Digitaces 7 |
DB7 |
Digitaces 8 |
RS (selección de la exhibición de los datos o de la señal) |
Digitaces 9 |
Permita |
Digitaces 10 |
Control retroiluminado |
Código de ejemplo Uso del ejemplo de la biblioteca de LCD4Bit_mod
Transferencia directa de la biblioteca de LCD4Bit_mod
objeto del #include <LCD4Bit_mod.h> //create de //para controlar un LCD. //number de líneas en display=1LCD4Bit_mod lcd = LCD4Bit_mod (2); msgs messagechar de //Key [5] [15] = {la “AUTORIZACIÓN dominante correcta”, “encima de la AUTORIZACIÓN dominante”, “abajo cierra MUY BIEN”, “dejó la AUTORIZACIÓN dominante”, la “AUTORIZACIÓN dominante selecta”}; internacional adc_key_val [5] = {30, 150, 360, 535, 760}; internacional NUM_KEYS = 5; adc_key_in de la internacional; internacional key=-1; internacional oldkey=-1; disposición vacía () {pinMode (13, SALIDA); //we utilizará la eliminación de errores LED para hacer salir un latido del corazón lcd.init (); //optionally, ahora puso nuestros ajustes específicos a la aplicación de la exhibición, omitiendo sea cual sea hizo el lcd en lcd.init () //lcd.commandWrite (0x0F); //cursor encendido, exhibición encendido, centelleo encendido. (desagradable!) lcd.clear (); lcd.printIn (“prueba del TELCLADO NUMÉRICO… que presiona”);} lazo del vacío () {adc_key_in = analogRead (0); //leyó el valor del digitalWrite del sensor (13, ALTO); llave = get_key (adc_key_in); ¡convertido de //en la prensa dominante si (llave! = oldkey) //si se detectan los keypress {retraso (50); espera de //para el adc_key_in = el analogRead (0) del tiempo del debounce; //leyó el valor de la llave = del get_key (adc_key_in) del sensor; ¡convertido de //en la prensa dominante si (llave! = oldkey) {oldkey = llave; si (llave >=0) {lcd.cursorTo (2, 0); //line =2, x=0 lcd.printIn (msgs [llave]); }}} digitalWrite (13, BAJO);}/valor del convertido ADC para cerrar el get_key del numberint (internacional sin firmar entrada) {internacional k; para (k = 0; k < NUM_KEYS; k++) {si (entrada < adc_key_val [k]) {k de vuelta; }} si (>= NUM_KEYS de k) k = -1; //ninguna vuelta presionada llave válida k;}
Uso del ejemplo de la biblioteca de cristal líquido
//Sample usando ******************************************************* de cristal líquido del library#include <LiquidCrystal.h>/este programa probará al panel LCD y el buttonsMark Bramwell, julio de 2010 ********************************************************/selecciona los pernos usados en el LCD lcd panelLiquidCrystal (8, 9, 4, 5, 6, 7); /defina algunos valores usados por el lcd_key del panel y del buttonsint = 0; adc_key_in de la internacional = 0; el btnNONE 5 del btnSELECT 4#define del btnLEFT 3#define del btnDOWN 2#define del btnUP 1#define del btnRIGHT 0#define del #define leyó los read_LCD_buttons del buttonsint () {adc_key_in = el analogRead (0); //leyó el valor del sensor //mis botones cuando estaba leído se centra en estos valies: 0, 144, 329, 504, 741 //añadimos aproximadamente 50 a esos valores y control para ver si estamos cercanos si (adc_key_in > 1000) btnNONE de la vuelta; //hacemos esto la 1ra opción por razones de la velocidad puesto que será el resultado más probable si (adc_key_in < 50) btnRIGHT de la vuelta; si (adc_key_in < 195) btnUP de la vuelta; si (adc_key_in < 380) btnDOWN de la vuelta; si (adc_key_in < 555) btnLEFT de la vuelta; si (adc_key_in < 790) btnSELECT de la vuelta; btnNONE de vuelta; //cuando todos los demás fallan, vuelve esto…}disposición vacía () {lcd.begin (16, 2); comienzo de //la biblioteca lcd.setCursor (0,0); lcd.print (“empuje los botones”); impresión de //un lazo simple del vacío del mensaje} () {lcd.setCursor (9,1); //movimiento cursor a segundo línea “1" y 9 espacio sobre lcd.print (millis ()/1000); los segundos de la exhibición de //transcurrieron desde lcd.setCursor de ciclo inicial (0,1); movimiento de //al principio de la segunda línea lcd_key = read_LCD_buttons (); //leyó el interruptor de los botones (lcd_key) //dependiendo del cual el botón fue empujado, nosotros realiza una acción {btnRIGHT del caso: {lcd.print (“DERECHO "); rotura; } btnLEFT del caso: {lcd.print (“IDO "); rotura; } btnUP del caso: {lcd.print (“PARA ARRIBA "); rotura; } btnDOWN del caso: {lcd.print (“ABAJO "); rotura; } btnSELECT del caso: {lcd.print (“SELECCIONE”); rotura; } btnNONE del caso: {lcd.print (“NINGUNO "); rotura; }}}
Detalles de empaquetado
-
Tipo de la unidad:
-
pedazo
-
Peso del paquete:
-
0.1kg (0.220lb.)
-
Tamaño del paquete:
-
el 10cm los x 4cm los x 3cm (los 3.94in el x 1.57in el x 1.18in)