encender y apagar el LED usando el microcontrolador

-1

Soy nuevo en el microcontrolador y me confundo para resolver el siguiente problema:

Un chip ATmega32 está conectado a cuatro interruptores de encendido / apagado (SW0-SW3) y 4 LED (LED0-LED3). SWi está conectado a PAi. LEDi está conectado a PA (4 + i). ¿Cómo puedo codificar de tal manera que al encender un interruptor, se encienda el LED correspondiente? Por ejemplo, al activar SW1 se encenderá el LED1. Estoy confundido en la parte de que después de recibir información, ¿qué enviaré al puerto A ? Se pueden activar varios interruptores al mismo tiempo.

Para aclaraciones:

switch0 is connected to PA0
switch1 is connected to PA1
switch2 is connected to PA2
switch3 is connected to PA3

LED0 is connected to PA4
LED1 is connected to PA5
LED2 is connected to PA6
LED3 is connected to PA7
    
pregunta user4650623

2 respuestas

2

En el código, debe definir los puertos que reciben entrada como puertos de entrada y los otros como salida. Luego debe sondear cada interruptor y escribir el valor que recibe (0 o 1) en el LED correspondiente.

Tendrá problemas con los interruptores que rebotan, pero esa es una pregunta completamente diferente :)

    
respondido por el Code Gorilla
0

quizás algo como esto:

   LDI R1 240
   OUT DDRA R1
busyloop:
   IN   R1 PINA
   SWAP R1
   OR   15 R1
   OUT  PoRTA R1
   RJMP busyloop
    
respondido por el Jasen

Lea otras preguntas en las etiquetas