Forum: Mikrocontroller und Digitale Elektronik Futaba VFD Ansteuerung mit Bascom


von Michael R. (Gast)


Angehängte Dateien:

Lesenswert?

Moinsen...

Ich versuche grade krampfhaft mit einem ATmega16 mein Futaba M402SD06GJ
anzusteuern... Das klappt auch so weit, nur hab ich das problem, das
alles mehrmals angezeigt wird - und das auch nicht konstant sondern mal
ein Buchstabe mehr oder einer weniger... habe meinen Sourcecode und das
Datenblatt mal angehängt...

Die aktuelle Ausgabe mit dem Sourcecode lautet:
"MMRRRRRRR       AAAAAAA"
Wie gesagt, es können auch mal 3M's sein oder aber 6 oder 8 R's,
Leerzeichen oder A's....

Schon jetzt besten Dank für eure Hilfe!

bye, Micha!

von Läubi (Gast)


Lesenswert?

Hast du auch nicht vergessen vor dem schreiben alles einmal auf GND zu
legen um die Anzeige der alten Buchstaben zu löschen?

von Michael R. (Gast)


Lesenswert?

Nein, habe ich nicht:

Portb = &B00000000
Portc.6 = 0
Portc.7 = 0

und das erste, was gesendet wird is reset (&B11111000)...

von Benedikt (Gast)


Lesenswert?

1. Frage: Wo hast du das her ? Ist das diese Version mit den ziemlich
langen Pins am Stecker ?
2. Wiso beschreibst du Busy ? Du must Busy auslesen. Hier mal meine
8051 Assembler Routine:

WriteByte:
jb Busy, hier    ;Busy gesetzt ? wenn ja warten
clr Sel          ;Sel\ aus Low
mov P1, Wert    ;Daten ausgeben
clr WR        ;WR\ aus Low
setb WR        ;WR\ aus High
setb Sel        ;Sel\ aus High
ret

von Michael R. (Gast)


Angehängte Dateien:

Lesenswert?

zu 1. ich hab das Display von ebay... wird da verscheuert zum normalen
anschließen an den PC und dann ansteuern über jalcds, lcdhype oder
lcdproc (sind so weit ich weiß die einzigen, für die es ne dll gibt,
für das VFD...)

weiß grade nicht, wie du das meinst - von daher Bilder auf der
Auktion:
http://maxitronik.blizzerver.de/ebay/2X40VFD/front.jpg
http://maxitronik.blizzerver.de/ebay/2X40VFD/back.jpg

zu 2. Hm... gute Frage... XD
Hab jetzt mal meine Funktion an deine Routine angepasst (neuer Source
im Anhang)... Allerdings kommt jetzt nur noch der reset an und garkeine
Buchstaben mehr... %)

von Benedikt (Gast)


Lesenswert?

zu 1: Ich fragte deshalb, weil Futaba bei einer Reihe VFDs die falschen
Kontaktleisten angelötet hat (ca. 2cm lange Pins, im Gegensat zu den
normalen (<1cm lang). Und daher hat Futaba diese billig verkauft. Ich
habe auch so ein Display. Was hat es denn gekostet ?

zu 2:
Ich kenne mich mit Bascom nicht aus, aber ist die Reihenfolge der Bits
so richtig ? Ich kenne eigentlich nur das MSB links und das LSB rechts,
also genau umgekehrt. So ist es zumindest bei vielen Assemblern und auch
bei den Taschenrechnern.
Ich sende als Initialisierung die Werte 20 und 18 um den Displaymode
einzustellen. Reset ist nicht notwendig.

von Michael R. (Gast)


Angehängte Dateien:

Lesenswert?

zu 1. nee, so eins iset net - die pins sind schon deutlich kürzer - hab
mit versand knapp 22€ bezahlt...

zu 2. die bits sollten jetzt stimmen - vorher kamm ja auch schon das
richtige dabei raus, aber ich hab nochmal geguckt, nu passt es auf alle
fälle... D0 vom VFD ist jetzt auf PB0 und D7 auf PB7... die anderen
3Pins (WR, Busy, Sel) sind ja im Quelltext beschrieben...

Allerdings darf ich beststellen, das das display jetzt nicht mehr
wirklich auf irgendwas reagiert... auch wenn ich das reset
auskommentiere, zeigt er nix an... also irgendwas passt jetzt nicht
mehr... %) Ich weiß nur nicht was... XD

von Benedikt (Gast)


Lesenswert?

22€ sind OK. Der normale Einkaufspreis liegt bei etwa 20-30€...

Die Software sollte jetzt eigentlich OK sein.
Ich habe dasselbe Display und bei mir läuft das so einwandfrei. Steht
auch genauso im Datenblatt.
Mess mal die Spannung am Busy Pin.
Wenn das Programm hängen bleibt, dann müsste dieser ja dauerhaft auf
High liegen. Und das draf eigentlich nicht sein, wenn das Display
läuft.

von Michael R. (Gast)


Lesenswert?

Das programm bleibt ja nicht hängen - habe ja das print mit drin und da
wird immer fleißig ausgegeben... nur auf dem Display tut sich nicht...
%)

Du kannst net zufällig mal dein *.hex anhängen und mir ein prog
verraten, mit dem ich die über den STK200/STK300 Programmer da
reinschieben kann? nur um mal zu gucken, ob mein Basecom code spinnt
oder einfach nur das Display bzw. mein testboard... Nicht das es an dem
RN-Control1.4 von liegt, auf dem ich das grade ausprobiere...

von Benedikt (Gast)


Lesenswert?

Häng mal den Test Pin (16) an Masse.
Dann sollte auf dem Display was erscheinen. Dann kannst du davon
ausgehen, dass das Display OK ist.

Mein Programm kann ich die gerne schicken, aber es hilft dir nicht
weiter, da es komplett in Assembler geschrieben ist und für einen
AT89C2051 ist.
Aber an sich ist außer dieser kurzen WriteByte Routine nichts
spezielles dran.
Damit sende ich die Buchstaben einfach ans Display, das diese dann auch
anzeigt.

von Michael R. (Gast)


Lesenswert?

Test funzt - da zeigt er die ganzen zeichen an... somit muss nur noch
irgendein bug in der blöden ansteuerung sein... XD

Nur warum zum Teufel hat er vorhin noch alles zu oft angezeigt und seit
dem meins so ist wie deins zeigt er nix mehr an... ich hab doch nix
geändert, sonnst... nochmalwiederdencodeanguck

Mist, stimmt ja... das is ja immer alles mehr oder weniger µC
bezogen... %)

von Michael R. (Gast)


Lesenswert?

Hier gibt's ja garkein edit... %)

gg ich habs... :D er hat probleme mit Pinc.* gehabt... hab jetzt
alles auf Portc.* augebaut und schon geht es... FREU

Nun noch eine kleine frage... gibt es eine einfachere möglichkeit den
string auf's display zu schreiben, als ihn von einer funktion in
buchstaben zerlegen zu lassen und für jeden buchstaben mit einem select
den entsprechenden hexwert rauszusuchen?

von RePi (Gast)


Lesenswert?

Hi,
bei Bascom gibt es den Befehl $LCDVFO.
Kann evtl. helfen.


Gruß RePi

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.