Schalten mit AT90S8535

Gast #98482
Lesenswert?

Hallo
ich suche einen code mit dem ich beim 90S8535 die A- und B-Ports als
eingang für taster nehmen kann und die C- und D-Ports als ausgang für
LEDs. Das ganze sollte dann so funktionieren:

ich drücke (z.b.)taste 1 an port A
LED 1 an port C leuchtet
ich drücke dann taste 1 an port B
LED 1 geht aus und LED 2 geht an

und das mit allen ports

Wenn jemand ne idee hat wie ich das machen kann, bitte posten#

Vielen Dank
#98483
Lesenswert?

Du must erstmal aufschreiben, was Du eigentlich machen willst.
Erst dann kannst Du oder ein anderer erkennen, wie das zu programmieren
ist.

Die paar Zeilen sind jedenfalls hoffnungslos unterbestimmt, damit kann
keiner was anfangen. Am besten wäre ein PAP (Programmablaufplan).

Einfacher wirds, wenn man erstmal festlegt, welche LEDs und Tasten
funktional zusammen gehören und wieviele dieser Funktionseinheiten dann
parallel arbeiten müssen.


Peter
Gast #98484
Lesenswert?

BYTE ia,ib;

   DDRA = 0xff;  //in
   DDRB = 0xff;  //in

   DDRC = 0x00;  //out
   PORTC = 0xff;
   DDRD = 0x00;  //out
   PORTD = 0xff;

   ia = 0xff;
   ib = 0xff;

   while (1) {
     if (ia != PINA) { PORTC = PINA; ia = PINA;}
     if (ib != PINB) { PORTD = PINB; ib = PINB;}
   }

   damit du auch noch was hast darfst du jetzt die tasten entprellen.
  viel spass :)
Gast #98487
Lesenswert?

Hier habe ich mal meine Vorstellung aufgeschrieben, wie das gehen soll
:

PORT A  PORT C

Taster 0  LED 0
.  .
.  .
Taster 7  LED 7


PORTB  PORT D

Taster 0  LED 0
.  .
.  .
Taster 7  LED 7

Es gibt 2 Blocks mit 8 Tastern
und 2 Blocks mit 8 LEDs

Wenn ich einen Taster an PortA drücke, soll die entsprechende LED an
PortC leuchten. Und zwar solange bis ich den entsprechenden Taster an
PortB drücke. Dann leuchtet die entsprechende LED an PortD und die LED
an PORTC erlischt.

Beispiel:

Ich drücke Taster0 an PORT A -> LED 0 an PORTC leuchtet (und leuchtet
weiter wenn ich den taster loslasse)

Ich drücke Taster0 an PORT B -> LED0 an PORTC erlischt und LED0 an PORT
D leuchtet (und leuchtet weiter wenn ich den taster loslasse)

das ganze dann für die anderen 7 Taster

Ich hoffe das ist verständlich wenn nicht dann bitte schreiben.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren