Tabla de contenido:
- Paso 1: Materiales
- Paso 2: Conexión del teclado 4x4
- Paso 3: Proporcione energía a la placa de pruebas y conecte la pantalla LCD
- Paso 4: Conecte la alimentación y la tierra a la pantalla LCD
- Paso 5: Conexión del potenciómetro
- Paso 6: Conexión del Arduino a la pantalla LCD
- Paso 7: Implementar el código
- Paso 8: Resultado
Video: Concurso Calculadora TinkerCad: 8 pasos
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:41
Oye, recientemente he estado explorando cómo implementar diferentes tipos de código en un circuito. Descubrí que hacer una calculadora sería una excelente manera de implementar "case" y otras formas de código que me parecieron interesantes. En el pasado, hice calculadoras directamente a partir del código, pero hacer un circuito me interesó. Especialmente durante este tiempo de cuarentena donde estoy en mi computadora casi todo el día. El proyecto consiste en implementar operaciones matemáticas en una pantalla LCD.
Paso 1: Materiales
Para circuito:
- LCD 16 x 2
- Arduino Uno R3
- Teclado 4x4
- Placa de pruebas pequeña
- Potenciómetro (250 kΩ)
- Resistencia (1kΩ)
- x26 cables de puente
Paso 2: Conexión del teclado 4x4
Conecte los pines de 4 filas en el teclado 4x4 a los pines 4-7 de Arduino, y conecte los pines de 4 columnas a los pines 0-3 de Arduino.
Paso 3: Proporcione energía a la placa de pruebas y conecte la pantalla LCD
Usé un voltaje de alimentación de 5 para la placa de pruebas. Conecté la energía y la tierra a la placa de pruebas. La pantalla LCD se coloca en la placa de pruebas y se coloca de modo que todos sus pines se conecten a la placa de pruebas.
Paso 4: Conecte la alimentación y la tierra a la pantalla LCD
Habrá 3 pines de tierra necesarios para conectarse a la pantalla LCD. Uno se conectará a la tierra del LCD, otro se conectará al LED del LCD y el último se conectará al RW. El VCC de la pantalla LCD y el LED necesitarán energía para conectarse. Sin embargo, la potencia del LED requerirá una resistencia conectada, en este caso utilicé una resistencia de 1 kΩ.
Paso 5: Conexión del potenciómetro
Conecte el potenciómetro a la placa de pruebas con 3 columnas libres. Tendrá 3 pines, la columna que contiene el terminal 1 pin necesitará tierra. La columna que contiene el pin del terminal 2 necesitará energía. Luego, el limpiaparabrisas tendrá un cable de puente en su columna que se conecta al VO de la pantalla LCD.
Paso 6: Conexión del Arduino a la pantalla LCD
Los pines 8-13 del Arduino se conectarán a la pantalla LCD. Los pines 8-11 en el Arduino se conectarán a D8 (7-4) respectivamente. Luego, el pin 12 del Arduino se conectará con la habilitación de la pantalla LCD, y el pin 13 del Arduino se conectará al registro de la pantalla LCD.
Paso 7: Implementar el código
Se necesitará código para usar operaciones matemáticas con el teclado y la pantalla LCD. El siguiente será el código que utilicé, sin embargo, aún se pueden implementar varios cambios para hacerlo más limpio y mejor. Así que siéntete libre de jugar un poco con él.
#include #incluya
LiquidCrystal lcd (13, 12, 11, 10, 9, 8);
largo primero = 0;
segundo largo = 0;
doble total = 0;
int posit = 0;
char customKey;
const byte FILAS = 4;
const byte COLS = 4;
char claves [FILAS] [COLS] = {
{'1', '2', '3', '/'}, {'4', '5', '6', '*'}, {'7', '8', '9', '-'}, {'C', '0', '=', '+'}};
byte rowPins [FILAS] = {7, 6, 5, 4};
byte colPins [COLS] = {3, 2, 1, 0};
Teclado customKeypad = Teclado (makeKeymap (teclas), rowPins, colPins, ROWS, COLS);
configuración vacía () {
lcd. comienzo (16, 2);
lcd.setCursor (5, 0);
lcd.clear (); }
bucle vacío () {
customKey = customKeypad.getKey ();
switch (customKey) {
caso '0'… '9':
lcd.setCursor (0, 0);
primero = primero * 10 + (customKey - '0');
lcd.print (primero);
postular ++;
rotura;
caso '+':
primero = (total! = 0? total: primero);
lcd.setCursor (positivo, 0);
lcd.print ("+");
postular ++;
segundo = SecondNumber ();
total = primero + segundo;
lcd.setCursor (1, 1);
lcd.print (total);
primero = 0, segundo = 0;
postular = 0;
rotura;
caso '-':
primero = (total! = 0? total: primero);
lcd.setCursor (positivo, 0);
lcd.print ("-");
postular ++;
segundo = SecondNumber ();
total = primero - segundo;
lcd.setCursor (1, 1);
lcd.print (total);
primero = 0, segundo = 0;
postular = 0;
rotura;
caso '*':
primero = (total! = 0? total: primero);
lcd.setCursor (positivo, 0);
lcd.print ("*");
postular ++;
segundo = SecondNumber ();
total = primero * segundo;
lcd.setCursor (1, 1);
lcd.print (total);
primero = 0, segundo = 0;
postular = 0;
rotura;
caso '/':
primero = (total! = 0? total: primero);
lcd.setCursor (positivo, 0);
lcd.print ("/");
postular ++;
segundo = SecondNumber (); lcd.setCursor (1, 1);
segundo == 0? lcd.print ("Error"): total = (flotante) primero / (flotante) segundo;
lcd.print (total);
primero = 0, segundo = 0;
postular = 0;
rotura;
caso 'C':
total = 0;
primero = 0;
segundo = 0;
postular = 0;
lcd.clear ();
rotura; }
}
Long SecondNumber () {
while (1) {
customKey = customKeypad.getKey ();
if (customKey> = '0' && customKey <= '9') {
segundo = segundo * 10 + (customKey - '0');
lcd.setCursor (positivo, 0);
lcd.print (segundo); }
if (customKey == 'C') {
total = 0;
primero = 0;
segundo = 0;
postular = 0;
lcd.clear ();
rotura; }
if (customKey == '=') {
lcd.setCursor (0, 1);
lcd.print ("=");
postular = total;
lcd.clear ();
lcd.setCursor (0, 1);
lcd.print ("=");
rotura; }
}
volver segundo;}
Paso 8: Resultado
Espero que todos hayan disfrutado de este instructivo. ¡Gracias por leer!
Saim.
Recomendado:
Gimbal de cámara impresa en 3D (Concurso Tinkercad): 6 pasos
Gimbal de cámara impresa en 3D (Concurso Tinkercad): Hola, Este es un cardán de cámara que diseñé en Tinkercad. El cardán principal estaba hecho de This Jar Handle y un cardán / giroscopio de cinco anillos que parece que ya no puedo encontrar. El diseño de Tinkercad se puede encontrar aquí. Esto fue diseñado para funcionar en Powers
Robot de dibujo con escudo de Adafruit (concurso Make It Move): 10 pasos (con imágenes)
Drawing Robot With Adafruit Shield (Concurso Make It Move): Hola, me llamo Jacob y yo vivimos en el Reino Unido. En este proyecto voy a construir un robot que dibuje para ti. * Estoy seguro de que muchos de ustedes quieren verlo, así que si quieren saberlo, salte directamente al penúltimo paso, pero asegúrese de volver aquí para ver
Cinta de correr DIY VR - Concurso Basys3 FPGA-Digilent: 3 pasos
DIY VR Treadmill - Concurso Basys3 FPGA-Digilent: ¿Quieres construir una caminadora VR en la que puedas ejecutar tus aplicaciones y juegos de escritorio? ¡Entonces has venido al lugar correcto! En los juegos convencionales, utilizas el ratón y el teclado para interactuar con el entorno. Por lo tanto, debemos enviar el
Cajones de cosecha - Participación en el concurso Creciendo más allá de la Tierra de la NASA: 5 pasos (con imágenes)
Cajones de cosecha - Participación del concurso Creciendo más allá de la Tierra de la NASA: Resumen: A bordo de la estación espacial internacional, los astronautas no tienen mucho espacio para cultivar alimentos. Este jardín hidropónico está diseñado para operar de manera eficiente utilizando la cantidad mínima de espacio para cosechar 30 plantas en un horario rotatorio en un gravi
Brazo robótico con servomotor RC controlado por fpga - Concurso de Digilent: 3 pasos
Brazo robótico con servomotor RC controlado por FPGA - Concurso de Digilent: Brazo robótico con servomotor controlado por FPGA El objetivo de este proyecto es crear un sistema programable que pueda realizar operaciones de soldadura en la placa perf. El sistema se basa en la placa de desarrollo Digilent Basys3 y será capaz de soldar co