Nachdem ich ja so ziemlich alle Hürden genommen habe, um überhaupt mit dem ATmega16 klarzukommen, stehe ich schon wieder vor dem nächsten Problem. Ich möchte ein Text auf einem VFD-Display anzeigen lassen. Leider gibt es für mein Display kein Datenblatt M202SD01BA. Ich habe daher etwas gesucht und ein ähnliches gefunden. -> http://mitglied.lycos.de/projectsilence/m202sd08gk.pdf Die Beschaltung wird dann auch genauso sein, denke ich. Ich kann auch den Selbsttest laufen lassen. Allerdings kann ich den seriellen Modus nicht nutzen, da ich nicht weiss, welche Brücken ich wie löten muss. Aber das ist auch erst einmal egal, da ich den parallel ansprechen will. Aber nun zum eigentlichen Problem: Der Selbsttest läuft. Es ist ja nicht so kompliziert einfach nur ein Bit an- und abzuschalten. Aber sonst bekomme ich nichts auf dem Display zu sehen. Hier mal der Auszug aus meinem Code: .equ vfd_data = portc .equ vfd_ctrl = portd .equ vfd_wr_bit = 7 ;low active .equ vfd_sel_bit = 5 ;low active .equ vfd_test_bit = 4 ;low active .equ vfd_in = pind .equ vfd_busy_bit = 6 -> CUT <- rcall vfd_init rcall vfd_test -> CUT <- vfd_init: ldi r16,0b11111111 ;PortC auf Ausgang out ddrc,r16 ;setzen ldi r16,0b10110000 ;PortD auf Eingang/Ausgang out ddrd,r16 ;setzen cbi vfd_ctrl,vfd_wr_bit ;schreiben deaktivieren sbi vfd_ctrl,vfd_test_bit ;Display-Test beenden (low active) ret vfd_write: rcall vfd_enable ;Display aktivieren rcall vfd_waitbusy ;warten bis bereit ldi r16,'A' out vfd_data,r16 nop nop nop cbi vfd_ctrl,vfd_sel_bit ;Display anwählen (low active) nop nop nop sbi vfd_ctrl,vfd_wr_bit ;schreiben nop nop nop cbi vfd_ctrl,vfd_wr_bit ;schreiben beenden nop nop nop sbi vfd_ctrl,vfd_sel_bit ;Display abwählen (low active) ret vfd_waitbusy: sbic vfd_in,vfd_busy_bit rjmp vfd_waitbusy ret Etwas verwirren tut mich auch die Dokumentation. Das Timig-Diagramm sollte eigentlich alles anzeigen, was man braucht. Allerdings widerspricht sich das mit den Textpassagen ("The data or control command is to be written in at the rising edge of /WR(0->1), when /SEL= low "0".". Also muss /WR zu eins werden und die Daten werden übernommen. Im Timingdiagramm steht allerdings was von low. Aber ich habe schon beide Kombinationen probiert. Auf alle Fälle erscheint nach dem Displaytest nichts auf dem Display. Auch ein verlängern der Timings brachte nichts. Und 50ns, die mindestens anliegen soillen sind ja bei 8MHz schnell vorbei.
Habe dasselbe Display. Habe beim googlen ne Liste mit Anschlußbeispiel und Character Code etc gefunden. http://www.isk.kth.se/kursinfo/mekatronik/utrustning/kretsar/vfd/ Ist zwar Holländisch?Schweidsch?NOrwegisch?Dänisch? Aber: Man kann verstehen worums geht. Habe noch so ein riesen Vaku-Leucht-Display, wie es in Supermarktkassen für den Kunden gibt, für 5 Euro (!!!) die Dinger laufen mit 1200baud TTL-Pegel, das ist'n super DIng. Gruß, Carsten
Hi! Das Kassa-Display hast du für 5€ gekauft oder würdest es verkaufen? Ich möchte allerdings 3x je 6 Stellen anzeigen... lgp
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.