I2C interfeysi: rus tilida tavsif

Mundarija:

I2C interfeysi: rus tilida tavsif
I2C interfeysi: rus tilida tavsif
Anonim

Zamonaviy maishiy texnika, sanoat elektronikasi va turli telekommunikatsiya uskunalarida shunga o'xshash echimlarni tez-tez topish mumkin, garchi mahsulotlar deyarli bir-biriga bog'liq bo'lmasa ham. Masalan, deyarli har bir tizim quyidagilarni o'z ichiga oladi:

  • koʻp hollarda bitta chipli mikrokompyuter boʻlgan maʼlum “aqlli” boshqaruv bloki;
  • LCD buferlari, operativ xotira, kiritish/chiqarish portlari, EEPROM yoki maxsus ma'lumot konvertorlari kabi umumiy maqsadli komponentlar;
  • maxsus komponentlar, jumladan, video va radio tizimlari uchun raqamli sozlash va signallarni qayta ishlash sxemalari.

Ularning ilovasini qanday optimallashtirish mumkin?

uart spi i2c interfeyslarining qisqacha tavsifi
uart spi i2c interfeyslarining qisqacha tavsifi

Dizaynerlar va ishlab chiqaruvchilar manfaati uchun ushbu keng tarqalgan echimlardan maksimal darajada foydalanish, shuningdek, turli xil apparat vositalarining umumiy ishlashini yaxshilash va qo'llaniladigan sxema komponentlarini soddalashtirish uchun Philips eng oddiy ikki simli ikki yo'nalishli qurilmani ishlab chiqishga kirishdi. eng samarali inter-chip beradi avtobusboshqaruv. Bu avtobus I2C interfeysi orqali maʼlumotlarni uzatishni taʼminlaydi.

Bugungi kunda ishlab chiqaruvchining mahsulot assortimentida 150 dan ortiq CMOS, shuningdek, I2C bilan mos keladigan va sanab o'tilgan toifalarning har qandayida ishlashga mo'ljallangan bipolyar qurilmalar mavjud. Shuni ta'kidlash kerakki, I2C interfeysi dastlab barcha mos keluvchi qurilmalarga o'rnatilgan bo'lib, buning natijasida ular maxsus avtobus yordamida bir-birlari bilan bemalol muloqot qilishlari mumkin. Bunday dizayn echimidan foydalanish tufayli raqamli tizimlarni rivojlantirish uchun juda xos bo'lgan turli xil uskunalarni o'zaro bog'lashning juda ko'p sonli muammolarini hal qilish mumkin edi.

Asosiy imtiyozlar

i2c interfeysi
i2c interfeysi

UART, SPI, I2C interfeyslarining qisqacha tavsifini ko'rib chiqsangiz ham, ikkinchisining quyidagi afzalliklarini ajratib ko'rsatishingiz mumkin:

  • Ishlash uchun sizga faqat ikkita qator kerak - sinxronizatsiya va ma'lumotlar. Bunday avtobusga ulanadigan har qanday qurilma keyinchalik butunlay noyob manzilga dasturiy ravishda murojaat qilishi mumkin. Istalgan vaqtda ustalarga master-uzatuvchi yoki master-qabul qiluvchi sifatida harakat qilish imkonini beruvchi oddiy munosabat mavjud.
  • Bu avtobus bir vaqtning oʻzida bir nechta magistrlarga ega boʻlish imkoniyatini beradi, toʻqnashuvlarni aniqlash uchun barcha zarur vositalarni taʼminlaydi, shuningdek, ikki yoki undan ortiq magistrlar bir vaqtning oʻzida maʼlumot uzatishni boshlagan taqdirda maʼlumotlar buzilishining oldini olish uchun arbitrajga murojaat qiladi. Standart rejimdafaqat ketma-ket 8-bitli ma'lumotlarni uzatish 100 kbps dan oshmaydigan tezlikda ta'minlanadi va tez rejimda bu chegarani to'rt marta oshirish mumkin.
  • Chiplar kuchlanishni samarali bostiruvchi va ma'lumotlarning maksimal yaxlitligini ta'minlaydigan maxsus o'rnatilgan filtrdan foydalanadi.
  • Bir avtobusga ulanishi mumkin boʻlgan chiplarning maksimal soni faqat uning maksimal mumkin boʻlgan sigʻimi 400 pF bilan cheklangan.

Konstruktorlar uchun imtiyozlar

i2c interfeysi lcd1602
i2c interfeysi lcd1602

I2C interfeysi, shuningdek, barcha mos chiplar ishlab chiqish jarayonini funktsional diagrammadan tortib, yakuniy prototipigacha sezilarli darajada tezlashtirishi mumkin. Shu bilan birga, shuni ta'kidlash kerakki, bunday mikrosxemalarni barcha turdagi qo'shimcha sxemalardan foydalanmasdan to'g'ridan-to'g'ri avtobusga ulash imkoniyati tufayli prototip tizimini yanada modernizatsiya qilish va modifikatsiya qilish uchun joy ajratilgan va turli xil qurilmalarni elektr tarmog'idan uzib qo'ygan. avtobus.

I2C interfeysini alohida ajratib turadigan koʻplab afzalliklar mavjud. Tavsif, xususan, konstruktorlar uchun quyidagi afzalliklarni ko'rish imkonini beradi:

  • Funktsional diagrammadagi bloklar mikrosxemalarga toʻliq mos keladi va shu bilan birga funksionaldan fundamentalga juda tez oʻtish taʼminlanadi.
  • Bus interfeyslarini ishlab chiqishning hojati yoʻq, chunki avtobus allaqachon maxsus chiplarga integratsiyalangan.
  • Integratsiyalashgan aloqa protokollari vaqurilma manzili tizimni toʻliq dasturiy taʼminot bilan belgilash imkonini beradi.
  • Bir xil turdagi mikrosxemalar, agar kerak bo'lsa, butunlay boshqa ilovalarda ishlatilishi mumkin.
  • Dizaynerlar eng koʻp qoʻllaniladigan funktsional bloklar, shuningdek, turli mikrosxemalar bilan tezda tanishib olishlari tufayli ishlab chiqishning umumiy vaqti sezilarli darajada qisqardi.
  • Agar xohlasangiz, tizimga chiplarni qoʻshishingiz yoki olib tashlashingiz mumkin va shu bilan birga bir avtobusga ulangan boshqa jihozlarga unchalik taʼsir qilmaysiz.
  • Koʻp marta foydalaniladigan dasturiy modullar kutubxonasiga ruxsat berish orqali dasturiy taʼminotni ishlab chiqishning umumiy vaqtini sezilarli darajada qisqartirish mumkin.

Boshqa narsalar bilan bir qatorda, I2C interfeysini ajratib turadigan, yuzaga kelgan nosozliklarni tashxislash va keyingi disk raskadrovka qilishning juda oddiy tartibini ta'kidlash kerak. Tavsif shuni ko'rsatadiki, agar kerak bo'lsa, bunday uskunaning ishlashidagi kichik og'ishlar ham hech qanday qiyinchiliksiz darhol kuzatilishi va shunga mos ravishda tegishli choralar ko'rilishi mumkin. Shuni ham ta'kidlash kerakki, dizaynerlar, xususan, I2C interfeysi yordamida batareya quvvatini ta'minlaydigan turli xil portativ uskunalar va tizimlar uchun juda jozibali bo'lgan maxsus echimlarni olishadi. Rus tilidagi tavsif, shuningdek, undan foydalanish quyidagi muhim afzalliklarni ta'minlashga imkon berishini ko'rsatadi:

  • Har qanday paydo boʻladigan shovqinlarga etarlicha yuqori qarshilik.
  • Oxir oqibatkam quvvat sarfi.
  • Eng keng kuchlanish diapazoni.
  • Keng harorat diapazoni.

Texnologlar uchun imtiyozlar

Ta'kidlash joizki, nafaqat dizaynerlar, balki texnologlar ham so'nggi paytlarda ixtisoslashgan I2C interfeysidan tez-tez foydalana boshladilar. Rus tilidagi tavsif ushbu toifadagi mutaxassislar taqdim etadigan juda ko'p afzalliklarni ko'rsatadi:

  • Ushbu interfeysga ega standart ikki simli ketma-ket avtobus IC-lar oʻrtasidagi oʻzaro bogʻlanishlarni kamaytiradi, yaʼni kamroq pinlar va kamroq treklar talab qilinadi, bu esa PCBlarni arzonroq va ancha kichikroq qiladi.
  • Toʻliq integratsiyalangan I2C interfeysi LCD1602 yoki boshqa opsiya manzil dekoderlari va boshqa tashqi kichik mantiqqa ehtiyojni butunlay yoʻq qiladi.
  • Bunday avtobusda bir vaqtning oʻzida bir nechta masterlardan foydalanish mumkin, bu esa sinovdan oʻtkazish va keyingi uskunani sozlashni sezilarli darajada tezlashtiradi, chunki avtobusni yigʻuvchi kompyuterga ulash mumkin.
  • VSO, SO va maxsus DIL paketlarida ushbu interfeysga mos IC-larning mavjudligi qurilma oʻlchami talablarini sezilarli darajada kamaytirishi mumkin.

Bu LCD1602 va boshqalarning I2C interfeysini ajratib turuvchi afzalliklarning qisqacha ro'yxati. Bundan tashqari, mos chiplar sezilarli darajada ta'minlash, ishlatiladigan tizim moslashuvchan oshirish mumkinturli xil uskunalar variantlarining juda oddiy dizayni, shuningdek, hozirgi darajada rivojlanishni yanada qo'llab-quvvatlash uchun nisbatan oson yangilanishlar. Shunday qilib, ma'lum bir asosiy modeldan foydalanib, turli xil jihozlarning butun oilasini ishlab chiqish mumkin.

Uskunani yanada modernizatsiya qilish va uning funktsiyalarini kengaytirish Arduino 2C interfeysi yoki mavjud ro'yxatdagi boshqa istalgan mikrosxemaning avtobusiga standart ulanish orqali amalga oshirilishi mumkin. Agar kattaroq ROM kerak bo'lsa, u holda faqat kattalashtirilgan ROMga ega boshqa mikrokontrollerni tanlash kifoya qiladi. Yangilangan chiplar kerak boʻlganda eskilarini toʻliq oʻzgartirishi mumkinligi sababli, eskirgan chiplarni oddiygina uzib, keyin ularni yangi jihozlar bilan almashtirish orqali uskunaga osongina yangi funksiyalar qoʻshishingiz yoki uning umumiy ish faoliyatini oshirishingiz mumkin.

ACCESS.bus

Avtobus ikki simli xususiyatga ega ekanligi, shuningdek, dasturlarni adreslash imkoniyati tufayli ACCESS.bus uchun eng ideal platformalardan biri I2C interfeysi hisoblanadi. Ushbu qurilmaning spetsifikatsiyasi (rus tilidagi tavsifi maqolada keltirilgan) uni standart to'rt pinli ulagich yordamida turli xil tashqi qurilmalarni kompyuterlarga ulash uchun ilgari faol foydalanilgan RS-232C interfeysiga ancha arzonroq muqobil qiladi.

Xususiyatlar bilan tanishish

i2c interfeysining rus tilidagi tavsifi
i2c interfeysining rus tilidagi tavsifi

Zamonaviy ilovalar uchunMikrokontrollerlardan foydalanadigan 8-bitli boshqaruv, ba'zi dizayn mezonlarini belgilash mumkin:

  • toʻliq tizim asosan bitta mikrokontroller va boshqa tashqi qurilmalar, jumladan xotira va turli kiritish-chiqarish portlarini oʻz ichiga oladi;
  • turli qurilmalarni bitta tizimda birlashtirishning umumiy qiymati imkon qadar minimallashtirilishi kerak;
  • funksiyalarni boshqaruvchi tizim yuqori tezlikdagi ma'lumotlarni uzatish zaruriyatini ta'minlamaydi;
  • jami samaradorlik toʻgʻridan-toʻgʻri tanlangan uskuna va ulanadigan avtobusning xususiyatiga bogʻliq.

Roʻyxatdagi mezonlarga toʻliq javob beradigan tizimni loyihalash uchun siz I2C seriyali interfeysidan foydalanadigan avtobusdan foydalanishingiz kerak. Seriyali avtobus parallel avtobusning tarmoqli kengligiga ega bo'lmasa-da, u kamroq ulanishlarni va kamroq chip pinlarini talab qiladi. Shu bilan birga, avtobus nafaqat ulash simlarini, balki tizim ichidagi aloqani ta'minlash uchun zarur bo'lgan turli tartib va formatlarni ham o'z ichiga olishini unutmang.

I2C interfeysi yoki tegishli shinaning dasturiy emulyatsiyasi yordamida aloqa qiladigan qurilmalar turli xil to'qnashuvlar, ma'lumotlarning yo'qolishi yoki bloklanishining oldini olishga imkon beruvchi maxsus protokolga ega bo'lishi kerak. Tez qurilmalar sekin qurilmalar bilan aloqa o'rnatishi kerak va tizim bunga bog'liq bo'lmasligi kerakunga ulangan uskunadan, chunki aks holda barcha yaxshilanishlar va modifikatsiyalardan foydalanish mumkin bo'lmaydi. Shuningdek, protsedurani ishlab chiqish kerak, uning yordami bilan qaysi qurilma hozirda avtobusni boshqarishni ta'minlaydi va qaysi vaqtda aniq bo'ladi. Bunga qo'shimcha ravishda, agar turli xil soat chastotalari bo'lgan turli xil qurilmalar bir xil avtobusga ulangan bo'lsa, siz uni sinxronlashtirish manbasi haqida qaror qabul qilishingiz kerak. Bu barcha mezonlarga AVR va ushbu roʻyxatdagi boshqa har qanday boshqa I2C interfeysi javob beradi.

Asosiy tushuncha

i2c interfeysi spetsifikatsiyasining rus tilidagi tavsifi
i2c interfeysi spetsifikatsiyasining rus tilidagi tavsifi

I2C avtobusi ishlatiladigan har qanday chip texnologiyasini qo'llab-quvvatlaydi. I2C LabVIEW interfeysi va shunga o'xshash boshqalar ma'lumotlarni uzatish uchun ikkita liniyadan foydalanishni ta'minlaydi - ma'lumotlar va sinxronizatsiya. Shu tarzda ulangan har qanday qurilma LCD buferi, mikrokontroller, xotira yoki klaviatura interfeysi bo'lishidan qat'i nazar, o'zining noyob manzili bilan tan olinadi va ushbu uskuna uchun mo'ljallanganiga qarab qabul qiluvchi yoki uzatuvchi vazifasini bajarishi mumkin.

Aksariyat hollarda LCD bufer standart qabul qiluvchi hisoblanadi va xotira nafaqat turli ma'lumotlarni qabul qilishi, balki uzatishi ham mumkin. Boshqa narsalar qatorida, ma'lumotni ko'chirish jarayoniga ko'ra, qurilmalar tobe va asosiy sifatida tasniflanishi mumkin.

Bunday holda, master ma'lumotlarni uzatishni boshlaydigan va shuningdek, ishlab chiqaradigan qurilmadir.sinxronizatsiya signallari. Bunday holda, har qanday manzilli qurilmalar unga nisbatan tobe sifatida qaraladi.

I2C aloqa interfeysi bir vaqtning o'zida bir nechta magistrlarning mavjudligini ta'minlaydi, ya'ni avtobusni boshqarishga qodir bo'lgan bir nechta qurilma unga ulanishi mumkin. Bitta avtobusda bir nechta mikrokontrollerdan foydalanish imkoniyati har qanday vaqtda bir nechta masterni yo'n altirish mumkinligini anglatadi. Bunday vaziyat yuzaga kelganda yuzaga kelishi mumkin bo'lgan xaosni bartaraf etish uchun I2C interfeysidan foydalanadigan ixtisoslashtirilgan arbitraj tartibi ishlab chiqilgan. Kengaytirgichlar va boshqa qurilmalar qurilmalarni avtobusga simli ulanish qoidasiga muvofiq ulashni ta'minlaydi.

Soat signalini yaratish masterning zimmasidadir va har bir master ma'lumot uzatishda o'z signalini ishlab chiqaradi va u to'qnashuv sodir bo'lganda sekin qul yoki boshqa master tomonidan "tortib olingan" bo'lsagina o'zgarishi mumkin.

Umumiy parametrlar

SCL ham, SDA ham ikki yoʻnalishli liniyalar boʻlib, ular tortishish qarshiligi bilan musbat quvvat manbaiga ulanadi. Shinalar mutlaqo bepul bo'lsa, har bir chiziq yuqori holatda bo'ladi. Shinaga ulangan qurilmalarning chiqish bosqichlari ochiq drenajli yoki ochiq kollektorli bo'lishi kerak, shunda simli AND funksiyasi ta'minlanishi mumkin. I2C interfeysi orqali ma'lumot 400 kbps dan oshmaydigan tezlikda uzatilishi mumkin.tez rejimi, standart tezlik esa 100 kbps dan oshmaydi. Avtobusga bir vaqtning o'zida ulanishi mumkin bo'lgan qurilmalarning umumiy soni faqat bitta parametrga bog'liq. Bu 400 pf dan oshmaydigan chiziq sig'imi.

Tasdiqlash

i2c interfeysi tavsifi
i2c interfeysi tavsifi

Tasdiqlash ma'lumotlarni uzatish jarayonida majburiy tartibdir. Magistr tegishli sinxronlash impulsini hosil qiladi, transmitter esa bu sinxronlash puls paytida SDA liniyasini tasdiq sifatida chiqaradi. Shundan so'ng, qabul qiluvchi SDA liniyasining barqaror past holatda soat yuqori holatida barqaror ushlab turilishini ta'minlashi kerak. Bunday holda, sozlash va ushlab turish vaqtlarini hisobga olganingizga ishonch hosil qiling.

Aksariyat hollarda murojaat qilingan qabul qiluvchi qabul qilingan har bir baytdan keyin tasdiqni yaratishi shart, faqat uzatish boshlanishida CBUS manzili boʻlgan hollar bundan mustasno.

Agar qabul qiluvchi-qul o'z manzili tasdiqlovini yuborish imkoniga ega bo'lmasa, ma'lumotlar liniyasi yuqorida qoldirilishi kerak, shundan so'ng master "To'xtatish" signalini berishi mumkin, bu esa xabarlarni yuborishni to'xtatadi. barcha ma'lumotlar. Agar manzil tasdiqlangan bo'lsa-yu, lekin qul uzoq vaqt davomida boshqa ma'lumotlarni ololmasa, usta ham jo'natishni to'xtatishi kerak. Buning uchun qul keyingi qabul qilingan baytni tan olmaydi va shunchaki qatorni tark etadiyuqori, bu master to'xtash signalini ishlab chiqarishiga sabab bo'ladi.

Agar uzatish protsedurasi master-qabul qiluvchining mavjudligini nazarda tutsa, u holda bu holda u qulni uzatish tugashi haqida xabardor qilishi kerak va bu oxirgi qabul qilingan baytni tan olmaslik orqali amalga oshiriladi. Bunday holda, to'g'ridan-to'g'ri uzatuvchi ma'lumotlar liniyasini darhol chiqaradi, shunda master "To'xtatish" signalini berishi yoki "Start" signalini yana takrorlashi mumkin.

Uskunaning ishlayotganligini tekshirish uchun yuqoridagi rasmdagi kabi Arduino-da I2C interfeysi uchun eskizlarning standart namunalarini kiritishga urinib koʻrishingiz mumkin.

Arbitraj

2c arduino interfeysi
2c arduino interfeysi

Magistrlar avtobus toʻliq boʻsh boʻlgandan keyingina maʼlumot yuborishni boshlashlari mumkin, lekin ikki yoki undan ortiq magistrlar minimal ushlab turish vaqtida start signalini yaratishi mumkin. Natijada avtobusda maxsus “Ishga tushirish” signali paydo bo‘ladi.

Arbitraj SDA avtobusida ishlaydi, SCL shinasi yuqori. Agar magistrlardan biri ma'lumotlar liniyasida past darajani uzatishni boshlasa, lekin bir vaqtning o'zida ikkinchisi yuqori bo'lsa, ikkinchisi undan butunlay uziladi, chunki SDL holati uning ichki liniyasining yuqori holatiga mos kelmaydi..

Arbitraj bir necha bitlarda davom etishi mumkin. Avval manzil, keyin esa ma'lumotlar uzatilganligi sababli, hakamlik muhokamasi manzilning oxirigacha davom etishi mumkin va agar magistrlar murojaat qilsalar.bir xil qurilma, keyin turli ma'lumotlar ham arbitrajda ishtirok etadi. Ushbu arbitraj sxemasi tufayli, agar biror toʻqnashuv yuz bersa, hech qanday maʼlumotlar yoʻqolmaydi.

Agar magistr arbitrajda yutqazsa, u SCLda bayt oxirigacha soat pulslarini berishi mumkin, bu vaqt davomida kirish yoʻqolgan.

Tavsiya: