PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : I2C Problem mit RN-Control128Funk



Lorenz86
18.04.2009, 21:57
Hallo Zusammen
Ich habe folgendes Problem:
Ich möchte an meinem Rn-Control128Funk den ServoController SD21 anschliessen. Das Problem ist nun, dass ich auf der SCL Leitung (Portd.0) 5V habe und auf der SDA Leitung (Portd.1) immer annähernd 0V habe. Was ist hier das Problem???
Weiter habe ich versucht mal ganz einfach die Ports d0 und d1 im 5s Takt Ein- und Aus zuschalten. Portd.0 wechselt alle 5s den Zustand von 0V auf 5V. Der Portd.1 wechselt auch alle 5s den Zusatnd nur nicht von 0v nach 5v, sondern von 2,1mv auf 14.8mv. Diese Spannungen habe ich direkt am RN-Controll gemessen und ohne Bus Teilnehmer. Wenn ich beim SD21 (nicht am Bus angeschlossen) die Spannungen messe haben SDA und SCL je 5V, was ja eigentlich in Ordung wäre. Wenn ich den SD21 ServoController nun am RN.Control anschliessen, hat nur noch SCL 5v und SDA 0V. Eigentlich müssten SDA und SCL auf 5V sein und beim Senden auf Masse gezogen werden. Externe PullUp Widerstände habe ich auch versucht hat aber leider auch nicht zum Erfolg geführt. Ist Mein Mega128 defekt??? ](*,)

Bitte um Hilfe

linux_80
18.04.2009, 23:11
Hallo,

kann fast nur heissen, dass da in dieser Leitung irgendwo einer den Pegel runterzieht. Obs am 128er liegt kann man so aus der Ferne nicht sagen.
Evtl. alles mit Lupe kontrollieren, und durchmessen, oder auch jemanden vor Ort schauen lassen :-k
TestProgramm zeigen.

Lorenz86
18.04.2009, 23:48
Vielen Dank für deine rasche Antwort

Dieses Board ist neu und jetzt das erste mal gebraucht worden. Das ist die Bausatz Version, wo der Mega128 schon professionell aufgelötet ist und nur die üblichen Komponenten eingelötet werden mussten. Das Board funkioniert sonst einwandfrei. Ich kann die Demo Programme auf dem Controller ausführen( z.b. Melodie Alle meine Entlein).

Was könnte der Grund sein, dass es mir die Spannung so zusammen reisst?? Die Verbindungen habe ich von der I2C Buchse bis auf den Mega128 durchgemessen und auch auf iregendwelche Überbrückungen/kurschlüsse überprüft. Auf jedenfall sind die Verbindungen von SDA und SCL vorhanden bis auf den Mega128 (0Ohm Widerstand).

Das beste wäre wohl, wenn sich jemand die ganze Geschichte mal ansehen könnte, wenn ich nicht so weit weg wohnen würde (Schweiz).

Ist es denn möglich, dass der Mega128 defekt ausgeliefert wurde???

Lorenz86
18.04.2009, 23:51
Hier ist noch das TestProgramm:

$programmer = 12 '1=LPT stk200 13=MCS Bootloader 12=USBISP

' ---------------RN-Mega128Funk übliche ------------------

$regfile = "m128def.dat" ' Bei Mega 128 "
$framesize = 32
$swstack = 32
$hwstack = 32

$crystal = 16000000 'Quarzfrequenz

Sound Portg.2 , 400 , 450 'BEEP bei RN-Mega128Funk
Sound Portg.2 , 400 , 250 'BEEP bei RN-Mega128Funk
Sound Portg.2 , 400 , 450 'BEEP bei RN-Mega128Funk

' ---------------------------------------------------
Config Portd = Output

Do
Portd.0 = 1
Portd.1 = 1
Wait 5
Portd.0 = 0
Portd.1 = 0
Wait 5
Loop

Lorenz86
18.04.2009, 23:58
Ich habe jetzt gerade zwischen SDA / SCL und Masse den Widerstand gemessen mit folgendem Resultat:

SDA zu Masse: 87.7Ohm (glaub ich nicht so gut :shock: )
SCL zu Masse: 7MOhm und steigend

Da ist wohl der Hund begraben mit einem Widerstand von 87.7Ohm zu Masse ist es ja fast nicht möglich auf 5V zu kommen

Ist mein Verdacht korrekt???

021aet04
19.04.2009, 00:19
Das kann nich passen. Hast du wirklich richtig gemessen? Hoffe du hast ohne Versorgungsspannung gemessen. Ist das SD21 beim Messen angeschlossen gewesen, wenn ja schließe es ab und probiere es nochmal.

Lorenz86
19.04.2009, 00:25
Am Rn-Control ist gar nicht angeschlossen, weder Spannung noch SD21. Ich Wiederholhte die Messung Mehrmals. Der Widerstand beträgt NUR 87.7 Ohm gegen Masse

Lorenz86
19.04.2009, 00:28
Ich finde wirklich beim Besten Willen keinen Lötfehler. Habe es nun mehrmals kontrolliert. Wäre es eine Möglichkiet den SDA Pin am Mega128 abzulöten und dann die Verbindung gegen Masse noch einmal messen????

Mit 87.7Ohm besteht ja praktisch hein Kurzschluss :shock: :shock: :shock: :shock:

linux_80
19.04.2009, 01:49
Hast Du auch mal andersrum gemessen, also die beiden Messspitzen nur tauschen ?
Evtl. hast du durch die Dioden im 128er gemessen, wenns anders rum genauso ist, ist wo was defekt.

Lorenz86
19.04.2009, 02:04
Habe soeben noch einmal gemessen und dabei die Messspitzen getauscht --> leider gleiches Ergebniss ca 87Ohm.

Ist es möglich dass der 128er defekt verbaut wurde???

linux_80
19.04.2009, 11:32
Moinmoin,

wenn Du Dir sicher bist, dass der Rest richtig gelötet wurde, vor allem die Wannenbuchsen, an denen I2C rauskommt, und alle Lötfettreste (o.ä.) entfernt wurden, dann könnts der 128er auch sein. Was ich Grundsätzlich aber als letztes in betracht ziehen würde.

Lorenz86
19.04.2009, 17:11
so jetzt habe ich alles noch einmal kontrolliert und sogar die Wannenstecker entlötet und auch dort keinen Fehler entdeckt. habe mich nun mit dem Support in Kontakt gesetzt.

ich danke euch allen für eure Hilfe

Lorenz86
19.04.2009, 21:00
Mein Verdacht hat sich bestätigt. Habe soeben den Pin26 (SDA) am ATMega128 abgelötet und siehe da. Der Widerstand vom Wannenstecker (Pin3) gegen Masse ist unendlich. Also mass ich noch den abgelöteten Pin26 am 128er gegen Masse und und der Widerstand beträgt nur 87.7Ohm. In diesem Fall ist mit Sicherheit der 128er im Eimer. Wesshalb kann ich mir nicht erklären, da das Board neu und der Chip schon aufgelötet war. Werde nach Ersatz ausschau halten.

Lorenz86
23.04.2009, 00:04
Habe heute einen neuen ATMEGA128 eingelötet und siehe da. Alles funktioniert einwandfrei einschliesslich der I2C Pins. JuHu :cheesy: :cheesy: :cheesy: :cheesy: