Leds piscando com microcontrolador 8255 e 8051(89c51,89c52)

LED intermitentes con microcontrolador 8255 y 8051 (89c51,89c52)

Aquí hay un proyecto simple sobre cómo conectar el 8255 con el microcontrolador 8051 (89c51). El proyecto demuestra un programa de LED parpadeante simple. Los LED están conectados al puerto A del 8255. Cuando los cuatro bits inferiores del puerto A del 8255 están altos, los cuatro bits superiores están bajos. Los LED conectados al extremo superior permanecerán apagados y los del inferior se encenderán. Después de un cierto retraso, se cambian los bits y los LED superiores se encenderán y los inferiores se apagarán. Toda esta condición está funcionando continuamente. Hacer que la puerta A muerda hacia arriba y hacia abajo o encender y apagar los LED.

Si no está familiarizado con el periférico programable 8255, aquí tiene un buen tutorial .

  • PIN 8255 Y DESCRIPCIÓN DEL TRABAJO .

Te recomiendo tomar el tutorial porque si no estás familiarizado con el 8255, identifica su funcionamiento e inicialización. Por eso es muy difícil entender el código siguiente.

El circuito es muy fácil. Conecte el puerto 2 del 8051 con los pines de datos del 8255. Conecte a tierra los pines CS (selección de chip) y RESET del 8255. Conecte A0 con el puerto 1, pin 0 del microcontrolador 8051 y A1 con el puerto 1, pin 1. Conecte el pin WR (escritura) de 8255 con el puerto 3, pin 6. Conecte el pin RD (lectura) de 8255 con el puerto 3, pin 7. El diagrama del circuito se muestra a continuación.

Interfaz 8255 con microcontrolador 8051 (89c51,89c52)

Interfaz 8255 con microcontrolador 8051 (89c51,89c52)
Codificar es muy fácil si está completamente familiarizado con los microcontroladores de la serie 8051 (89c51,89c52), su programación y el funcionamiento de 8255 PPI. La función de retraso se utiliza para generar algún retraso. En la función principal, primero envié los puertos 2 y 3. Luego hice rd(read)=1. Hacer rd=1 significa que no quería leer nada del 8255. Entonces hice WR(write)=0, lo que significa que quiero escribir nada en el 8255. Entonces envío 0x80 a los pines de datos del 8255, es mi palabra de control. Establece todos los puertos A, B y C del 8255 como salida. Entonces seleccioné el registro de control porque la palabra de control siempre está escrita en el registro de control. Entonces, en un bucle while continuo, estoy haciendo que el puerto A mordisquee alto y bajo. Que alternativamente parpadea LED.

  • P2=0xF0 -> Realizar cuatro bocados superiores del puerto 8255 A alto y bajo bajo.
  • P2=0x0F -> Realizar cuatro bocados inferiores del puerto A del 8255 alto y superior bajo.

Estas dos condiciones superiores hacen que parezca que los LED parpadean. Los retrasos entre condiciones son muy importantes. Se utilizan para hacer que los LED permanezcan en ciertas condiciones durante algún tiempo, por ejemplo, 0xF0 debe permanecer en el puerto A durante algún tiempo y luego cambiar a 0x0F. Si no utiliza retrasos en estas dos condiciones, no podrá ver los LED parpadeando. El programa corre tan rápido que es muy difícil identificar lo que está pasando.

Puede cambiar el código según su deseo. Puede utilizar la pantalla LCD conectada al 8255 para mostrar lo que desee. Puede ampliar sus puertos conectando el microcontrolador 8255 al 8051 (89c51,89c52). Descargue los archivos del proyecto de Código (C++, HEX) compilados en keil u vision-3 y envíenos su opinión sobre el proyecto. Escriba sus preguntas a continuación en la sección de comentarios.
LED intermitentes con microcontrolador 8255 y 8051 (89c51,89c52)
Volver al blog

Deja un comentario

Los comentarios deben ser aprobados antes de su publicación.