Hi allerseits,
ich hab da ein kleines Problem mit meiner LED Matrix. Ich habe versucht das ganze ähnlich wie beim LED Würfel 3x3x3 aufzubauen,
nur mit dem unterschied das ich hier eine 7x4 Matrix besitze. Ich dachte mir, wenn ich bei der Programmierung folgendes ändere:
$regfile = "attiny2313.dat"
$hwstack = 32
$swstack = 10
$framesize = 40
$crystal = 8000000 ' Achtung: Taktfrequenz per Fusebits auf 8 MHz einstellen!
'-------------------------------------------------------------------------------------------------
' Ports auf Ausgang setzen
'-------------------------------------------------------------------------------------------------
Ddrb = &B11111111
Ddrd = &B01111111
'-------------------------------------------------------------------------------------------------
' Variablen deklarieren
'-------------------------------------------------------------------------------------------------
Dim Bild As Word ' Aktuelle Bildnummer
Dim Maxbild As Word ' Nummer des letzten Bildes (=Zahl der Bilder in der Animation)
Dim Ebene As Byte ' Ebenen-ZŠhler
Dim Dauer As Byte ' Anzeigedauer des Bildes
Dim Temp As Word ' fŸr Berechnungen
Dim Offset As Word ' Position der zu holenden Daten
'-------------------------------------------------------------------------------------------------
' Hauptprogramm
'-------------------------------------------------------------------------------------------------
Do
Maxbild = Lookup(0 , Muster) ' Anzahl der gespeicherten Bilder holen
Maxbild = Maxbild - 1 ' 1 abziehen, da von 0 ab gezŠhlt wird
For Bild = 0 To Maxbild ' Bilder durchzŠhlen
For Dauer = 0 To 27 ' Dauer des Bildes, pro Durchlauf ca. 15 ms - also hier ca. 0,4 sek.
For Ebene = 0 To 3 <---- statt 2, 3 für 4 Zeilen ' 4 Zeilen durchmultiplexen
Offset = Bild * 6 ' Offset Berechnen, 6 Byte pro Bild
Temp = Ebene * 2 ' 2 Byte pro Ebene
Offset = Offset + Temp
Offset = Offset + 2 ' 1. Eintrag Ÿberspringen (Zahl der Bilder)
Portd = Lookup(offset , Muster) ' 1. Byte-Muster ausgeben
Offset = Offset + 1
Portb = Lookup(offset , Muster) ' 2. Byte-Muster ausgeben
Waitms 5 ' diese Ebene fŸr 5 ms anzeigen
Next Ebene
Next Dauer
Next Bild
Loop ' Programm von vorne beginnen
End
Alles anzeigen
und dem Muster folgendes anpasse:
Data &B01000000 , &B01111111 ' Bild 1
Data &B00100000 , &B01111111
Data &B00010000 , &B01111111
Data &B00001000 , &B01111111 <----- 4. Zeile
Sollte es normalerweise anstandslos funktionieren.
Die 4 Zeilen habe ich an PD6 - PD3 hängen
Und die Spalten an PB0 - PB6
Mit dem LED Würfel hat alles wunderbar funktioniert, nur hier bei der Matrix weiß ich leider nicht
wie ich das bei der Musterdatei mit der ersten Zeile:
Data 10% <-------siehe hier
Data &B01000000 , &B01111111 ' Bild 1
Data &B00100000 , &B01111111
Data &B00010000 , &B01111111
Data &B00001000 , &B01111111
berechne. Beim Würfel hab ich ja das Musterprogramm gehabt, dass das selbst gemacht hat. Nur
was nehme ich bei diesem Beispiel.
Ich habe in der Musterdatei 8 Bilder und das letzte fehlt immer.
Bin über jede Antwort dankbar.
Gruß