I²C: diferència entre les revisions

Contingut suprimit Contingut afegit
Cap resum de modificació
mCap resum de modificació
Línia 1:
[[Fitxer:I2C.svg|thumb|350px|Un exemple esquemátic amb un mestre (un [[microcontrolador]]) y tres nodes esclaus (un [[Conversió analògica-digital|ADC]], un [[Conversor digital-analògic|DAC]], i altre microcontrolador) amb [[resistencia pull-up|resistencies pull-up]] R<sub>p</sub>.]]
 
'''I²C''' és un [[bus]] de comunicacions en sèrie. El seu nom ve d’Interd’''Inter-Integrated Circuit'' (Circuits Inter-IntegradosIntegrats). La versió 1.0 data de l’any 1992 i la versió 2.1 de l’any 2000, el seu dissenyador és Philips. La velocitat és de 100Kbits per segon en el mode estàndard, encara que també permet velocitats de 3.4 Mbit/s. És un bus molt usat en la indústria, principalment per a comunicar microcontroladors i els seus perifèrics en sistemes integrats (Embedded Systems) i generalitzant més per a comunicar circuits integrats entre si que normalment residixen en un mateix circuit imprésimprès.
== Descripció ==
----
I²C és un bus de comunicacions en sèrie. El seu nom ve d’Inter-Integrated Circuit (Circuits Inter-Integrados). La versió 1.0 data de l’any 1992 i la versió 2.1 de l’any 2000, el seu dissenyador és Philips. La velocitat és de 100Kbits per segon en el mode estàndard, encara que també permet velocitats de 3.4 Mbit/s. És un bus molt usat en la indústria, principalment per a comunicar microcontroladors i els seus perifèrics en sistemes integrats (Embedded Systems) i generalitzant més per a comunicar circuits integrats entre si que normalment residixen en un mateix circuit imprés.
La principal característica d’I²C és que utilitza dos línies per a transmetre la informació: una per a les dades i per un altre el senyal de rellotge. També és necessària una tercera línia, però esta només és la referència (massa). Com solen comunicar-se circuits en una mateixa placa que compartixen una mateixa massa esta tercera línia no sol ser necessària.
 
Linha 11 ⟶ 9:
*SCL: rellotge
*GND: massa
 
 
Les dos primeres línies són de [[drenador]] obert, per la qual cosa necessiten resistències de [[pull-up]].
Linha 31 ⟶ 28:
*Cada byte llegit/escrit pel mestre ha de ser obligatòriament reconegut per un bit d’ACK pel dispositiu mestre/esclau.
*Es repetixen els 2 passos anteriors fins a finalitzar la comunicació entre mestre i esclau.
*Encara que el mestre sempre controla l’estat de la línia del rellotge, un esclau de baixa velocitat o que haja de detindre la transferència de dades mentresmentre efectua una altra funció, pot forçar la línia SCL a nivell davall. Açò fa que el mestre entre en un estat d’espera, durant el qual, no transmet informació esperant que l’esclau estiga preparat per a continuar la transferència en el punt on havia sigut detinguda.
*Quan la comunicació finalitza, el mestre transmet una "stop condition" per a deixar lliure el bus.
*Després de la "stop condition", és obligatori per al bus estar aneu-li durant uns microsegons.