Tabla de contenido:
- Paso 1: Configuración del potenciómetro en Arduino
- Paso 2: configuración de la pantalla LCD
- Paso 3: Configurar la presentación de diapositivas
- Paso 4: Ejemplo de código completo
Video: Organizador de escritorio con pantalla LCD: 4 pasos
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:44
** En proceso de edición **
Para el proyecto arduino de HKU, decidí hacer un organizador de escritorio con una pantalla LCD que muestre citas de inspiración para que lo recoja cuando gire su potenciómetro.
Estaré cubriendo las cosas técnicas de arduino principalmente, siempre que tenga algo como una caja de madera para ocultar su Arduino y su pantalla LCD en su organizador personal, o podría tomar cualquier forma deseable.
Las cosas que necesitarás
- * arduino uno
- medidor de olla
- * cables prottyping macho
- * Módulo LCD! Con lector de tarjetas SD! (Tengo arduino tft LCD)
- *tarjeta micro SD
- * madera (reciclé viejos mini cajones y usé algunas piezas de madera de repuesto, ¡asegúrate de que al menos puedas formar una pequeña caja para esconder tu arduino!
Paso 1: Configuración del potenciómetro en Arduino
conecte su medidor de olla como se muestra en la imagen
para que el medidor de olla comience a funcionar
Deberá comenzar con algunas variables en la parte superior de su boceto antes de la configuración:
código:
const int analogInPin = A0; // Pin de entrada analógica al que está conectado el potenciómetro
int sensorValue = 0; // valor leído del bote int outputValue = 0; // salida de valor al PWM (salida analógica)
En la imagen 2 muestro cómo se mapea el potenciómetro en el bucle vacío
código:
// lee el valor analógico:
sensorValue = analogRead (analogInPin); // mapearlo al rango de la salida analógica: outputValue = map (sensorValue, 0, 1023, 0, 255); String stuffToPrint = String (outputValue); // cambia el valor de salida analógica:
stuffToPrint.toCharArray (impresión, 9); // texto estático myScreen.setTextSize (1);
Serial.print ("sensor ="); Serial.print (sensorValue); Serial.print ("\ t salida ="); Serial.println (outputValue);
retraso (50);
esto asigna los datos analógicos del potenciómetro a un rango de 0 a 255, usaremos este rango para controlar nuestra presentación de diapositivas lcd
Si necesita ayuda para configurar el potenciómetro; Utilicé el código de este útil tutorial, los pines son exactamente los mismos y funcionarán con la configuración de la pantalla LCD en los siguientes pasos.
www.toptechboy.com/arduino/lesson-11-arduin…
Paso 2: configuración de la pantalla LCD
Configure los pines como en el ejemplo anterior.
Cuando se hace correctamente, la pantalla se iluminará en blanco.
Si necesita ayuda adicional o desea utilizar algún código de ejemplo para probar su pantalla, puede ver el tutorial oficial de este módulo y sus ejemplos de código aquí
utilizaremos parcialmente la "imagen de dibujo de la tarjeta SD" en el siguiente paso.
Paso 3: Configurar la presentación de diapositivas
Ahora que tenemos el potenciómetro y la pantalla LCD configurados, podemos configurar una "presentación de diapositivas" usando los valores mapeados del potenciómetro.
Usando el rango de 0 a 255 podemos indicar un cierto rango en el que podemos activar el arduino para que muestre algún contenido en la pantalla LCD.
Primer ejemplo como se muestra en la imagen:
if (outputValue <51) {// rango uno si (rangoOne == verdadero) {rangoTwo = verdadero; myScreen.setRotation (90); myScreen.background (0, 0, 0); myScreen.stroke (255, 255, 255); myScreen.text ("Hola, maravilloso", 10, 50); myScreen.text ("gira el pin> a", 10, 60); myScreen.text ("anímate", 10, 70); rangeOne = falso;
Si el potenciómetro cambia a un rango inferior a 51, la pantalla muestra (en modo retrato = rotación 90) algo de texto.
Para poder mostrar una imagen, asegúrese de que su pin SD CS esté definido correctamente, o el arduino no podrá inicializar la SD (¡así que asegúrese de verificar sus cables!)
Si desea verificar los pines de su LCD, puede consultar la guía oficial para "conectar la pantalla"
¡Definí mi pin SD CS como 4 ahora porque mezclé mis cables, por ejemplo! - Me complace compartir ese pequeño error porque le ahorrará mucho tiempo buscando en la web el error "No se pudo inicializar". A lo que en algunos foros se dice que la solución es tener un determinado modelo de tarjeta SD. ¡Así que compruebe primero su cableado antes de comprar nuevas tarjetas SD!
Paso 4: Ejemplo de código completo
#incluir
#include // Biblioteca específica de hardware #include
#define SD_CS 4 #define CS 10 #define DC 9 #define RESET 8
const int analogInPin = A0; // Pin de entrada analógica al que está conectado el potenciómetro
int sensorValue = 0; // valor leído del bote int outputValue = 0; // valor de salida al PWM (salida analógica) bool rangeOne = true; bool rangeTwo = verdadero; bool rangeThree = verdadero; bool rangeFour = verdadero; bool rangeFive = verdadero;
TFT myScreen = TFT (CS, DC, RESET);
Imagen PImage; impresión de caracteres constantes [9];
configuración vacía () {Serial.begin (9600); myScreen.begin (); // intenta acceder a la tarjeta SD Serial.print ("Inicializando tarjeta SD…"); if (! SD.begin (SD_CS)) {Serial.println ("¡falló!"); regreso; } Serial.println ("¡OK!");
// inicializar y borrar la pantalla GLCD myScreen.begin (); myScreen.background (255, 255, 255);
} void loop () {// leer el valor analógico: sensorValue = analogRead (analogInPin); // mapearlo al rango de la salida analógica: outputValue = map (sensorValue, 0, 1023, 0, 255); String stuffToPrint = String (outputValue); // cambia el valor de salida analógica:
stuffToPrint.toCharArray (impresión, 9); // texto estático myScreen.setTextSize (1);
Serial.print ("sensor ="); Serial.print (sensorValue); Serial.print ("\ t salida ="); Serial.println (outputValue);
retraso (50);
if (outputValue to ", 10, 60); myScreen.text (" obtener ánimo. ", 10, 70); rangeOne = false;}} if (outputValue> 52 && outputValue 102 && outputValue 154 && outputValue <205) {/ / range four if (rangeFour == true) {rangeThree = true; rangeFive = true; myScreen.setRotation (90); myScreen.background (255, 255, 255); // borrar la imagen de la pantalla = myScreen.loadImage ("quote2.bmp "); // escribe la imagen en la pantalla myScreen.image (image, 0, 0); myScreen.stroke (255, 255, 255); myScreen.text (" Estoy tan orgulloso ", 10, 50); myScreen.text ("de ti!", 10, 60); rangeFour = false;}}
si (outputValue> 206 && outputValue
Recomendado:
Organizador de escritorio con reloj de matriz LED y Bluetooth: 7 pasos
Organizador de escritorio con reloj de matriz LED y Bluetooth: mi escritorio estaba muy desordenado y quería tener un buen organizador donde pudiera colocar mis lápices, pinceles, herramientas de arcilla, etc. Miré muchos organizadores en el mercado pero no me gustó ninguno de ellos . Me propuse diseñar mi propio organizador de escritorio y aquí
Organizador Escritorio De Star Wars PC-1: 8 Pasos
Organizador Escritorio De Star Wars PC-1: BIENVENIDOS USUARIOS A ESTE TUTORIAL, ESPERO LES GUSTE
Pantalla LCD I2C / IIC - Use una pantalla LCD SPI para la pantalla LCD I2C usando el módulo SPI a IIC con Arduino: 5 pasos
Pantalla LCD I2C / IIC | Use una pantalla LCD SPI para la pantalla LCD I2C usando el módulo SPI a IIC con Arduino: Hola a todos, ya que una pantalla LCD SPI 1602 normal tiene demasiados cables para conectar, por lo que es muy difícil conectarlo con arduino, pero hay un módulo disponible en el mercado que puede Convierta la pantalla SPI en la pantalla IIC, por lo que solo necesita conectar 4 cables
Pantalla LCD I2C / IIC - Convierta una pantalla LCD SPI en una pantalla LCD I2C: 5 pasos
Pantalla LCD I2C / IIC | Convierta una pantalla LCD SPI en la pantalla LCD I2C: el uso de la pantalla lcd spi necesita demasiadas conexiones, lo cual es realmente difícil de hacer, así que encontré un módulo que puede convertir la pantalla lcd i2c en la pantalla lcd spi, así que comencemos
Organizador de escritorio Disco: 8 pasos (con imágenes)
Disco Organizador de escritorio: Materiales: triplex, grosor: 3 mm La cantidad de placas de madera depende del tamaño de su cortadora láser … ajuste la lima en su placa de madera de tamaño máximo … tal vez necesite más de 1 placa (téngalo en cuenta). 6 x leds de flash (utilicé leds de flash de 7 colores) disponibles