Tabla de contenido:

Cronómetro con Pic18f4520 en Proteus con 7 segmentos: 6 pasos
Cronómetro con Pic18f4520 en Proteus con 7 segmentos: 6 pasos

Video: Cronómetro con Pic18f4520 en Proteus con 7 segmentos: 6 pasos

Video: Cronómetro con Pic18f4520 en Proteus con 7 segmentos: 6 pasos
Video: Cronometro con PIC16f877 y display 7 segmentos 2024, Noviembre
Anonim
Cronómetro con Pic18f4520 en Proteus con 7 segmentos
Cronómetro con Pic18f4520 en Proteus con 7 segmentos

Acabo de comenzar a trabajar con el controlador de imagen, uno de mis amigos me pidió que construyera un cronómetro a partir de él. Así que no tengo una imagen de hardware para compartir, he escrito un código y lo he simulado en el software Proteus.

aquí he compartido el esquema para el mismo.

se definen tres milisegundos, segundos, minutos variables

aquí hemos utilizado una interrupción del temporizador de 10 ms, por cada 1000 milisegundos, la variable de segundos aumentará, por cada 60 segundos la variable de minutos aumentará.

Paso 1: Cosas necesarias

1 controlador pic18f4520

2 pantallas de siete segmentos

3 transistores bc547

4 interruptores para inicio / parada / reinicio

5 resistencias 330E, 10K, 1K

6 descarga mikroC para una foto

7 descarga proteus

Paso 2: Lógica de código y visualización

Visualización y lógica de código
Visualización y lógica de código
Visualización y lógica de código
Visualización y lógica de código

¿Qué es una pantalla de siete segmentos? Una pantalla de siete segmentos (SSD) es una de las pantallas más comunes, económicas y fáciles de usar. Parece arriba.

aquí tenemos que usar el tipo de cátodo común de pantalla de 7 segmentos - En el SSD de tipo cátodo común, el terminal -ve de todos los LED se conecta comúnmente al pin "COM". Un segmento puede encenderse cuando se le da un "1" al segmento de LED respectivo y la tierra está conectada al común. Las partes internas se dan en la figura 2.

Paso 3: Pantalla de conducción con microcontrolador

Pantalla de conducción con microcontrolador
Pantalla de conducción con microcontrolador

En mi circuito, he usado el transistor NPN BC547.

Para el uso simple de un BJT como interruptor, las uniones emisor-colector se acortan cuando hay una señal de entrada en el terminal base; de lo contrario, permanece cortada. La entrada debe darse a través de una resistencia adecuada.

Paso 4: ¿Por qué multiplexar?

A menudo necesitamos usar dos, tres o más SSD y eso también usando solo una sola MCU, pero un problema al que nos enfrentamos es la falta de pines de E / S en la MCU, ya que una SSD tomaría 8 pines y, por lo tanto, tres SSD tomaría 24 pines. En la imagen 18, solo tenemos 48 pines de E / S. ¿Entonces, cuál es la solución?

Una posibilidad es que usemos una MCU más grande con más pines de E / S. Pero aún estamos restringidos a solo un máximo de 3 SSD que se pueden usar. Otra solución mucho mejor y recomendada para este problema es multiplexar las pantallas de siete segmentos.

Wikipedia dice: En las telecomunicaciones y las redes informáticas, la multiplexación (también conocida como muxing) es un método mediante el cual múltiples señales de mensajes analógicos o flujos de datos digitales se combinan en una sola señal a través de un medio compartido. El objetivo es compartir un recurso costoso. Lo que queremos decir con multiplexación de pantalla de siete segmentos es que usaremos solo 7 puertos de salida para mostrar la pantalla en todos los SSD.

Paso 5: ¿Cómo lograrlo?

Aquí, usaremos "Persistencia de la visión". Ahora ya debe haber cruzado este término antes. Sí, esta es la misma técnica que se usa en cinematografía (mostrar imágenes tan rápido que nuestro cerebro no puede distinguir ningún desfase entre dos imágenes consecutivas). De manera similar, cuando cambiamos más de un SSD, mostramos solo un SSD a la vez y cambiamos entre ellos tan rápido que nuestro cerebro no puede distinguirlos.

Digamos que cada pantalla está activa solo durante 5 milisegundos a la vez, es decir, se enciende 1 / 0.0045 veces por segundo, lo que equivale aproximadamente a 222 veces / segundo. Nuestros ojos no pueden sentir un cambio tan rápido y, por lo tanto, lo que vemos es que todas las pantallas funcionan simultáneamente. Lo que realmente está sucediendo en el hardware es que la MCU le da '1' al pin (recuerde, dando '1' a la base de un BJT cortocircuita la unión del colector y el emisor), que está conectado a la base del transistor de las respectivas pantallas, mantiene el puerto en 'ON' durante 5 milisegundos y luego lo apaga de nuevo. Este procedimiento se pone en un bucle sin fin, de modo que vemos la pantalla continuamente.

Paso 6: algoritmo de multiplexación

Algoritmo de multiplexación
Algoritmo de multiplexación

Defina dos puertos en el código, uno para el puerto de datos del segmento y el puerto de control del segmento.

El truco aquí es mostrar los datos en los 7 segmentos. y active el pin de control en el que tiene que mostrar esos datos. cambiar los datos y cambiar el pin de control.

aquí en este instructivo hemos utilizado multiplexación de 6 dígitos, simplemente revise el archivo c adjunto y lo aclarará.

Recomendado: