Typický pinout I2C konektoru?

Uživatelský avatar
Dex
Administrátor
Příspěvky: 874
Registrován: 16 úno 2013, 14:26

Typický pinout I2C konektoru?

Příspěvek od Dex » 03 pro 2017, 16:52

Zdravím,

existuje něco jako typické/doporučené zapojení I2C konektoru?

Na netu nacházím různé varianty, tak než začnu používat nějakou neobvyklou nebo - nedej bože - vytvořím další, chci se zeptat, jak to vidí ostatní ;)

Statisticky mi zatím jako nejčastější vychází varianta GND-VCC-SDA-SCL (myšleno zleva doprava od prvního pinu) s tím, že SDA je bílá a SCL žlutá.
"all your robots are belong to us"
robodoupe.cz | rxd.cz | codetory.cz

Uživatelský avatar
jrt
Příspěvky: 1309
Registrován: 17 úno 2013, 17:13

Re: Typický pinout I2C konektoru?

Příspěvek od jrt » 03 pro 2017, 17:40

Dex píše:
03 pro 2017, 16:52
existuje něco jako typické/doporučené zapojení I2C konektoru?
Před mnoha lety jsem to hledal a nalezl, že jediným doporučeným rozložením signálů je:
1 - GND
2 - SDA
3 - Vcc
4 - SCL
a doporučeným konektorem je 4P4C (telefonní sluchátko)
Tak v případě nezbytnosti to takhle zapojuju i ve svých konstrukcích.

Ale to rozložení podle tebe je taky časté.
jrt
hobbyrobot.cz, profirobot.cz
edurobot.cz, robodoupe.cz

Uživatelský avatar
Dex
Administrátor
Příspěvky: 874
Registrován: 16 úno 2013, 14:26

Re: Typický pinout I2C konektoru?

Příspěvek od Dex » 03 pro 2017, 18:06

Zajímavé, pokud jde o konektor, tak tam to vidím nejspíše na PSH. V dronech ale třeba frčí konektor DF13.

Na modulech je rozložení různé, prostě jak to vyjde. Sem zvědav, jaké varianty používají ostatní :)
"all your robots are belong to us"
robodoupe.cz | rxd.cz | codetory.cz

Uživatelský avatar
jrt
Příspěvky: 1309
Registrován: 17 úno 2013, 17:13

Re: Typický pinout I2C konektoru?

Příspěvek od jrt » 03 pro 2017, 18:48

Dex píše:
03 pro 2017, 18:06
Sem zvědav, jaké varianty používají ostatní
Rozhodně nekompatibilní. Už jenom proto, aby tě naštvali... :D

Konektor 4P4C a PSH04 mají stejný počet pinů a okonce jsou i stejně číslované...
jrt
hobbyrobot.cz, profirobot.cz
edurobot.cz, robodoupe.cz

Uživatelský avatar
Dex
Administrátor
Příspěvky: 874
Registrován: 16 úno 2013, 14:26

Re: Typický pinout I2C konektoru?

Příspěvek od Dex » 03 pro 2017, 18:58

jrt píše:
03 pro 2017, 18:48
Konektor 4P4C a PSH04 mají stejný počet pinů a okonce jsou i stejně číslované...
Spíš 4P4C zabírá moc místa a není "bastl friendly" tj. v násobcích 2,54 ;)
"all your robots are belong to us"
robodoupe.cz | rxd.cz | codetory.cz

DavidO
Příspěvky: 515
Registrován: 01 kvě 2013, 21:27

Re: Typický pinout I2C konektoru?

Příspěvek od DavidO » 03 pro 2017, 19:28

Specifikace i2c říká v kap. 7.5 Wiring pattern of the bus lines:
If the length of the bus lines on a PCB or ribbon cable exceeds 10 cm and includes the VDD and VSS lines, the wiring pattern should be:
SDA _______________________
VDD ________________________
VSS ________________________
SCL _______________________
If only the VSS line is included, the wiring pattern should be:
SDA _______________________
VSS ________________________
SCL _______________________
These wiring patterns also result in identical capacitive loads for the SDA and SCL lines. If a PCB with a VSS and/or VDD layer is used, the VSS and VDD lines can be omitted.
If the bus lines are twisted-pairs, each bus line must be twisted with a VSS return. Alternatively, the SCL line can be twisted with a VSS return, and the SDA line twisted with a VDD return. In the latter case, capacitors must be used to decouple the VDD line to the VSS line at both ends of the twisted pairs.
If the bus lines are shielded (shield connected to VSS ), interference is minimized. However, the shielded cable must have low capacitive coupling between the SDA and SCL lines to minimize crosstalk.
(viz http://cache.nxp.com/documents/user_manual/UM10204.pdf str. 60)

Sice to neříká nic o konektorech, ale nepřipadá mi vhodné mít rozložení konektoru jinak, než pak ten kabel. Akorát to má nevýhodu, že případným otočením konektoru se prohodí VDD a VSS. Ale to by se musely zkombinovat tří faktory zároveň (otočení, nepolarizovaný konektor, zařízení neochráněné proti přepólování).

Pirx
Příspěvky: 124
Registrován: 24 úno 2013, 16:29
Kontaktovat uživatele:

Re: Typický pinout I2C konektoru?

Příspěvek od Pirx » 03 pro 2017, 20:17

Ono jde hlavne o to, aby nedochazelo k preslechum SDA a SCL, takze je vhodne mezi nimi mit GND nebo VCC.
Nicmene, ve svych konstrukcim pouzivam VCC, GND, SCL, SDA a chodi to taky.
Dokonce jsem to bez problemu pouzil na vzdalenost cca 1 metr po USB kabelu, kde jsem pripojil SDA a SCL na D+ a D-, i kdyz jsou v kabelu kroucene. Na konci byl kompas HMC5883L a bez problemu.
Solder fumes makes you stronger!

Uživatelský avatar
Dex
Administrátor
Příspěvky: 874
Registrován: 16 úno 2013, 14:26

Re: Typický pinout I2C konektoru?

Příspěvek od Dex » 03 pro 2017, 20:28

To jsem zase nakousl téma není-liž pravda :D

Zdůvodnění v tom datasheetu dává smysl, ale zatím jsem toto doporučené zapojení nenašel použité v praxi to ale bude asi jen otázkou času...

Jdu zkoumat dál, ale rád si poslechnu, jak to kdo používá v praxi ;)
"all your robots are belong to us"
robodoupe.cz | rxd.cz | codetory.cz

MartinL
Příspěvky: 119
Registrován: 24 úno 2013, 14:13

Re: Typický pinout I2C konektoru?

Příspěvek od MartinL » 03 pro 2017, 20:51

Já používám rozšíření ze servo konektoru (resp. používám stejné rozložení na všechno):
GND, VCC, SCL, SDA (bohužel na různých čínských modulech je to různě, takže na kabelech prohazuji SCL<->SDA a dost často i GND<->VCC).
Ale standard to není, resp. žádný jsem nenašel.

Podobně mám i ostatní rozhraní, typicky: GND, VCC, GPIO-OUT/IN, GPIO-IN/A-IN
např. UART: GND, VCC, TX, RX

DavidO
Příspěvky: 515
Registrován: 01 kvě 2013, 21:27

Re: Typický pinout I2C konektoru?

Příspěvek od DavidO » 03 pro 2017, 23:05

Dex píše:
03 pro 2017, 20:28
To jsem zase nakousl téma není-liž pravda :D
Tak máme celkem 24 možností, tudíž není divu, že zatím každý dal jinou, někteří i víc než jednu :lol:

Možná bych ještě doplnil, že když to jde, tak se snažím používat kabely 1:1, tedy s nepřeházenými piny na koncích. Myslím, že málokdy se mi stalo, že bych navrhoval zařízení na obou stranách, většinou jednu stranu už mám (modul se senzorem třeba), takže pak to holt na té mojí straně navrhnu podle té druhé. Ono stejně když já už něco navrhuju, tak to většinou je jasně určené, co k čemu se bude připojovat, takže na univerzalitu nemusím až tak moc koukat. Teda až na to i2c, to se snažím dělat podle specifikace :-)
A hlavně důsledně značit, popisky + barvičky pro napájení, na desce i na kabelu, jde-li to ...

Odpovědět

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 1 host