Tabla de contenido:

Pantallas duales de 7 segmentos controladas por potenciómetro en CircuitPython - Demostración de la persistencia de la visión: 9 pasos (con imágenes)
Pantallas duales de 7 segmentos controladas por potenciómetro en CircuitPython - Demostración de la persistencia de la visión: 9 pasos (con imágenes)

Video: Pantallas duales de 7 segmentos controladas por potenciómetro en CircuitPython - Demostración de la persistencia de la visión: 9 pasos (con imágenes)

Video: Pantallas duales de 7 segmentos controladas por potenciómetro en CircuitPython - Demostración de la persistencia de la visión: 9 pasos (con imágenes)
Video: control de display de 7 segmentos con CD4511 y potenciómetro 2024, Mes de julio
Anonim
Pantallas duales de 7 segmentos controladas por potenciómetro en CircuitPython: demostración de persistencia de la visión
Pantallas duales de 7 segmentos controladas por potenciómetro en CircuitPython: demostración de persistencia de la visión
Pantallas duales de 7 segmentos controladas por potenciómetro en CircuitPython: demostración de persistencia de la visión
Pantallas duales de 7 segmentos controladas por potenciómetro en CircuitPython: demostración de persistencia de la visión

Este proyecto utiliza un potenciómetro para controlar la pantalla en un par de pantallas LED de 7 segmentos (F5161AH). A medida que se gira la perilla del potenciómetro, el número mostrado cambia en el rango de 0 a 99. Solo un LED se enciende en cualquier momento, muy brevemente, pero el ojo o una cámara no notan el parpadeo. Esta es la persistencia de la visión.

Al presionar el botón, la acción se ralentiza y puede ver que los LED individuales se encienden y apagan.

He notado que hay muy pocos Instructables usando CircuitPython, por lo que este proyecto usa una placa de desarrollo Adafruit Itsybitsy M4 que ejecuta CircuitPython maravillosamente. Si desea utilizar una Raspberry Pi u otra placa de desarrollo de microprocesador, solo necesita cambiar los pines y su configuración en el script.

Paso 1: Qué necesitamos para el proyecto

Qué necesitamos para el proyecto
Qué necesitamos para el proyecto

Hardware:

  • Adafruit Itsybitsy M4: una placa de desarrollo pequeña, potente y económica
  • cable microUSB - para programar desde PC
  • tablero de pruebas (o tablero de tiras y soldador)
  • cables de puente de tablero (o cable de conexión y soldadura)
  • un par de pantallas de 7 segmentos F5161AH
  • un potenciómetro de 10 K Ohm
  • un interruptor de botón
  • un par de resistencias de 330 ohmios

Software:

Mu Editor: para escribir el código y programar la placa

La configuración de Itsybitsy se explica aquí:

La última versión de CircuitPython:

Bibliotecas de CircuitPython:

Editor de Mu:

Normalmente construyo un proyecto con stripboard después de probar algunas ideas en una protoboard. Esto significa que puedo mantener los proyectos terminados listos para demostraciones en eventos de "mostrar y contar" o para mostrárselos a mis alumnos.

Paso 2: construcción del circuito

Construyendo el circuito
Construyendo el circuito

Las pantallas de 7 segmentos tienen cada una 10 pines. Los pines centrales en la parte superior e inferior están conectados internamente y son cátodos comunes. Eso significa que todos los 8 LED, 7 segmentos y un punto decimal en la pantalla comparten una línea común a una conexión GND. Esto debería ser a través de una resistencia de 330 ohmios para limitar la corriente. Cada uno de los otros 8 pines son ánodos y están conectados directamente a los pines de salida del Itsybitsy.

Esto significa que el pin 13 en Itsybitsy, que controla el segmento superior central (A), está conectado al pin 7 en AMBAS pantallas de 7 segmentos. De manera similar, el pin 12 en Itsybitsy, que controla el segmento superior derecho (B), está conectado al pin 6 en AMBAS pantallas de 7 segmentos. El resto de ánodos están conectados de manera similar.

Los cátodos comunes están conectados, a través de resistencias, a los pines D3 y D4 del Itsybitsy. NO están conectados a GND, por lo que podemos seleccionar los chips de pantalla individualmente bajando sus cátodos para seleccionar el requerido.

Paso 3: Pinout Itsybitsy M4

Pinout de Itsybitsy M4
Pinout de Itsybitsy M4

Esto muestra los pines del Itsybitsy M4 con mayor claridad.

Paso 4: Conexiones de tablillas

Conexiones de stripboard
Conexiones de stripboard

Esto debería ayudar a su comprensión. El bloque de conexiones de la izquierda (rojo… gris) son los ánodos y están conectados a los pines: D13, D12, D11, D10, D9, D7, Tx y Rx.

En el par central de conexiones; Pin 8, el cátodo de la pantalla izquierda (decenas) está conectado a D4 a través de una resistencia. Pin 3, el cátodo de la pantalla derecha (unidades) está conectado a D3 a través de una resistencia. Son 330 Ohm

Importante: Se han cortado todas las pistas debajo de la pantalla. En la 4ª pista desde la derecha hay un corte en la 12ª fila desde la parte inferior del tablero. Está entre los cables blancos y negros

Las conexiones de la derecha son:

  • Blanco a A0 desde el lado izquierdo del botón
  • Verde, limpiaparabrisas del potenciómetro a A4
  • Naranja a 3.3v y pin derecho del potenciómetro - gama alta
  • Negro a GND: lado derecho del botón y pin izquierdo en el potenciómetro - extremo bajo

Paso 5: Código: Parte 1 - Configuración de pines digitales

Código: Parte 1 - Configuración de pines digitales
Código: Parte 1 - Configuración de pines digitales

Esto configura los pines digitales: ánodos, cátodos y el botón. Estos bucles son un método eficaz para configurar varios pines similares.

Paso 6: Codificar: Parte 2 - Configurar pines analógicos y codificar los caracteres numéricos

Código: Parte 2 - Configurar pines analógicos y codificar los caracteres numéricos
Código: Parte 2 - Configurar pines analógicos y codificar los caracteres numéricos

Aquí solo se utiliza uno de los pines analógicos.

Cada línea de la tabla representa un solo carácter. Los 7 unos o ceros, de izquierda a derecha, representan los segmentos A a G. Un '1' significa que el segmento está ENCENDIDO y un 0 que el segmento está APAGADO.

Una vez que tenga este proyecto funcionando, es posible que desee ampliar la tabla para incluir a, b, c, d, eyf y modificar el código para una visualización hexadecimal (base 16).

Paso 7: Código: Parte 3 - Procedimientos

Código: Parte 3 - Procedimientos
Código: Parte 3 - Procedimientos

Aquí es donde se realiza el verdadero trabajo. El segmento LED solo se iluminará si el cátodo está BAJO y el ánodo ALTO.

Método:

  1. dividir el número en sus componentes de decenas y unidades
  2. tire del cátodo hacia abajo en una pantalla para encenderlo y luego haga parpadear los segmentos uno a la vez si es necesario
  3. tira del cátodo hacia arriba para apagar esa pantalla
  4. repetir para otra pantalla
  5. Haga esto una y otra vez muy rápidamente para que el observador no pueda ver el parpadeo.

Reduzca la velocidad si se presiona el botón.

Paso 8: Código: Parte 4 - El bucle principal

Código: Parte 4 - El bucle principal
Código: Parte 4 - El bucle principal

En un bucle:

  • Leer la olla
  • Escale el valor al rango de 0 a 99
  • Mostrar los dígitos
  • Si se presiona el botón, aumente la demora para mostrar los destellos del LED
  • Deténgase si el valor es cero Y se presiona el botón

Paso 9: Código: Descarga para ahorrar tiempo

¿Quién quiere escribir todo eso?

Aquí hay una descarga para ahorrarle tiempo y errores tipográficos.

Recomendado: