I2C

I²C nyaéta beus komputer sérial nu kapanggih ku Philips pikeun nyambungkeun périferal laun kana motherboard, embedded system, atawa ponsél. I²C ieu mangrupa singgetan tina Inter-Integrated Circuit anu dibaca I-dua-C.

Rancangan 

I²C saukur maké dua jalur koléktor muka dua arah, nyaéta serial data (SDA) jeung serial clock (SCL), nu ditarik ka luhur (pull-up) maké resistor. Tegangan pangluhurna +5 V, sok sanajan sistim nu tegangannana +3.3 V ogé ilahar dipaké, sarta tegangan séjén ogé teu nanaon.

Disain rujukan I²C boga rohangan alamat (address space) 7-bit katut 16 alamat nu disayagakeun, jadi panglobana nepi keun ka 112 titik bisa komunikasi dina beus nu sarua. Mode beus I²C pangilaharna nyaéta 100 kbit/det dina mode standar, sarta 10 kbit/det dina mode lalaunan, tapi frekuénsi clock nu ngadeukeutan enol ogé teu nanaon. Revisi I²C pangpandeurina bisa ngawengku leuwih loba titik sarta leuwih gancang (400 kbit/det mode gancang sarta 3.4 Mbit/det mode gancang pisan), sarta ngarojong fitur tambahan lianna, kawas mode alamat 10-bit.

Révisi 

Sistim I²C nu asli dijieunna dina taun 80-an minangka hiji sistim beus anu basajan pikeun ngabangun elektronika kadali nu maké rupa-rupa IC ti Philips.

Dina taun 1992, kaluar vérsi munggaran anu geus distandardisasi. Vérsi ieu nambahkeun mode gancang anyar (400kbit/det) jeung mode alamat 10-bit sangkan kapasitasna bisa ngaronjat nepi ka 1008 titik. Vérsi 2.0 ti taun 1998 nambahkeun mode gancang pisan (3.4 Mbit/detik) sarta ngurangan tegangan jeung arus listrik sangkan nyumponan pangabutuh nu perelu ngahémat daya. Vérsi 2.1 ti taun 2001 minangka standar pangpandeurina, tapi teu loba parobahan ti vérsi 2.0.

Pamakéan 

I²C cocog pisan pikeun rupa-rupa périferal anu kabasajanan sarta murahna ongkos produksi leuwih penting batan gancangna sistim. Pamakéan anu ilahar nyaéta pikeun:

 Ngaksés mémori non volatil.
 Ngaksés DACs anu laun.
 Ngaksés ADCs anu laun.
 Ngaganti setélan kontras, hué, jeung kasaimbangan kelir dina layar monitor.
 Ngaganti volume dina spiker pinter.
 Ngadalikeun témbongan LED atawa LCD, siga nu aya dina ponsél.
 Nyalurkeun data ti sénsor jeung pikeun diagnostik, saperti térmostat CPU jeung gancangna kipas.
 Maca real time clocks.
 Ngahurung-paéhkeun sistim.

Kaunggulan husus I²C nyaéta hiji mikrokontroler bisa ngadalikeun jaringan IC ngan saukur ku dua pin nu dijalankeun dina program. Périferal ogé bisa disambungkeun atawa dipegatkeun tina beus I²C sawaktu sistim hurung kénéh. Hal ieu idéal pikeun pamakéan anu merelukeun ngaganti komponén sacara gancang (en: hot swapping).

Sistim beus siga I²C jadi leuwih kahot nalika insinyur komputer sadar yén loba pisan ongkos produksi jeung désain rangkéyan kaintegrasi (IC) ayana dina ukuran awakna jeung jumlah pinna. Awak anu leuwih leutik ogé biasana boga beurat anu leuwih hampang jeung merelukeun daya listrik leuwih saeutik, tangtu penting pisan dina pamakéan ponsél jeung komputasi portabel.

Pangrojong ti Sistim Operasi 

Dina Linux, komunikasi I²C dipigawé ku modul kernél husus. Tata cara pikeun nulis program klién I²C bisa dipanggihan dina dokuméntasi ngeunaan kernél dina header file /usr/include/linux/i2c.h. OpenBSD ogé kakara nambahan cara gawé pikeun I²C, sarta pangrojong pikeun kontroler tur sénsor-sensor anu ilahar kapanggih di pasaran.

Dina sistem operasi Sinclair QDOS jeung Minerva (QDOS reimplementation) QL, I²C dirojong ngaliwatan sakumpulan éksténsi nu disadiakeun ku TF Services.

Dina AmigaOS, pustaka i2c.library nu ditulis ku Wilhelm Noeker nyadiakeun aksés I²C.

eCos ngarojong I²C pikeun sababaraha arsitéktur komputer.

Motherboard EPIA-M ogé ngarojong I²C ngaliwatan modél Mini-ITX.

Téhnologi Turunan 

I²C jadi dadasar pikeun ACCESS.bus, VESA Display Data Channel (DDC) interface, System Management Bus (SMBus), jeung "Intelligent Platform Management Bus" (IPMB, salah sahiji protokol IPMI). Impléméntasi ieu béda dina hal tegangan jeung wengkuan frékuénsi clock-na, sarta bisa miboga jalur interupsi.

Tempo ogé 

 I²S
 1-Wire
 Serial Peripheral Interface
 SMBus

Tumbu luar 

 Philips I2C specifications 
 Detailed introduction, Primer
 Introduction to I2C
 I2C Bus / Access Bus
 Using the I2C Bus with Linux
 OpenBSD iic(4) manual page
 Linux package lm-sensors support I2C bus among others.
 massmind i2c page Source code, samples and technical information for using i2c with PC, PIC and SX microcontrollers.
 I2C bus 
 Serial buses information page
 I2C Bus Technical Overview and Frequently Asked Questions
 The I2C Faq Version 2.0 
 The Bus Buffer Resource. For 2-wire buses such as I2C, SMBus, PMBus, IPMB & IPMI 

Beus sérial