led matrix mit at90s8515 ansteuern

OP #510107
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;

}
Gast #510249
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
OP #510744
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.
Gast #510914
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

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.