Forum: Mikrocontroller und Digitale Elektronik Atmega8 zieht SCL permanent auf low


von Steven Z. (steven84)


Angehängte Dateien:

Lesenswert?

Hallo liebe MicKo-Gemeinde,

ich bin langsam am verzweifeln. Ich woll einen QT1070 per I2C ansteuern 
und habe mir die Lib von Peter Fleury zu nutze gemacht. Nach dem flashen 
des Mic zieht mit dieser permanent die SCL leitung auf LOW. Wenn ich den 
MIC erase geht dieser wieder auf high level da ich ein 4k7 Pullup 
verwende und sobald das Prog geflasht ist zieht der mir die Leitung 
wieder auf Low... :( hat jemand eine zündende Idee? Anbei der Code...

Vielen dank schon mal !

VG

Steven

von spess53 (Gast)


Lesenswert?

Hi

>#define qtouch  0x1B

Ohne das Datenblatt gelesen zu haben: Das ist mit Sicherheit die falsche 
Adresse. Probiere mal 0x36 (0x1b<<1).

Eine Adresse die du mit i2c_start_wait (qtouch+I2C_WRITE); muss immer 
eine gerade Zahl sein.

MfG Spess

von Michael (Gast)


Lesenswert?

spess53 schrieb:
> Ohne das Datenblatt gelesen zu haben: Das ist mit Sicherheit die falsche
> Adresse. Probiere mal 0x36 (0x1b<<1).
>
> Eine Adresse die du mit i2c_start_wait (qtouch+I2C_WRITE); muss immer
> eine gerade Zahl sein.

0x1b ist schon die richtige Adresse. Das erste Byte bei I2C setzt sich 
allerdings aus Adresse und RW-Bit zusammen. Und wenn man Adresse und 
Adressierungsbyte - oder wie auch immer das richtig heißt - nicht 
auseinander hält, passt es halt nicht zusammen.

von spess53 (Gast)


Lesenswert?

Hi

>0x1b ist schon die richtige Adresse. Das erste Byte bei I2C setzt sich
>allerdings aus Adresse und RW-Bit zusammen. Und wenn man Adresse und
>Adressierungsbyte - oder wie auch immer das richtig heißt - nicht
>auseinander hält, passt es halt nicht zusammen.

Ist mir schon bekannt. 0x1B sind die oberen 7 Bit der Adresse. Bit0 muss 
zum Schreiben Null und zum Lesen Eins sein. Leider sind die 
Adressabgaben in den Datenblättern nicht einheitlich. Mal ist Bit0 in 
der Adressangabe enthalten  mal nicht. Im letzteren Fall muss die 
Adresse um ein Bit nach links geschoben werden.

MfG Spess

von Steven Z. (steven84)


Lesenswert?

Hallo, also

> Ohne das Datenblatt gelesen zu haben: Das ist mit Sicherheit die falsche
> Adresse. Probiere mal 0x36 (0x1b<<1).

is nie ganzn richtig das Datenblatt war eine Zeitlang meine Bettlektüre 
^^.
Aber wenn man es noch nicht gemacht hat....naja ihr kennt das ja mit dem 
kalten Wasser ;).

Habs natürlich gleich mal ausprobiert und siehe da es geht einfach nur 
:D .

Jungs vielen Dank ihr habt mir viel Nerven erspart.

DICKES DANKESCHÖN ;)

VG

Steven

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.