Hi,
ich versuche, einen SAA1064 in Betrieb zu nehmen, kann ihn aber nicht
dazu bringen, irgendeinen der Outputs anzuschalten.
Der Test-Code ist denkbar einfach:
1 | import smbus
|
2 | bus = smbus.SMBus(0)
|
3 | addr = 0x38
|
4 | bus.write_byte_data(addr, 0x00, 0b00111110)
|
Das sollte den Display Test-Modus mit 9mA Strom anschalten. Das Kommando
wird vom SAA1064 mit einem ACK bestätigt und der Bus sieht auch sauber
aus auf dem Oszilloskop. Trotzdem bleiben alle Outputs auf Low.
Was mich total verwirrt ist dass der Chip auf 0x38 antwortet. Ich habe
den Addr-Pin mit GND verbunden, im Datenblatt steht dann, dass die
Adresse 0x70 sein sollte. Ist aber nicht so -- in i2cdetect taucht nur
0x38 auf. An anderen Stellen im Internet verwenden Leute 0x3b, 0x38 habe
ich nirgends gesehen.
Ich habe auch das Status-Register ausgelesen, das scheint ebenfalls zu
funktionieren -- es sollte eine 1 drin stehen wenn man den Strom
ausgeschaltet hat seit dem letzten Lesen, sonst nur Nullen, was der Fall
ist.
Die Spannungsversorgung sind gut 5V, der I2C-Bus hat allerdings Pullups
auf 3.4V. Da das aber über dem 3V-High-Pegel aus dem Datenblatt liegt
und der Chip ja auch antwortet, denke ich nicht, dass das das Problem
ist.
Hat jemand Tipps für die Fehlersuche?
Danke und viele Grüße,
Sven