Hallo,
ich bin Techniker von Beruf und arbeite mich in die Matrixprogrammierung
ein, und zwar von ganz unten :-)
Kann mir einer mal so grob sagen, wie die angehängte Matrix programmiert
wird, zb in welcher Sprache und über welches Programm?
Gerne nehme ich auch Vorschläge über andere Schaltungen entgegen, wenn
jemand damit mehr Erfahrungen gemacht hat...
Gruß
Andreas
Motto: Es gibt nichts, was ich nicht kann-und wenn doch, dann wirds
gelernt !
>> Kann mir einer mal so grob sagen, wie die angehängte Matrix programmiert> wird, zb in welcher Sprache und über welches Programm?
Diese Matrix wird ueberhauptnicht programmiert....kein einziger
programmierbarer Baustein wurde verwendet.
Die matrix wird nur - wie der Name schon sagt - per Parallelport
angesteuert.
gruss
Michael
Ach....und wie DU den Parallelport steuerst, ist vollkommen Dir
ueberlassen und haengt evtl. von Deinem Betriebssystem, Deiner
bevorzugten Programmiersprache, Deinen Kenntnissen etc. ab.
Gruss
Michael
Die Schaltung ist an und für sich ganz nett.
Man schliesst sie an den LPT Parallelport eines PC an,
und steuert sie einfach in dem man auf diesen Drucker "druckt".
Sie verhält sich wie ein Drucker, jedoch ohne Zeichencodierung,
die muss man selber codieren (kann dafür jeden Pixel graphisch
ansteuern).
Du hast 5 verschiedene Speicher,
1 bis 4 speichern je 4 bit die zusammen 16 LEDs einer Zeile ergeben.
5 sagt auf welcher Zeile des Displays DIESE Zeile erscheinen soll.
Unter BASIC allgemein:
LPRINT#1 chr$(register*16+daten)
Register wird 0..4 sein, Daten 0..15 = 0000..1111.
LPRINT#1 chr(0*16+1);chr(1*16+15);chr(2*16+9);chr(3*16+3);chr(1*16+15)
lässt auf der ersten Zeile *ooo*****oo*oo** aufleuchten.
Dann muss man schnell die zweite Zeile "ausdrucken" damit der Eindruck
eines kompletten Bildes entsteht und nicht nur die 1. Zeile kurz
leuchtet.
Zudem zeigt diese Schaltung, daß man schon vor vielen vielen Jahren
wenigstens so klug war, ausreichend Spannung und ausreichende
Stromverstärkung zu verwenden, damit die Displays auch die LEDs mit
Nennstrom betreiben können. Lider wird wohl der zulässige Spitzenstrom
der LEDs und Ubereverse der Transistoren überschritten.
Im Schaltplan ist Anschluss 6 IC2 falsch an Anschluss 3 Nand1.
Vermutlich gehört er an Anschluss 2.
Hallo Leute,
bin voll begeistert über so viel Resonanz innerhalb so kurzer Zeit.
Dafür erst mal ein grosse DANKESCHÖN.
Die Schaltung wird nicht programmiert, sondern von einem PC gesteuert,
das ist vollkommen richtig.
Es sind 256 LEDs und (bitte korrigiert mich, wenn ich mich irre) man
benötigt einen Assembler, der eine halbwegs verständliche Sprache, wie
zum Beispiel Basic, in 8bit-Wörter umwandelt und diese an den
Parallel-Port sendet. Gibt es so ein Programm? Und wenn ja, wie sehen
die Befehle aus? Man muss wahrscheinlich eingeben, welches LED gerade
leuchten soll, wie lange es leuchten soll. Wie wäre die Syntax dafür?
Kann mir irgendeiner ein bereits programmiertes File schicken, aus dem
ich ersehen kann, wie es funktioniert? Habe früher als Jugendlicher in
Basic auf dem C64 programmiert, ist aber schon lange her. Ich baue eine
Modellkrake (das Karussel) und benötige diese LED-Matrix für den
Krakeschriftzug. Ich habe bereits versucht, die verschiedenen Effekte
mit Flip-Flops und ähnlichem nachzustellen, aber für 3 oder 4 Effekte
benötigt man einen erheblichen Schaltungsaufwand. Das will ich mit
dieser Matrix umgehen. Bin über jeden Ratschlag dankbar.
Gruß
Andreas
Andreas schrieb:> Basic auf dem C64 programmiert, ist aber schon lange her. Ich baue eine> Modellkrake (das Karussel) und benötige diese LED-Matrix für den> Krakeschriftzug.
Dir ist aber schon klar, dass du dann neben deinen Kraken einen PC
postieren musst?
Und für den Rest deiner Fragen:
Besorg dir in der nächsten Buchhandlung ein Lehrbuch für die
Programmiersprache deiner Wahl. Auch du wirst erst mal von der Pieke auf
programmieren lernen müssen, ehe das mit deiner Anzeige was wird.
Hi,
ok, wenn es einfach nur so ist, das man zB in Basic eine Routine
schreibt, die den Druckerport anspricht, werde ich mich wohl wieder mit
Basic vertraut machen müssen. Allerdings kenn ich dann immer noch nicht
die Syntax, mit der eine bestimmte LED angesprochen wird. Da gibts noch
Klärungsbedarf.
Gruß
Andreas
Hi MaWin,
bitte erkläre mir die Bedeutungen der einzelnen Befehle.
LPRINT#1 chr$(register*16+daten)
Was bewirkt die obenstehende Zeile?
LPRINT#1 chr(0*16+1);chr(1*16+15);chr(2*16+9);chr(3*16+3);chr(1*16+15)
Kannst Du mir die Wirkung dieser Befehle beschreiben, damit ich erst
einmal grundsätzlich verstehe, was da passiert?
Gruß
Andreas
> bitte erkläre mir die Bedeutungen der einzelnen Befehle.> LPRINT#1 chr$(register*16+daten);
Das IST die Erklärung.
Ich kann dir doch nicht dein Programm hier schreiben.
Ein uC ist sicherlich später mal eine denkbare Alternative zum
Uralt-Laptop, aber erst einmal muß ich es realisieren können...:-))
@MaWin: Ich will nicht, daß du mir hier ein Programm schreibst, ich
wollte lediglich wissen, mit welchem Befehl du eine ganz bestimmte LED
ansprichst.
Dann kann ich den Rest alleine machen.
(0*16+1): Kannst du mir das einzeln vermitteln? 0 ist wahrscheinlich das
Register, 16 die Anzahl der LEDs im Register?? und die 1 ??
Nimms mir nicht übel, ich will doch nur lernen...:-))
Hallo nochmal,
mein Layout macht grosse Fortschritte, allerdings ist mir da etwas
unklar. Bei dem IC4508 sind Verbindungen zwischen den Pins 5 und 16, 7
und 18, 9 und 20 und 11 und 22. Sind die im IC schon verbunden oder muss
das auf der Platine passieren.
Gruß
Andreas