Ich habe mindestens 2 Platinen: Auf einer sitzt ein ATMEGA328P-AU als Master eines I²C Busses, an den bis zu 10 Slaves hängen sollen. (P1) http://www.farnell.com/datasheets/1693866.pdf Auf einer (vielen) Anderen ein ATTINY2313 als Slave. (P2) http://www.farnell.com/datasheets/1517539.pdf Dazwischen hängen eben 150mm Flachkabel(Pin-Belegung bereits geprüft) und ein Adum1250 sitzt auf der P2 zur galvanischen Trennung: http://www.farnell.com/datasheets/1814362.pdf Die Schaltung war zu Beginn wie im Schaltplan (Bild als Anhang) aufgebaut. P1 über Flachbandkabel verbunden mit einer P2 Doch schnell wurden Fehler bemerkbar, nachdem beim Initialtest keine Geräte gefunden wurden. Im ersten Schritt wurde der Kondensator entfernt, und zusätzlich ein 4k99 Pullup Widerstand am SDA2 Eingang(schwarz eingezeichnet) eingebaut. -> Es geht weiterhin nichts Da der Adum1251 die Clock nur von Master nach Slave überträgt, ich alle Möglichkeiten ausschließen wollte (Hätte ja den Falschen erwischen können), und der Master MC aber am SCL2 hängt wurde im zweiten Schritt (rot markiert) SCL zu testzwecken überbrückt. -> Es geht immer noch nichts Bei zusätzlichler Überbrückung von SCA (grün markiert): -> Es geht logischerweise, die MC funktionieren also, und auch die Programmierung stimmt. Hat hier jemand Erfahrungen mit dieser Art von galvanischer Trennung, und kann mir bei meinem Problem weiterhelfen? Ich weiß nicht, was ich sonst falsch gemacht haben könnte. Der Chip ist richtig eingebaut, Pullups sind nun 3/4 vorhanden, es gibt kein Problem mit der Verkabelung. MfG Thiago
:
Verschoben durch Moderator
Edit: Die Jumper sind zur Unterbrechung des Signals, wenn der ATTINY2313 programmiert wird, da das auf die Pins geht, die I²C können (um das Signal noch vor dem ADUM1250 zu unterbrechen.
Vielleicht GND2 mit GND1 verbinden? Sorry, aber aus dem Bild werde ich nicht schlau. Baue alles nach Datenblatt auf und achte darauf, dass die Massen verbunden sind, auch bei den angeschlossenen Geräten. Pullups bei den uCs deaktivieren und die separaten pullups benutzen.
Hallo, ich habe versucht GND1 und GND2 zu verbinden aber es kam auch so leider kein Signal durch. Gleiches Ergebnis wenn man zusätzlich VCC verbindet - Wobei weder GND noch VCC verbunden werden sollen es handelt sich ja beim dem Chip um eine Galvanische Trennung von zwei Stromkreisen (also weder VCC noch GND verbunden). Warum der ganze Aufwand ? -> Das ganze soll in weiter Zukunft von Schülern verwendet werden, die sind sicherlich nicht dumm nur da passiert es leicht mal das 12V auf eine 5V Leitung angeschlossen werden, das wiederrum hätte zur Folge, dass alle Mikrochips auf dem I2C Bus kaputt wären (wie oben beschrieben sind das dann einige) und um der Gefahr zu entgehen besitzt jede der Slave Platinen einen ADUM1250 für den I2C Bus und eine eigene 5V Stromversorgung die vom Master (Hauptplatine) kommt (am Master darf natürlich niemand etwas verändern, wird auch baulich verhindert werden). PullUps habe ich deaktiviert und extern eingebaut 5k auf der Slave Seite und 4.7k auf der Master Seite - die I2C Leitungen sind richtig verlegt und auch sonst sehen ich keinen Fehler. Vielleicht kennt findet ja noch jemand von euch etwas ? Gibt es ein einfaches Verfahren zum Testen dieser Chips ? Mfg, Thiago
Hallo, ich habe mal den Teil mit einem Adum1250 aus einer meiner Schaltungen rauskopiert. Was mir auffällt ist, dass bei dir nur 3 Pullups sind. Ansonsten seh ich in dem Schaltplan auch nicht wirklich durch. Der ist leider sehr unübersichtlicht. Zum Testen könntest du probieren die Pins nacheinander auf Ground zu ziehen und zu gucken, ob der korrespendieren Pin dann auch low ist. I2C macht im Betrieb nichts anderes, deswegen sind auch die Pullups nötig.
Das Schaltplansymbol ist schon völlig Banane angelegt. Der ADUM ist ein ISOLATOR. D.h. es macht Sinn das im Symbol auch darzustellen. Mit 2 Seiten. Und nicht alle Signale nach Namen zusammenzufassen. Dann wird der Plan auch übersichtlich. So wie Sven das z.B. auch hat. Wichtig beim ADUM1250 sind in der Tat die Pullups. Vor allem an den Bidirektionalen Ports. Da müssen beidseitig Pullups ran, sonst passiert da gar nichts. Und bei SDA1 seh ich keinen PullUp im Plan. Wobei der Plan auch total unübersichtlich gestaltet ist. Ein einziger Saustall. Bei mir wär das ne 4-5. Mit so nem Symbol vor allem. Wem willst du denn hier was beibringen? Dichl lässt man auf Schüler los? Au Backe.
:
Bearbeitet durch User
cyblord ---- schrieb: > Das Schaltplansymbol ist schon völlig Banane angelegt. Der ADUM ist ein > ISOLATOR. D.h. es macht Sinn das im Symbol auch darzustellen. Das tut mir leid, ich bin selbst ein Schüler, und nicht allzu vertraut mit EAGLE, ich weiß zwar wie man das Symbol ändert (das, welches ich benutzt habe, war Standardmäßig so in eagle drin) jedoch bin ich mit keiner der üblichen Design-Normen von Schaltplänen vertraut. Ich werde in Zukunft versuchen diese übersichtlicher zu gestalten. Sven B. schrieb: > Zum Testen könntest du probieren die Pins nacheinander auf Ground zu > ziehen und zu gucken, ob der korrespendieren Pin dann auch low ist. Schon gemacht, keine Ergebnisse erhalten. Egal, wo ich Ground anlege, es ändert sich nichts am entgegengesetzten Pin (+5V und Ground wurden logischerweise nicht getestet, sondern nur die 4 Pins für SCL und SDA) Es sind auch schon 4 Pullups verbaut, und die 100nF Kondensatoren zwischen +5V und Ground waren schon von Beginn an vorhanden. Im Grunde genommen sieht die Schaltung nun so aus, wie die, die du hochgeladen hast Sven, mit dem Unterschied, dass beide Seiten mit 5V arbeiten: http://www.mikrocontroller.net/attachment/239101/ADUM1250.PNG Das Einzige, dass mir nun einfällt, ist dass nicht beide Seiten mit 5V betrieben werden können, das Datenblatt, welches im im Anfangspost verlinkt habe behauptet jedoch etwas anderes. Natürlich kann das Ding auch hin sein -.- LG Thiago
Ok, also vielen Dank für die schnelle Hilfe. Nun funktioniert es, der Master findet den Slave an der Adresse 0x28. Es kann also endlich programmiert werden. *Es war tatsächlich der Chip kaputt, hab einfach den Reservechip eingebaut* Naja, all die Aufregung quasi umsonst ^^ Trotzdem vielen Dank für die Tipps, und Verbesserungsvorschläge. Werde in Zukunft versuchen mich an Normen beim Schaltplan zu halten, war ja echt nicht allzu leserlich. LG Thiago
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.