Seite 4 von 8

Re: I2C I/O-Erweiterungskarte

Verfasst: Sa 13. Okt 2012, 15:49
von quix
Heißt das, dass der ADM Port über die IO-Karte nur durchgeschliffen und von dieser nicht genutzt wird? Sodass eine eigens für den ADM-Port erdachte Erweiterung sowohl mit als auch ohne IO-Karte funktioniert?

Re: I2C I/O-Erweiterungskarte

Verfasst: Sa 13. Okt 2012, 21:06
von drohne235
quix hat geschrieben:Heißt das, dass der ADM Port über die IO-Karte nur durchgeschliffen und von dieser nicht genutzt wird? Sodass eine eigens für den ADM-Port erdachte Erweiterung sowohl mit als auch ohne IO-Karte funktioniert?
Nein. Die I/O-Karte belegt mit den I2C-Devices mindestens zwei ADM-Ports mit dem I2C-Protokoll, unter zusätzlicher Verwendung des INT-Signals drei Ports. Alle Ports sind zusätzlich nochmal an der Hinterfront wie alle anderen Anschlüsse am Hive per Steckverbinder (Wannestecker?) zugänglich. Da I2C ja eh ein Bus ist und alle Devices parallel an diesem hängen, können dann zusätzlich noch weiter I2C-Devices angeschlossen werden. Im Prinzip könnte man eine zweite baugleiche Plaine nochmal an diesem Anschluss anklemmen ud dort auch betreiben. Natürlich muss man beachten, dass die Devices alle unterschiedliche Adressen (BCD-Kodierschalter auf dem Board) belegen.

Sofern kein I/O-Board die INT-Leitung belegt, sind aber zwei ADM-Ports neben der IO-Karte frei verfügbar.

Hier ist mal das Prinzipschaltbild sichtbar:

http://upload.wikimedia.org/wikipedia/c ... 3e/I2C.svg

Du kannst dir das so vorstellen vorstellen, dass die beiden Leitungen SDA/SCL auf der linken Seite auf dem Hive-Board abgegriffen werden und auf der rechte Seite "druchgeschliffen" an einem Stecker für externe Erweiterungen zugänglich sind. Auf dem Board hängen natürlich die entsprechenden I2C-Slaves an diesen beiden Leitungen wie auf dem Bild. Extern könne dann weiter dazugeschaltet werden.

Vielleicht nochmal hier genauer lesen: http://de.wikipedia.org/wiki/I2c


@Hauke: Arbeitswiderstände am Bus per Jumper aktivierbar?

Re: I2C I/O-Erweiterungskarte

Verfasst: Sa 13. Okt 2012, 21:12
von PIC18F2550
drohne235 hat geschrieben:@Hauke: Arbeitswiderstände am Bus per Jumper aktivierbar?
auf jeden Fall wenn mehrere I/O-Karten gleichzeitig am bus hängen.

Re: I2C I/O-Erweiterungskarte

Verfasst: Sa 13. Okt 2012, 22:01
von Hauke
drohne235 hat geschrieben:
quix hat geschrieben:Heißt das, dass der ADM Port über die IO-Karte nur durchgeschliffen und von dieser nicht genutzt wird? Sodass eine eigens für den ADM-Port erdachte Erweiterung sowohl mit als auch ohne IO-Karte funktioniert?
Nein. Die I/O-Karte belegt mit den I2C-Devices mindestens zwei ADM-Ports mit dem I2C-Protokoll, unter zusätzlicher Verwendung des INT-Signals drei Ports. Alle Ports sind zusätzlich nochmal an der Hinterfront wie alle anderen Anschlüsse am Hive per Steckverbinder (Wannestecker?) zugänglich. Da I2C ja eh ein Bus ist und alle Devices parallel an diesem hängen, können dann zusätzlich noch weiter I2C-Devices angeschlossen werden. Im Prinzip könnte man eine zweite baugleiche Plaine nochmal an diesem Anschluss anklemmen ud dort auch betreiben. Natürlich muss man beachten, dass die Devices alle unterschiedliche Adressen (BCD-Kodierschalter auf dem Board) belegen.

Sofern kein I/O-Board die INT-Leitung belegt, sind aber zwei ADM-Ports neben der IO-Karte frei verfügbar.

Hier ist mal das Prinzipschaltbild sichtbar:

http://upload.wikimedia.org/wikipedia/c ... 3e/I2C.svg

Du kannst dir das so vorstellen vorstellen, dass die beiden Leitungen SDA/SCL auf der linken Seite auf dem Hive-Board abgegriffen werden und auf der rechte Seite "druchgeschliffen" an einem Stecker für externe Erweiterungen zugänglich sind. Auf dem Board hängen natürlich die entsprechenden I2C-Slaves an diesen beiden Leitungen wie auf dem Bild. Extern könne dann weiter dazugeschaltet werden.

Vielleicht nochmal hier genauer lesen: http://de.wikipedia.org/wiki/I2c
Das ist So jetzt nicht mehr richtig
Habe eine zweite Version gemacht.

Änderungen gegenüber V1:
- Breite 80mm
- Verpolungssichere Steckwannen
- Abgriff vom Hive-ADM-Port an der richtigen Stelle
- Adresseinstellung über Jumper (sorry) :(
- Vereinfachte ADM->I²C kontaktierung (JP5)
- Zwei separate Interrupt Leitungen möglich
- I²C sowohl über ADM-Port als auch über Adminstra-EEProm anschließbar
Dadurch kann man I²C Erweiterungen anschließen und gleichzeitig den ADM Port freihalten
Eine eigens für den ADM-Port erdachte Erweiterung könnte damit weiter betrieben werden.
- zusätzlicher Abriff für ADM-Ports+I²C+VCC+GND (für eine zweite Platine?)

Durch den Abgriff kann man die Platine ach ohne Hive an einem anderen I²C System betreiben.
drohne235 hat geschrieben: @Hauke: Arbeitswiderstände am Bus per Jumper aktivierbar?
- Die I²C Arbeitswiderstände sind abschaltbar


An den internen I²C Bus sind ständig folgende Sachen angeschlossen
- 4xPCF8574
- 2xPCF8591
- Abgriff zu einer weiteren Platine

Der Interne Bus kann per Jumper an folgende Dinge angeschlossen werden.
- Die Hive-ADM-Ports 3 & 4
- I²C Pullups
- Zusatz I²C-Bus (DS1307 & 24C256)
- Adminstra-I²C-Bus

Die Interrupts der PCF8574 könnten Wahlweise an die Hive-ADM-Ports 1 & 2 angeschlossen werden.

Die Stromversorgung fehlt aber immer noch ;)

cu
Hauke

Re: I2C I/O-Erweiterungskarte

Verfasst: So 14. Okt 2012, 12:51
von Hauke
Fragen und Komentare sind erwünscht.

cu
Hauke

Re: I2C I/O-Erweiterungskarte

Verfasst: So 14. Okt 2012, 18:36
von drohne235
Schaltplan ist sehr übersichtlich, gefällt mir sehr gut. Ich finde Schaltpläne ohne ausgezeichnete Verbindungen und nur mit "unsichtbaren" Links immer ein Greul, da sich ein Außenstehender wesentlich schwerer reinfinden kann. Die Aufteilung auf dem Board ist sehr übersichtlich, Steckverbinder und Jumper sind schon rein räumlich den entsprechenden Bausteinen zugeordnet. Jumper statt Kodierschalter sind völlig in Ordnung, da man ja da nicht ständig dran rumspielt.

Was mir aufgefallen ist:

- SV7 würde in liegender Bauform an der Rückfront mehr Sinn machen. So wäre er zum Beispiel bei einem Teko-Gehäuse ohne große Anpassung wie alle anderen Steckverbinder auf der Hauptplatine zugänglich.

- Die beiden Potis sind vielleicht schwer zugänglich, wenn die Schaltkreise noch gesockelt (Chip mit Sockel = Oberkante 9 mm) sind.

- Warum ist U$1 so hochpolig? Reichen doch 3 Pins oder?

Re: I2C I/O-Erweiterungskarte

Verfasst: So 14. Okt 2012, 19:25
von PIC18F2550
Saubere Arbeit.
Ich erlaube mir mal ein paar Anmerkungen :oops:
1. Lass an dem Rändern genug Platz das kein Kontakt Mit den Schienen eines Metallgehäuses gibt
2012-10-12_17-25-29_444.jpg
2. Sammel die A2 Adressleitungen auf einem Jumperblock.
Und gib den anderen eine Feste Adresse auf A0 und A1 es gibt keinen Sinn wenn man die externen Geräte auch an der Buckse einfach umstecken kann. Das spart Platz.

Code: Alles auswählen

Karte   A0 A1 A2
1       x   x   0
2       x   x   1
Damit währen 2 Karten Möglich. Das Reicht schon für eine kleine Modellbahnsteuerung.

3. Setz bitte liegende Spindelpotentiometer 47K linear ein und Schalte am Schleifer einen 100n Kondensator gegen Masse

Re: I2C I/O-Erweiterungskarte

Verfasst: So 14. Okt 2012, 19:27
von Hauke
drohne235 hat geschrieben: - SV7 würde in liegender Bauform an der Rückfront mehr Sinn machen. So wäre er zum Beispiel bei einem Teko-Gehäuse ohne große Anpassung wie alle anderen Steckverbinder auf der Hauptplatine zugänglich.
Leider wäre SV7 an der oberen Kante aus mehreren Gründen ungünstig.
Ich müsste die ADM-Port Leitungen einmal Quer über die ganze Platine legen.
Das würde meine Massenflächen zerteilen.
Weiterhin würde es kapazitive Last am I²C Bus unnötig erhöhen.
Und zuletzt würde es das Routing erheblich verkomplizieren.

Man könnte natürlich SV7 etwas höher legen. (So ca. zwischen die beiden Potis)
drohne235 hat geschrieben:- Die beiden Potis sind vielleicht schwer zugänglich, wenn die Schaltkreise noch gesockelt (Chip mit Sockel = Oberkante 9 mm) sind.
Ähm das sind stehende, mehr-gängige Trimmpotis.
Bild
Die werden von oben bedient. Alternativ kann man auch normale stehende Potis nehmen.
drohne235 hat geschrieben:- Warum ist U$1 so hochpolig? Reichen doch 3 Pins oder?
Richtig.
Jedoch wollte ich den EEPROM-Abgriff der Einfachheit halber hiermit machen.
Bild
Dies wird jedoch mit einem Flachbandkabel angeschlossen.
Das Gegenstück für die Platine wäre dann das hier.
Bild
Aber evt. könnten im Kabel die geraden mit den ungeraden Adern vertauscht sein.
Deshalb habe 3x4 Lötstellen vorgesen. von diese werden dann nur 2x4 mit eine 2x4 Steckerwanne verlötet werden.
Bild
Die restlichen vier würden frei bleiben. Mit diesem Trick könnte ich die Ader wieder richtig zurück tauschen.

cu
Hauke

Re: I2C I/O-Erweiterungskarte

Verfasst: So 14. Okt 2012, 19:43
von Hauke
PIC18F2550 hat geschrieben:Saubere Arbeit.
Ich erlaube mir mal ein paar Anmerkungen :oops:
1. Lass an dem Rändern genug Platz das kein Kontakt Mit den Schienen eines Metallgehäuses gibt
2012-10-12_17-25-29_444.jpg
Welche Ränder meinst du?
Bis auf unten sind keine Leiterbahnen am Rand.
PIC18F2550 hat geschrieben: 2. Sammel die A2 Adressleitungen auf einem Jumperblock.
Und gib den anderen eine Feste Adresse auf A0 und A1 es gibt keinen Sinn wenn man die externen Geräte auch an der Buchse einfach umstecken kann. Das spart Platz.

Code: Alles auswählen

Karte   A0 A1 A2
1       x   x   0
2       x   x   1
Könnte man auch machen.
Ein gemeinsamer Jumper für A2 der PCF8574
Und zwei gemeinsame Jumper für A1 & A2 der PCF8591
PIC18F2550 hat geschrieben:Damit währen 2 Karten Möglich. Das reicht schon für eine kleine Modellbahnsteuerung.
Korrektur
Es sind vier Karten möglich. Zwei Karten werden mit PCF8574T bestückt und die anderen beiden mit PCF8574AT (die haben einen anderen I²C Adressraum).
PIC18F2550 hat geschrieben:3. Setz bitte liegende Spindelpotentiometer 47K linear ein und Schalte am Schleifer einen 100n Kondensator gegen Masse
Kondensator geht ok.
Ein Liegendes Spindelpotentiometer halte ich jedoch nicht für sinnvoll, dann kommt man im bestückten Zustand nicht mehr an die Trimmschraube.
Ich bin sogar am überlegen ob man nicht evt. einen Rail to Rail Opamp mit drauf tun soll. Dann wäre Vref auch mit niedrig ohmigen Sachen belastbar.

Re: I2C I/O-Erweiterungskarte

Verfasst: So 14. Okt 2012, 20:02
von PIC18F2550
Das Leiterplattenmaterial sollte an den Stellen wo es mit einem Metallgehäuse in berührung kommen könnte keinerlei Cu haben (Cu-Massefläche).
Hauke hat geschrieben:Und zwei gemeinsame Jumper für A1 & A2 der PCF8591
Nein feste Adressen für A0 & A1 reichen kommen eh nur einmal vor.

Die Spinndelpotti's auf die andere Seite vom den IC's da ist genug Platz.
Und sie sind wenn die Leiterplatten gestabelt sind immer leicht zu erreichen.

Eine gemeinsame Uref ist aufgrund der vielen Verwendungsmöglichkeiten nicht sinnvoll.