- Pantalla de siete segmentos:
- Componentes requeridos:
- Circuito y explicación de trabajo:
- Explicación de programación:
Raspberry Pi es una placa basada en procesador de arquitectura ARM diseñada para ingenieros electrónicos y aficionados. PI es una de las plataformas de desarrollo de proyectos más confiables que existen en la actualidad. Con una velocidad de procesador más alta y 1 GB de RAM, el PI se puede utilizar para muchos proyectos de alto perfil como procesamiento de imágenes e IoT.
Para realizar cualquiera de los proyectos de alto perfil, es necesario comprender las funciones básicas de PI. Cubriremos todas las funcionalidades básicas de Raspberry Pi en estos tutoriales. En cada tutorial discutiremos una de las funciones de PI. Al final de esta serie de tutoriales de Raspberry Pi, podrá aprender Raspberry Pi y hacer buenos proyectos usted mismo. Siga los siguientes tutoriales:
- Introducción a Raspberry Pi
- Configuración de Raspberry Pi
- LED parpadeante
- Interfaz de botones
- Generación Raspberry Pi PWM
- Interfaz LCD con Raspberry Pi
- Controlar el motor de CC
- Control de motor paso a paso
- Registro de turnos de interfaz
- Tutorial de Raspberry Pi ADC
- Control de servomotor
- Panel táctil capacitivo
En este tutorial, vamos a hacer la interfaz de pantalla de segmento de Raspberry Pi 7. Las pantallas de siete segmentos son las más baratas para una unidad de pantalla. Un par de estos segmentos apilados juntos podrían usarse para mostrar la temperatura, el valor del contador, etc. Conectaremos la unidad de visualización de 7 segmentos a GPIO de PI y los controlaremos para mostrar los dígitos en consecuencia. Después de eso, escribiremos un programa en PYTHON para que la pantalla de siete segmentos cuente de 0 a 9 y se restablezca a cero.
Pantalla de siete segmentos:
Hay diferentes tipos y tamaños de pantallas de 7 segmentos. Hemos cubierto Seven Segment trabajando en detalle aquí. Básicamente, hay dos tipos de 7 segmentos, el tipo de ánodo común (positivo común o VCC común) y el tipo de cátodo común (negativo común o tierra común).
Ánodo común (CA): En este, todos los terminales negativos (cátodo) de los 8 LED están conectados entre sí (ver diagrama a continuación), denominados COM. Y todos los terminales positivos se quedan solos.
Cátodo común (CC): En este, todos los terminales positivos (ánodos) de los 8 LED están conectados entre sí, denominados COM. Y todas las térmicas negativas quedan solas.
Estas pantallas de siete segmentos CC y CA son muy útiles al multiplexar varias celdas juntas. En nuestro tutorial usaremos CC o Common Cathode Seven Segment Display.
Ya hemos interconectado el segmento 7 con 8051, con Arduino y con AVR. También hemos utilizado pantallas de 7 segmentos en muchos de nuestros proyectos.
Discutiremos un poco sobre Raspberry Pi GPIO antes de continuar, Hay 40 pines de salida GPIO en Raspberry Pi 2. Pero de 40, solo se pueden programar 26 pines GPIO (GPIO2 a GPIO27), consulte la figura a continuación. Algunos de estos pines realizan algunas funciones especiales. Con GPIO especial reservado, nos quedan 17 GPIO.
La señal de + 3.3V del GPIO (pin 1 o 17) es suficiente para impulsar la pantalla de 7 segmentos. Para proporcionar el límite de corriente, usaremos una resistencia de 1 KΩ para cada segmento como se muestra en el Diagrama del circuito.
Para saber más sobre los pines GPIO y sus salidas de corriente, consulte: LED parpadeando con Raspberry Pi
Componentes requeridos:
Aquí estamos usando Raspberry Pi 2 Model B con Raspbian Jessie OS. Todos los requisitos básicos de hardware y software se discutieron previamente, puede buscarlos en la Introducción de Raspberry Pi, aparte de lo que necesitamos:
- Pines de conexión
- Pantalla de 7 segmentos de cátodo común (LT543)
- Resistencia de 1KΩ (8 piezas)
- Tablero de circuitos
Circuito y explicación de trabajo:
Las conexiones, que se realizan para interconectar la pantalla de 7 segmentos con Raspberry Pi, se indican a continuación. Hemos utilizado el segmento Common Cathode 7 aquí:
PIN1 o e ------------------ GPIO21
PIN2 od ------------------ GPIO20
PIN4 oc ------------------ GPIO16
PIN5 o ho DP ---------- GPIO 12 // no es obligatorio ya que no estamos usando el punto decimal
PIN6 o b ------------------ GPIO6
PIN7 o un ------------------ GPIO13
PIN9 of ------------------ GPIO19
PIN10 og ---------------- GPIO26
PIN3 o PIN8 ------------- conectado a tierra
Entonces usaremos 8 pines GPIO de PI como un PUERTO de 8 bits. Aquí GPIO13 es LSB (bit menos significativo) y GPIO 12 es MSB (bit más significativo).
Ahora, si queremos visualizar el número “1”, necesitamos segmentos B y C de energía. Para alimentar el segmento B y C, necesitamos alimentar GPIO6 y GPIO16. Entonces, el byte para la función 'PORT' será 0b00000110 y el valor hexadecimal de 'PORT' será 0x06. Con ambos pines en alto, obtenemos "1" en la pantalla.
Hemos escrito los valores para cada dígito que se mostrará y almacenado esos valores en una cadena de caracteres denominada 'PANTALLA' (consulte la sección de Código a continuación). Luego hemos llamado esos valores uno por uno para mostrar el dígito correspondiente en la pantalla, usando la Función 'PORT'.
Explicación de programación:
Una vez que todo está conectado según el diagrama del circuito, podemos encender el PI para escribir el programa en PYHTON.
Hablaremos de algunos comandos que usaremos en el programa PYHTON, Vamos a importar el archivo GPIO de la biblioteca, la siguiente función nos permite programar los pines GPIO de PI. También estamos cambiando el nombre de “GPIO” a “IO”, por lo que en el programa siempre que queramos referirnos a los pines GPIO usaremos la palabra 'IO'.
importar RPi.GPIO como IO
A veces, cuando los pines GPIO, que estamos tratando de usar, pueden estar realizando otras funciones. En ese caso, recibiremos advertencias mientras ejecutamos el programa. El siguiente comando le dice al PI que ignore las advertencias y continúe con el programa.
IO.setwarnings (falso)
Podemos referir los pines GPIO de PI, ya sea por el número de pin a bordo o por su número de función. Como 'PIN 29' en la placa es 'GPIO5'. Entonces decimos aquí o vamos a representar el pin aquí por '29' o '5'.
IO.setmode (IO.BCM)
Estamos configurando 8 pines GPIO como pines de salida, para pines de datos y control de LCD.
Configuración de IO (13, IO.OUT) Configuración de IO (6, IO.OUT) Configuración de IO (16, IO.OUT) Configuración de IO (20, IO.OUT) Configuración de IO (21, IO.OUT) Configuración de IO (19, IO.OUT) Configuración de IO (26, IO.OUT) Configuración de IO (12, IO.OUT)
En caso de que la condición entre llaves sea verdadera, las declaraciones dentro del ciclo se ejecutarán una vez. Entonces, si el bit0 del 'pin' de 8 bits es verdadero, el PIN13 será ALTO; de lo contrario, el PIN13 será BAJO. Tenemos ocho condiciones 'si si no' para bit0 a bit7, de modo que el LED apropiado, dentro de la pantalla de 7 segmentos, se puede hacer Alto o Bajo, para mostrar el Número correspondiente.
if (pin & 0x01 == 0x01): IO.output (13,1) else: IO.output (13,0)
Este comando ejecuta el ciclo 10 veces, aumentando x de 0 a 9.
para x en el rango (10):
El siguiente comando se usa como un ciclo para siempre, con este comando las declaraciones dentro de este ciclo se ejecutarán continuamente.
Mientras que 1:
Todas las demás funciones y comandos se han explicado en la sección "Código" a continuación con la ayuda de "Comentarios".
Después de escribir el programa y ejecutarlo, la Raspberry Pi activa los GPIO correspondientes para mostrar el dígito en la pantalla de 7 segmentos. El programa está escrito para que la pantalla cuente de 0 a 9 continuamente.