Seite 1 von 1

Taster prgrammieren (LED 2 Leuchtet dauerhaft)

Verfasst: Sa Dez 03, 2011 6:47 pm
von smirnoffice85
hi zusammen,
ich hab ein kleines problem mit einem "Anfänger Programm"

ich habe 2 oder Verknüpfungen sprich 4 taster, jede oder Verknüpfung soll eine LED einschalten bzw Tasten.

Danach sollen wir das programm umbauen so das beide taster 1 sein müssen das die LED leuchtet und nochmal umbauen mit exklusiv oder.

Ich habe auch schon es mit 2 unterschiedlichen Ports probiert, hat leider auch nicht funktioniert.

Please Help :-)

Code: Alles auswählen

#include <avr/io.h>

#include <util/delay.h>

int main ()
{
  DDRB = 0xF0; // bit 7 bis bit 4 als Ausgang
  PORTB |= 0x0F; // Pull up widerstände setzen


  while (1)
  {
    char _inData = PINB;
    char e0 = (_inData & (1 << PB0)) > 0;
    char e1 = (_inData & (1 << PB1)) > 0;
    char q  = e0 & e1;
    if (q)
    {
      PORTB |= (1 << PB7);
    }
    else 
    {
      PORTB &= ~(1<< PB7);
    }
  }
  {
    char _inData = PINB;
    char e3 = (_inData & (1 << PB2)) > 0;
    char e4 = (_inData & (1 << PB3)) > 0;
    char q  = e3 & e4;
    if (q)
    {
      PORTB |= (1 << PB6);
    }
    else 
    {
      PORTB &= ~(1<< PB6);
    }
  }
}
Edit by Xin: CodeTags und Einrückung

Re: Taster prgrammieren (LED 2 Leuchtet dauerhaft)

Verfasst: Sa Dez 03, 2011 8:00 pm
von Xin
Ich habe keine Ahnung von dem ACR-Controller, aber Stellen mit sehen für mich in der Regel sehr verdächtig aus ^^

Re: Taster prgrammieren (LED 2 Leuchtet dauerhaft)

Verfasst: So Dez 04, 2011 12:58 pm
von MoonGuy
Xin hat geschrieben:Ich habe keine Ahnung von dem ACR-Controller, aber Stellen mit sehen für mich in der Regel sehr verdächtig aus ^^
Dito. Der untere Code ist nicht mehr im infinite-loop. Allerdings finde ich, dass bei manchen Programmen sich das Unterteilen in Blöcke ohne if/else/for/while/do lohnt (Wollen wir hier eine Debatte lostreten ;))