បង្កើតឡើងដោយ Philips នៅទសវត្សឆ្នាំ 1980 I2C បានក្លាយទៅជាពិធីការទំនាក់ទំនងស៊ែរទូទៅបំផុតនៅក្នុងអេឡិចត្រូនិក។ I2C អនុញ្ញាតឱ្យមានការទំនាក់ទំនងរវាងសមាសធាតុអេឡិចត្រូនិចឬ IC ទៅ IC, ថាតើសមាសធាតុនៅលើ PCB តែមួយឬបានតភ្ជាប់តាមខ្សែ។ លក្ខណៈពិសេសសំខាន់នៃ I2C គឺសមត្ថភាពក្នុងការមានសមាសភាគដ៏ធំធេងនៅលើរថយន្តក្រុងតែមួយដែលមានខ្សែតែមួយដែលធ្វើឱ្យ I2C ល្អឥតខ្ចោះសម្រាប់កម្មវិធីដែលទាមទារភាពងាយស្រួលនិងល្បឿនលឿន។
ទិដ្ឋភាពទូទៅនៃពិធីសារ I2C
I2C គឺជាពិធីការទំនាក់ទំនងស៊េរីដែលតម្រូវឱ្យមានបន្ទាត់សញ្ញាពីរដែលត្រូវបានរចនាឡើងសម្រាប់ការទំនាក់ទំនងរវាងបន្ទះសៀគ្វីនៅលើ PCB មួយ។ I2C ដើមឡើយត្រូវបានរចនាឡើងសម្រាប់ការទំនាក់ទំនង 100kbps ប៉ុន្តែរបៀបបញ្ជូនទិន្នន័យលឿនជាងមុនត្រូវបានបង្កើតឡើងជាច្រើនឆ្នាំមកនេះដើម្បីទទួលបានល្បឿនរហូតដល់ទៅ 3,4 ប៊ីត។ ពិធីការ I2C ត្រូវបានបង្កើតឡើងជាស្ដង់ដារផ្លូវការមួយដែលផ្ដល់នូវភាពឆបគ្នាល្អក្នុងចំណោមការអនុវត្ត I2C និងភាពឆបគ្នាល្អ។
សញ្ញា I2C
ពិធីការ I2C ប្រើតែសញ្ញាពីរទិសពីរដើម្បីទាក់ទងជាមួយឧបករណ៍ទាំងអស់នៅលើឡាន I2C ។ សញ្ញាទាំងពីរដែលបានប្រើគឺ:
- បន្ទាត់ទិន្នន័យស៊េរី (SDL)
- នាឡិកាទិន្នន័យស៊េរី (SDC)
ហេតុផលដែល I2C អាចប្រើតែសញ្ញាពីរសម្រាប់ការទំនាក់ទំនងជាមួយគ្រឿងបន្លាស់មួយចំនួនគឺនៅក្នុងរបៀបដែលការទំនាក់ទំនងតាមរថយន្តក្រុងត្រូវបានដោះស្រាយ។ ទំនាក់ទំនង I2C នីមួយៗចាប់ផ្តើមដោយអាស័យដ្ឋាន 7 ប៊ីត (ឬ 10 ប៊ីត) ដែលហៅថាជាអាស័យដ្ឋាននៃគ្រឿងកុំព្យូទ័រដែលនៅសល់នៃការទំនាក់ទំនងគឺមានន័យដើម្បីទទួលបានការទំនាក់ទំនង។ នេះអនុញ្ញាតឱ្យឧបករណ៍ជាច្រើននៅលើឡានក្រុង I2C ដើរតួជាឧបករណ៍មេនៅពេលដែលតម្រូវការរបស់ប្រព័ន្ធបញ្ជា។ ដើម្បីទប់ស្កាត់ការប៉ះទង្គិចនៃការទំនាក់ទំនងពិធីការ I2C រួមបញ្ចូលសមត្ថភាពអាជ្ញាកណ្តាលនិងការរកឃើញការប៉ះទង្គិចគ្នាដែលអនុញ្ញាតឱ្យមានការទំនាក់ទំនងរលូននៅតាមឡានក្រុង។
គុណសម្បត្តិនិងដែនកំណត់
ក្នុងនាមជាពិធីការទំនាក់ទំនង, I2C មានគុណសម្បត្តិច្រើនដែលធ្វើឱ្យគឺជាជម្រើសដ៏ល្អសម្រាប់កម្មវិធីរចនាជាច្រើនដែលបានបង្កប់។ I2C នាំមកនូវអត្ថប្រយោជន៍ដូចខាងក្រោម:
- I2C តម្រូវឱ្យមានបន្ទាត់សញ្ញាពីរប៉ុណ្ណោះ
- អត្រាបញ្ជូនទិន្នន័យដែលអាចបត់បែន
- ឧបករណ៍នីមួយៗនៅលើឡានក្រុងមានអាសយដ្ឋានដាច់ដោយឡែកពីគ្នា
- ឧបករណ៍មានទំនាក់ទំនង Master / Slave សាមញ្ញ
- I2C មានលទ្ធភាពដោះស្រាយបញ្ហាទំនាក់ទំនងច្រើនដោយផ្តល់ការវាយតម្លៃពីការវាយប្រហារនិងការប៉ះទង្គិចទាក់ទងគ្នា
- ទំនាក់ទំនងផ្លូវឆ្ងាយជាង SPI
ជាមួយនឹងគុណសម្បត្តិទាំងអស់នេះ I2C ក៏មានដែនកំណត់មួយចំនួនផងដែរដែលអាចត្រូវបានគេរចនាឡើង។ ដែនកំណត់ I2C ដ៏សំខាន់បំផុតរួមមាន:
- ដោយសារតែមានតែ 7 ប៊ីត (ឬ 10 ប៊ីតប៉ុណ្ណោះ) អាចរកបានសម្រាប់ការបញ្ជាក់ពីឧបករណ៍ឧបករណ៍នៅលើឡានដឹកជញ្ជូនដូចគ្នាអាចចែករំលែកអាសយដ្ឋានដូចគ្នា។ ឧបករណ៍មួយចំនួនមានសមត្ថភាពកំណត់រចនាសម្ព័ន្ធប៊ីតពីរបីចុងក្រោយនៃអាសយដ្ឋានប៉ុន្តែវានៅតែដាក់កម្រិតលើឧបករណ៍នៅលើឡានតែមួយ។
- មានតែល្បឿននៃការទំនាក់ទំនងតិចតួចតែប៉ុណ្ណោះដែលអាចរកបានហើយឧបករណ៍ជាច្រើនមិនគាំទ្រដល់ការបញ្ជូនល្បឿនលឿនជាងមុន។ ការគាំទ្រមួយផ្នែកសម្រាប់ល្បឿននីមួយៗនៅលើឡានក្រុងត្រូវបានទាមទារដើម្បីការពារឧបករណ៍ដែលយឺតជាងពីការទទួលបានការបញ្ជូនដោយផ្នែកដែលនឹងបង្កឱ្យមានភាពមិនប្រក្រតី។
- លក្ខណៈរួមនៃរថយន្តក្រុង I2C អាចបណ្តាលឱ្យរថយន្តក្រុងទាំងមូលព្យួរនៅពេលដែលឧបករណ៍តែមួយនៅលើរថយន្ដឈប់ដំណើរការ។ ការជិះកង់ដើម្បីជិះឡានក្រុងអាចត្រូវបានប្រើដើម្បីចាប់ផ្តើមឡានក្រុងឡើងវិញនិងជួសជុលឡើងវិញនូវប្រតិបត្តិការដ៏ត្រឹមត្រូវ។
- ដោយសារឧបករណ៍អាចកំណត់ល្បឿនទំនាក់ទំនងរបស់ពួកគេឧបករណ៍ដែលដំណើរការយឺតអាចពន្យារដំណើរការនៃឧបករណ៍ដែលលឿនជាងមុន។
- I2C គូរអំណាចច្រើនជាងបណ្តាញទំនាក់ទំនងសឺរ័ញ្ញផ្សេងទៀតដោយសារតែ topology បើកចំហនៃបន្ទាត់ទំនាក់ទំនង។
- ដែនកំណត់នៃរថយន្តក្រុង I2C ជាធម្មតាកំណត់នូវចំនួនឧបករណ៍នៅលើឡានក្រុងទៅកាន់ឧបករណ៍ជាច្រើន។
កម្មវិធី
រថយន្តក្រុង I2C គឺជាជម្រើសដ៏ល្អមួយសម្រាប់កម្មវិធីដែលតម្រូវឱ្យមានការចំណាយទាបនិងការអនុវត្តដ៏សាមញ្ញជាជាងល្បឿនលឿន។ ឧទាហរណ៍ការអាន ICs ការចងចាំជាក់លាក់ការចូលប្រើ DACs និង ADCs ការអានឧបករណ៍ចាប់សញ្ញាការ បញ្ជូននិងត្រួតពិនិត្យសកម្មភាពដែលបានណែនាំដោយអ្នកប្រើប្រាស់ការអានឧបករណ៍ចាប់សញ្ញាផ្នែករឹងនិងការទំនាក់ទំនងជាមួយមីក្រូត្រួតពិនិត្យជាច្រើនគឺជាការប្រើប្រាស់ទូទៅនៃពិធីការទំនាក់ទំនង I2C ។