Stránka 1 z 5

Typický pinout I2C konektoru?

Napsal: 03 pro 2017, 16:52
od Dex
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á.

Re: Typický pinout I2C konektoru?

Napsal: 03 pro 2017, 17:40
od jrt
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é.

Re: Typický pinout I2C konektoru?

Napsal: 03 pro 2017, 18:06
od Dex
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í :)

Re: Typický pinout I2C konektoru?

Napsal: 03 pro 2017, 18:48
od jrt
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é...

Re: Typický pinout I2C konektoru?

Napsal: 03 pro 2017, 18:58
od Dex
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 ;)

Re: Typický pinout I2C konektoru?

Napsal: 03 pro 2017, 19:28
od DavidO
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í).

Re: Typický pinout I2C konektoru?

Napsal: 03 pro 2017, 20:17
od Pirx
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.

Re: Typický pinout I2C konektoru?

Napsal: 03 pro 2017, 20:28
od Dex
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 ;)

Re: Typický pinout I2C konektoru?

Napsal: 03 pro 2017, 20:51
od MartinL
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

Re: Typický pinout I2C konektoru?

Napsal: 03 pro 2017, 23:05
od DavidO
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 ...