PC-Interface für I2C Bus

Im Unterforum Projekte im Selbstbau - Beschreibung: Selbstbau von Elektronik und Elektro

Elektronik Forum Nicht eingeloggt       Einloggen       Registrieren




[Registrieren]      --     [FAQ]      --     [ Einen Link auf Ihrer Homepage zum Forum]      --     [ Themen kostenlos per RSS in ihre Homepage einbauen]      --     [Einloggen]

Suchen


Serverzeit: 27 9 2024  21:53:01      TV   VCR Aufnahme   TFT   CRT-Monitor   Netzteile   LED-FAQ   Osziloskop-Schirmbilder            


Elektronik- und Elektroforum Forum Index   >>   Projekte im Selbstbau        Projekte im Selbstbau : Selbstbau von Elektronik und Elektro

Gehe zu Seite ( 1 | 2 Nächste Seite )      


Autor
PC-Interface für I2C Bus
Suche nach: i2c (576)

    







BID = 59377

SimonC

Gelegenheitsposter

Beiträge: 85
Wohnort: Hof
 

  


Hallo,

habe ein I2C-Interface nach folgender Vorlage http://www.the-starbearer.de/Praxis.....2.htm aufgebaut. auch diese Variante: http://home.welfen-netz.de/IngoGerlach/i2c_ser/i2c_seriell.html habe ich schon aufgebaut.
Auch verschiedene Serielle Treiber und Programme schon probiert.
Doch leider bekomme ich kein ACK-Signal vom Slave-IC...

An einer C-Control betrieben funktioniert der TDA8444 einwandfrei, jedoch nicht am PC-Interface...
lässt man das ACK-Signal weg funktioniert es an der C-Control immernoch, jedoch immer noch nicht am PC.

Habe die Pegeländerungen aus dem PC und der C-Control per Oszi verglichen, und sie sind identisch!

Sitz jetz seit nunmehr vier Tagen an dem Problem und komm kein Stück vorwärts!

Hat jemand eine Idee wo der Fehler liegen kann?

MfG

BID = 59392

Marc10k

Stammposter



Beiträge: 273
Wohnort: Erkelenz
Zur Homepage von Marc10k

 

  

Welches Betriebssystem hast du? Bei einigen Sachen die an der RS232 Schnittstelle angeklemmt werden gibt es manchmal Probleme mit den Version die nach Win98 gekommen sind. Dort ist der Zugriff auf die serielle Schnittstelle nicht mehr ganz so einfach.

Marcus

BID = 59450

SimonC

Gelegenheitsposter

Beiträge: 85
Wohnort: Hof

Ich denke nicht das es am COM-Treiber liegt, da ich ja ein Signal mit dem Oszi erkennen kann. Habe auch schon jede Pegeländerung, mit Stoppunkten im Progamm, nachgemessen und es kommt das selbe raus wie an der C-Control.

Kann es villeicht sein, das das Signal auf der DTR und RTS-Leitung nur gepullst sind, und der IC das irgendwie nicht mag..?

BID = 59520

Marc10k

Stammposter



Beiträge: 273
Wohnort: Erkelenz
Zur Homepage von Marc10k

Ich kenne die Software für den PC nicht aber vielleicht wird da irgendwas nicht eingehalten mit dem Timing. Oder die Start-Bedingung stimmt nicht. Vielleicht hast du im PC die falsche Adresse von IIC Chip eingeben und deshalb kommt kein Ack weil die Adresse nicht stimmt.

BID = 59617

SimonC

Gelegenheitsposter

Beiträge: 85
Wohnort: Hof

Habe das C-Control-Prog nur in Visual-Basic Befehle umgeschrieben... und an "RSCOM.DLL" angepasst...
Also dürfte es an der Adresse nicht liegen.
Das Timing ist ja bei I2C soweit ich weiß nicht wirklich entscheidend, da man auch nur alle Minute mal ein Signal übermitteln bräuchte...

Ich weis echt nicht mehr was ich noch testen soll!

Werde wahrscheinlich mal einen parallelen Adapter aufbauen. wenn der dann funzt müsste es tatsächlich an der DLL liegen...

Hat vielleicht irgendjemand einen Schaltplan von einem Parallel-I2C Adapter, der schon mit WIN2000 getestet wurde?

MfG

BID = 59618

Benedikt

Inventar

Beiträge: 6241

Ich hatte mal versucht eine Maus (ohne Treiber) in QBASIC abzufragen. An sich kein Problem, da die Maus das normale RS232 Protokoll verwendet. Auf meinem PC (Win98) lief alles einwandfrei. Unter WinXP bewege ich die Maus, nichts passiert. Nach einigen Sekunden bewegt sich dann der Zeiger.

Bei IIC ist das Timing nicht wirklich kritisch solange man man das Taktsignal auf <400kHz begrenzt, um sicher zu gehen auf <100kHz, also immer schön Pausen einfügen (wenn man ganz sicher gehen will, nach jeder Pegeländerung 1ms Pause).
Manche ICs besitzen aber einen Timeout, d.h. wenn man einigen Sekunden während der Übertragung keine Daten ankommen, brechen diese die Übertragung ab.
Dies ist häufig nicht im Datenblatt erwähnt.
So z.B. der HD44780 LCD Controller im 4bit Modus.
Wenn man den ersten 4 bits nicht innerhalb einer bestimmten Zeit die zweiten 4bit folgen, bricht er die Übertragung ab.
Nirgends im Datenblatt erwähnt, aber sinnvoll.

BID = 59627

SimonC

Gelegenheitsposter

Beiträge: 85
Wohnort: Hof

Hab schon mit "Full-Speed" und auch mit Bremse probiert. Nichts zu machen.
Kann man irgendwie messen ob der I2C-Slave das Ack-Signal sendet oder ob der sich gar nicht angesprochen fühlt?
Wielang produziert der IC den "ACK-Pull-Down"?
Also wenn ich die SDA-Leitung während des Wartens kurz nach Masse klemme sendet das Prog das nächste Byte...

BID = 59634

Benedikt

Inventar

Beiträge: 6241

Häng mal die Eingänge der Soundkarte an SDA und SCL (über einen Spannungsteiler aus etwa 47k und 1-10k)
Nimm die Signale mit einem Audiobearbeitungsprogramm (oder hiermit: http://www.sumuller.de/audiotester)auf und schau sie dir an , dann siehst du wird ob die Daten richtig übertragen werden.

BID = 59647

SimonC

Gelegenheitsposter

Beiträge: 85
Wohnort: Hof

Gute Idee!
Werde ich später mal testen...
Den 47K nach SDA bzw. SCL und den 10k nach Masse oder?
Wieviel Spannung verträgt die Soundkarte maximal? Sin das ca. 1V oder?

BID = 59652

Benedikt

Inventar

Beiträge: 6241

Die Eingangspegel sind je nach Soundkarte unterschiedlich.
Bei +/-1V dürfte nichts passieren. Es kann zwar sein, dass die Sounkarte übersteuert, aber beschädigt wird nichts.
Bei Spannungen >+/-2V können manche Soundkarten beschädigt werden.

BID = 59718

SimonC

Gelegenheitsposter

Beiträge: 85
Wohnort: Hof

Naja, so toll funktioniert des nicht! Das gibt immer nur kurze Peaks, wenn eine Gleichspannung anliegt, da ja wahrscheinlich ein Koppelkondensator in der Soundkarte is... also der AD-Wandler nicht direkt mit dem Eingang verbunden ist, und somit Gleichspannungen herausfiltert...!
Und dann kann ich gleich des Oszi nehmen, da erkennt ma zumindest was los ist...

Jetz bin ich mal wieder genausoweit wie vorher! Null Ahnung, null Plan und
Ich glaub des wird mal wieder ne Platine zum wegschmeißen und schnell nimmer drandenken...

BID = 59732

tixiv

Schreibmaschine



Beiträge: 1492
Wohnort: Gelsenkirchen

Hast Du denn ein Speicheroszi?
Mir fallen da nur wenige Dinge ein, die da falsch alufen könnten:
-Irgend eine Verbindung fehlt (ist die Masse durchverbunden?)
-SDA und SCK sind vertauscht
-Die Pegel stimmen nicht (aber die hast Du ja schon geprüft)
-Das Timing stimmt nicht (müsste man ja mit nem Speicheroszi oder der Soundkarte finden können)

Die Sache mit der Soundkarte funktioniert meist bei Signalen in diesem Frequenzbereich. Ist ne ganz tolle Sache, weil das wie ein 2 Kanal Speicheroszi wirkt. Du wirst nicht unbedingt ganz grade Rechteckkurven sehen, aber es sollte reichen um high von low zu unterscheiden.

BID = 59814

SimonC

Gelegenheitsposter

Beiträge: 85
Wohnort: Hof

Nein, ich habe leider kein Speicheroszi, deshalb bin ich ja auch mit Stopppunkten im Programm vorgegangen, und hab mir dann jede Pegeländerung notiert! Das selbe mit der C-Control. Und es kam dasselbe raus!
Mit der Soundkarte ist wohl irgendetwas falsch gelaufen, ich seh da nur kurze Spizen, aber high-low kann ma net wirklich unterscheiden. werde mich aber nocheinmal damit beschäftigen...
Masse habe ich natürlich angeklemmt!

Was mich etwas verwundert ist das man an den Ausgängen des TDA8444 mit dem Oszi das Signal des I2C-Bus sehen kann! Da kann doch etwas nicht in Ordnung sein!

BID = 59816

Benedikt

Inventar

Beiträge: 6241

Mess mal die Spannung zwischen Pin 1 und Pin 8 direkt am IC !

BID = 60146

SimonC

Gelegenheitsposter

Beiträge: 85
Wohnort: Hof

So, hab gestern nochmal ein wenig rumprobiert. Doch funktionieren tuts immer noch nicht! :cry:
Habe das mit der Soundkarte einigermasen hinbekommen...
Jetz ist mir aufgefallen, das das eine mal der Ausschlag nach oben erfolgt, des andere mal nach unten... und wenn ich Hi/Lo am PC im Prog tausche kommt das gleiche raus wie an der C-Control nur andersrum?? Das wo C-Control dransteht funktioniert, deswegen gehts nachm ACK weiter...
Ich weiß damit leider nix anzufangen! Muss ich irgendwelche anschlüsse vertauschen? 0-Potential anders legen? oder wie oder was?
Bitte mal das Bild ansehen!

Danke schon mal für Eure Überlegungen!




      Nächste Seite
Gehe zu Seite ( 1 | 2 Nächste Seite )
Zurück zur Seite 0 im Unterforum          Vorheriges Thema Nächstes Thema 


Zum Ersatzteileshop


Bezeichnungen von Produkten, Abbildungen und Logos , die in diesem Forum oder im Shop verwendet werden, sind Eigentum des entsprechenden Herstellers oder Besitzers. Diese dienen lediglich zur Identifikation!
Impressum       Datenschutz       Copyright © Baldur Brock Fernsehtechnik und Versand Ersatzteile in Heilbronn Deutschland       

gerechnet auf die letzten 30 Tage haben wir 16 Beiträge im Durchschnitt pro Tag       heute wurden bisher 13 Beiträge verfasst
© x sparkkelsputz        Besucher : 182085086   Heute : 5718    Gestern : 5794    Online : 733        27.9.2024    21:53
0 Besucher in den letzten 60 Sekunden         ---- logout ----viewtopic ---- logout ----
xcvb ycvb
0.042543888092