Hallo zusammen, ich möchte gerne 12 7-Segementanzeigen über den SAA 1064 im Multiplexbetrieb mittels I2C ansteuern. Um dies umzusetzen habe ich mir eine kleine Routine geschrieben,um dies auszutesten. Leider bin ich nun an einem toten Punkt angelangt. Ich kann den Baustein ansprechen und wenn ich ins Statusregister die Werte für den Segmenttest lade, dann leuchten auch alle Segmente. Wenn ich das Datenblatt richtig interprediere, dann muß ich zuerst den Baustein initialisieren, das mache ich so: I2cstart I2cwbyte Adresse_car12 'Adresse des ersten Bausteins I2cwbyte Statusregister 'Statusregister ansprechen I2cwbyte Modusbyte 'Betriebsmodus &B00110111 I2cstop Danach rufe ich eine Subroutine in einer Endlosschleif auf, die die Daten zum Baustein übertragen soll - mit Waitsteps. Sub I2c_write(byval Adr As Byte , Byval A_data As Byte , Byval B_data As Byte , Byval C_data As Byte , Byval D_data As Byte) I2cstart I2cwbyte Adr 'Daten schreiben I2cwbyte A_data I2cwbyte B_data I2cwbyte C_data I2cwbyte D_data I2cstop Waitms 10 End Sub Kann mir jemand eine Tipp geben was ich dabei falsch mache - die Anzeigen bleiben Dunkel, ganz egal was ich da rausschreibe. lg. gerhard
Hallo Gerhard, vielleicht hilft Dir diese Seite weiter: http://www.cc2net.de/Module/module.html --------------------------------------- saa1064.zip V1.0 Gemeinsames Modul André Helbig 11.01.2004 Treiber für SAA1064 4-Digit 7Segment-I²C-Bus-Baustein und CCTools I2C-7Seg4 Features: - Ausgabe bis zu 8stelliger Zahlen in Dezimal und Hexadezimal - Ausgabe einzelener Ziffern - Ausgabe selbstdefinierter Zeichen - Verwendung des SAA1064 als 16Bit-Portexpander --------------------------------------- Gruss Klaus
Hallo, bei mir funzt folgendes: I2cstart I2cwbyte 112 'Schreibadresse SAA1064 (7 SegmentTreiber) I2cwbyte 0 'Adresszähler auf 0 (Control Register) I2cwbyte &B00010111 'schreibe Control Register () I2cwbyte 63 '4te Ziffer I2cwbyte 6 '3te Ziffer I2cwbyte 91 '2te Ziffer I2cwbyte 79 '1te Ziffer Gruß Stefan
Dank für euer Input, anbei mein Testprogramm mit dem es funktioniert. Es werden zuerst die Zahlen 0,1,2,3 angezeigt und anschließend in einer schleife die Hex -Zahlen durchgezählt. lg. gerhard
Hallo Zusammen, an dieser Stelle vielen Dank für die hilfreichen Erklärungen. Damit habe ich mein Thema in dieser Angelegenheit ebenfalls lösen können. - Ich nutze einen AT-Mega 162 und baue zur Zeit eine 3-stellige Programmanzeige für meine MIDI-Steuerung. Fröhliche Weihnachten und gute Zeit Franz-Juergen
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.