Forum: Mikrocontroller und Digitale Elektronik led matrix mit at90s8515 ansteuern


von Felix M. (f3lix)


Lesenswert?

Hallo,
ich versuche eine LED matrix mit einem at90s8515 anzusteuern. Auf der 
STK500 klappt alles wunderbar. wenn ich jedoch den controller in meine 
schaltung einbaue http://ita14.wbb2host.de/files/led-matrix.png leuchtet 
nicht eine LED.

ich habe schon viel versucht. Ports umgekehrt, kabel anders gesteckt 
etc. doch es hilft nichts. wo ist der unterschied von meiner schaltung 
zur stk500? habe ich einen schaltfehler?

leider bin ich neuling wenn es um elektronik geht.

Danke für Hilfe


hier mein testcode:

int main(){
     DDRB  = 0xff;
     DDRD  = 0xff;
     PORTB=0xff;
     PORTD=0x00;

}

von Matthias (Gast)


Lesenswert?

1) Wie sieht denn das Ergebnis auf dem STK500 aus???
2) poste mal die MAtrix-Schaltung.
3) Was macht das Programm, nach dem Befehl PORTD = 0x00 ??

von remo (Gast)


Lesenswert?

Ich interpretiere dein Schaltplanfragment mal so:
an PBx sind die LED Kathoden und an PDx die Anoden angeschlossen.
Das ist bei einem 8515 nicht gerade der Hit, weil er nur 10mA gegen 
high, sehrwohl aber 20mA gegen low treiben kann. Aber das ist nicht der 
Grund warum bei dir nix leuchtet.

Du musst entwerde die Levelzuweisung 0x00 und 0xFF zwischen den Ports 
vertauschen, oder die LED andersherum polen.

Auf dem STK500 hast du eine inverse Logik, sprich Port = 0, dann 
leuchtet die entsprechende LED. Und beim STK500 sind die LEDs nicht 
zwischen Ports geschlatet.

Besser ist, du fügst späterneine Transistorstufe für den high pegel ein, 
aber bring erstmal die LEDs zum "glimmen" den Rest kannst du danach 
machen.

Viel Spass
Remo

von Felix M. (f3lix)


Lesenswert?

remo deshalb habe ich extra geschrieben, dass ich die Ports schon 
getauscht habe. Es funktioniert auch nicht anders herum. richtig, die 
leds glimmen nur aber das tun sie auf der stk500 hell genug.

1) Das ergebnis auf der stk500 ist so wie ich es haben will. habe auch 
schon
ein spiel programmiert etc. wo man mit tastendruck herunterkommenden
steinen ausweichen muss. in dem code beispiel oben leuchten alle LEDs 
auf der Matrix

2) die leds sind über einen widerstand mit jeweils an 1 anode und 1 
kathode
verbunden. die leiter sind überkreuz. ich kann euch versichern, dass 
damit
auch alles stimmt.

3) Das ist ehrlich gesagt eine gute frage, der ich mal nachgehen werde^^ 
am besten mit einer for(;;) schleife ;) trotzdem gehe ich nicht davon 
aus, dass da der fehler ist oder doch? die wahrscheinlichkeit ist doch 
sehr gering, dass das programm beim "herumtollen" dann den PORTB/D 
ändern... ich sage bescheid, wenn es daran lag


Ich habe mich bei dem schaltplan mit der LED matrix ein bisschen vertan.
Der strom soll von PORTB über die leds in PORTD fließen.

von remo (Gast)


Lesenswert?

Noch ne andere Idee:
Was isn mit dem Takt?
Beim STK500 wird der Controller ja mit einem externen Taktsignal 
versorgt.
In dienem Schltplan sehe ich keinen Takt, hast du den etwa in deinem 
Design vergessen? Dann wärs klar warum sich nix tut.

ciao
Remo

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.