En este post os voy a mostrar como usar los puertos GPIO y un pequeño programa en Python para controlar de forma directa con la Raspberry Pi, un display de un dígito con siete segmentos. Aquí os dejo una imagen del que he usado yo (modelo SMA42056).
Como podéis ver el dispositivo dispone de 7 segmentos, más un punto en la parte inferior derecha, iluminados por led. Dispone de un total de 10 conexiones (5 en la parte superior y cinco en la inferior para hacerlo funcionar). Para este ejercicio vamos a necesitar, cables de conexión, 1 display de un dígito de 7 segmentos, 8 resistencias de 330 omnios y la RaspberryPi. Si sois nuevos en esto os aconsejo leer los anteriores posts (del uso de los GPIO en el apartado Programación/GPIO).
Vamos a ver como se distribuyen las conexiones del display en relación con los segmentos del mismo, lo mejor es que veáis la siguiente imagen
como podéis ver, el display tiene un total de 10 pines, el pin 3 y 8 son los pines del cátodo o ánodo común (según el tipo de display que tengamos que se identifican con la letra K), sería el pin de tierra. Los pines 1, 2, 4, 5 en la parte inferior y los pines 6, 7, 9 y 10 en la superior son los polos positivos de cada uno de los segmentos del display, aunque se llame display de 7 segmentos, en total hay 8, ya que hay que tener en cuenta el punto decimal (DP) en la parte inferior derecha. En la imagen podéis ver la correspondencia entre los pines y los segmentos.
En primer lugar vamos a ver como nos debe quedar nuestro circuito para poder controlar un display de un dígito. Aquí os dejo una imagen para que veáis la distribución que he usado, tened cuidado que en este ejercicio hay mucho cable.
si no habéis leído los anteriores post os recomiendo hacerlo (sobretodo el primero, en el que detallo el uso de las conexiones y hay un apartado al final sobre el uso de las resistencias, aquí está el link).
Bien, como podéis ver uso el pin número 3 (cable negro para tierra, etiquetado como GROUND) este cable hay que conectarlo a los pines K (superior e inferior) del display. El resto de cables salen de los GPIO y funcionarán como polo positivo. En el siguiente cuadro os muestro un resumen de las conexiones entre la RaspberryPi y el display
tened en cuenta que si usáis otro modelo de display las conexiones pueden se diferentes, consultad la documentación técnica para no equivocaros. Por otro lado es mejor que os aseguréis que en la pestaña Interfaces de la pantalla de Configuración de Raspberry Pi, no tengáis activado el SPI, el I2C, etc. ya que vamos a usar pines GPIO que pueden tener varias funciones al activarlos.
1. Distribución de las conexiones y los segmentos del display
Vamos a ver como se distribuyen las conexiones del display en relación con los segmentos del mismo, lo mejor es que veáis la siguiente imagen
como podéis ver, el display tiene un total de 10 pines, el pin 3 y 8 son los pines del cátodo o ánodo común (según el tipo de display que tengamos que se identifican con la letra K), sería el pin de tierra. Los pines 1, 2, 4, 5 en la parte inferior y los pines 6, 7, 9 y 10 en la superior son los polos positivos de cada uno de los segmentos del display, aunque se llame display de 7 segmentos, en total hay 8, ya que hay que tener en cuenta el punto decimal (DP) en la parte inferior derecha. En la imagen podéis ver la correspondencia entre los pines y los segmentos.
2. Organización del circuito
En primer lugar vamos a ver como nos debe quedar nuestro circuito para poder controlar un display de un dígito. Aquí os dejo una imagen para que veáis la distribución que he usado, tened cuidado que en este ejercicio hay mucho cable.
si no habéis leído los anteriores post os recomiendo hacerlo (sobretodo el primero, en el que detallo el uso de las conexiones y hay un apartado al final sobre el uso de las resistencias, aquí está el link).
Bien, como podéis ver uso el pin número 3 (cable negro para tierra, etiquetado como GROUND) este cable hay que conectarlo a los pines K (superior e inferior) del display. El resto de cables salen de los GPIO y funcionarán como polo positivo. En el siguiente cuadro os muestro un resumen de las conexiones entre la RaspberryPi y el display
| RaspberryPi | Cable | Display |
| GND | negro | K |
| GPIO14/TXD0 | rojo | a |
| GPIO15/RXD0 | gris | b |
| GPIO18/ | amarillo | c |
| GPIO23 | marrón | d |
| GPIO24 | verde | e |
| GPIO25 | naranja | f |
| GPIO8/SPICE0 | azul | g |
| GPIO7/SPICE1 | rosa | DP |
tened en cuenta que si usáis otro modelo de display las conexiones pueden se diferentes, consultad la documentación técnica para no equivocaros. Por otro lado es mejor que os aseguréis que en la pestaña Interfaces de la pantalla de Configuración de Raspberry Pi, no tengáis activado el SPI, el I2C, etc. ya que vamos a usar pines GPIO que pueden tener varias funciones al activarlos.









