Mundarija:

Dunyodagi eng arzon I2C (I-Squared-C) adapteri: 5 qadam (rasmlar bilan)
Dunyodagi eng arzon I2C (I-Squared-C) adapteri: 5 qadam (rasmlar bilan)

Video: Dunyodagi eng arzon I2C (I-Squared-C) adapteri: 5 qadam (rasmlar bilan)

Video: Dunyodagi eng arzon I2C (I-Squared-C) adapteri: 5 qadam (rasmlar bilan)
Video: Dunyodagi eng arzon avtomobil narxi qancha? Eng g'alati avtomobillar [Top-5] 2024, Iyul
Anonim
Dunyodagi eng arzon I2C (I-Squared-C) adapteri
Dunyodagi eng arzon I2C (I-Squared-C) adapteri

Kompyuter uchun sensorlar interfeysini arzon narxda tayyorlang! 09.06.08 yangilanishi: Bir nechta yo'llarni o'rganib chiqib, Microsoft Windows -da bu texnikani qo'llashning amaliy usuli yo'q degan xulosaga keldim. Bu kichik operatsion tizim emas, men chindan ham yong'oqni sinab ko'rdim! Kechirasiz! I2C imkoniyatlariga muhtoj bo'lgan Windows foydalanuvchilariga mavjud USB-ga asoslangan echimlar eng yaxshi xizmat ko'rsatadi. 24/08/08 yangilanishi: Linux qo'llab-quvvatlashi, shuningdek, Nintendo Wii Nunchuk kontroller va BlinkM "aqlli LED" uchun namuna kodi qo'shildi. Linuxda kompilyatsiya qilish va sozlash bo'yicha ko'rsatmalar uchun manba kodi bilan ta'minlangan README.txt faylini ko'ring. I2C (Inter-Integrated Circuit qisqartmasi) odatda ikkita komponentli ketma-ket avtobus bo'lib, odatda ichki komponentlar o'rtasida past darajadagi aloqa uchun ishlatiladi. I2C robototexnika sohasida ham mashhur. Har xil turdagi sensorlar va aktuatorlar I2C mos keladigan formada mavjud: ultratovushli masofali o'lchagichlar, tezlashuv, burilish, harorat va bosim uchun sensorlar, servo kontrollerlar va qo'shimcha umumiy maqsadli (GPIO) liniyalarini ta'minlovchi avtobus kengaytirgichlari., Microchip PIC va boshqalar) I2C -ni to'g'ridan -to'g'ri qo'llab -quvvatlaydi. Lekin mikrokontrollerlarda ishlov berish quvvati cheklangan va dasturiy ta'minotni ishlab chiqish - maxsus o'zaro kompilyatorlar va dasturlash muhitlari bilan - ba'zida og'ir ish bo'lishi mumkin. Noutbuklar va bitta taxtali kompyuterlar tobora kichrayib, arzonlashib borayotgani sababli, bu tizimlar to'g'ridan-to'g'ri robototexnika va elektronika loyihalarida qo'llanilishini ko'rish odatiy holga aylandi. Bu ko'rish qobiliyatini qayta ishlash va takomillashtirilgan AI kabi yangi imkoniyatlar uchun katta kuch beradi va u mavjud ishlab chiqish vositalari va tillarining ko'lamini ancha kengaytiradi … lekin u yangi muammoni ham keltirib chiqaradi: bu "muntazam" tizimlarni tashqi qurilmalarga ulash odatda asosiy oqim orqali amalga oshiriladi. USB kabi iste'molchilar uchun mo'ljallangan portlar; Sensorlarimizdan foydalanish uchun tashqaridan mavjud "I2C porti" yo'q … yoki shundaymi?

1 -qadam: mavjud variantlar

Mavjud variantlar
Mavjud variantlar
Mavjud variantlar
Mavjud variantlar

I2C qurilmalarini oddiy ish stoli yoki noutbukga ulashning bir usuli-USB-I2C adapteri. Kamida o'nlab bunday variantlar mavjud, ular ochiq manbali dasturiy ta'minotga ega bo'lgan to'plamlardan tortib, har bir qo'ng'iroq va hushtak bilan murakkab savdo birliklarigacha.

USB-to-I2C usulining bir kamchiligi-bu narx. To'liq xususiyatli tijorat modelining narxi 250 dollar va undan yuqori bo'lishi mumkin. Hatto "bepul" uy qurilishi alternativalari ham uning qismlari to'plamini va mikrokontroller dasturchisiga oldindan investitsiyalarni va undan foydalanish uchun tegishli bilimlarni o'z ichiga oladi. Yana bir kamchilik - mashhur Windows katlamidan tashqarida drayverlarni qo'llab -quvvatlashning nisbatan kamligi. Bu qurilmalarning bir nechtasi Macintosh yoki Linux kompyuterlarida ishlaydi.

2 -qadam: DDC - bu I2C

DDC - bu I2C
DDC - bu I2C
DDC - bu I2C
DDC - bu I2C
DDC - bu I2C
DDC - bu I2C

Kirish qismida ko'pchilik kompyuterlarda tashqi I2C porti yo'qligini aytganimda, men yolg'on gapirdim. Ma'lum bo'lishicha, u erda va u deyarli o'n yildan buyon, asosan, uyqusiz o'tiribdi.

Ko'pgina zamonaviy grafik kartalar va monitorlar video kabeli ichidagi aloqa liniyasi bo'lgan Display Data Channel (DDC) ni qo'llab -quvvatlaydi, bu kompyuter va displeyga bir -biriga mos keladigan rezolyutsiyalar bo'yicha muzokaralar olib borish va monitorning funktsiyalarini dasturiy boshqarishga ruxsat berish uchun odatda jismoniy tugmalar yordamida amalga oshiriladi. ko'rsatish. DDC, aslida, bir nechta o'rnatilgan qoidalarga ega bo'lgan I2C avtobusining amalga oshirilishi. Kompyuter va monitor o'rtasidagi bog'liqlikni (yoki ishlatilmaydigan video portdagi DDC liniyalaridan, masalan, noutbukning tashqi monitor ulanishidan) foydalangan holda, ba'zi I2C qurilmalari bilan deyarli hech qanday xarajatsiz, interfeysni chetlab o'tish mumkin. odatiy qurilmaga to'liq ehtiyoj. Ushbu I2C avtobusiga jismonan kirish uchun bizga faqat buzilgan video kabel kerak …

3 -qadam: kabelni ajratish

Kabelni ajratish
Kabelni ajratish
Kabelni ajratish
Kabelni ajratish

I2C interfeysi uchun to'rtta sim kerak: +5V quvvat, er, ketma -ket ma'lumotlar va ketma -ket soat. Har xil turdagi video portlar uchun pinoutlarni Vikipediya yoki Pinouts.ru saytida topish mumkin. Shuni esda tutingki, VGA kabelidan foydalanib, pinlar to'liq to'ldirilganini toping; Ba'zilar faqat ichki qismni o'z ichiga oladi. Kabelning tashqi tomondan izolyatsiyasini va ekranini qaytarib, siz, ehtimol, ichida ikkita guruh simni topasiz. Qalinroq simlar yoki qo'shimcha ekranga o'ralgan simlar to'plami odatda video signalini olib yuradi. Biz ularni qiziqtirmaymiz va ularni qaytarish mumkin. Yupqa, himoyalanmagan simlar odatda DDC (I2C) signallarini boshqalar bilan olib yuradi. Multimetr yoki uzluksizlikni tekshiruvchi kabel uchun to'g'ri to'rtta simni topishga yordam beradi. Yalang'och ulagichni ishlatish bu erda foydali bo'lishi mumkin, chunki siz qiziqish pinlariga to'rtta simni lehimlashingiz kerak. +5V quvvatiga e'tibor bering: mavjud oqim juda cheklangan; DDC spetsifikatsiyasiga muvofiq taxminan 50 mA. Aksariyat I2C qurilmalari ozgina tokni yutadi, shuning uchun bir vaqtning o'zida bir nechta ishga tushirish mumkin … lekin agar bir nechta LEDlar (yoki boshqa yuqori oqimli qurilmalar) ishlatilsa, tashqi quvvat ta'minlanishi kerak.

4 -qadam: tugallangan adapter

Tugallangan adapter
Tugallangan adapter

Mana, tayyor adapter. Hammasi shu! Noutbuk sumkachasiga osongina joylashishi uchun men o'zimni qo'shimcha qotib qoldim va o'zimdagi I2C servo boshqaruvchisiga to'g'ridan-to'g'ri ulanadigan to'rtta pinli vilkasini qo'shdim.

5 -qadam: Dasturlar va loyihalar

Dasturlar va loyihalar
Dasturlar va loyihalar
Dasturlar va loyihalar
Dasturlar va loyihalar

Adapter bilan ishlash uchun Mac OS X va Linux manba kodini veb -saytimdan yuklab olish mumkin (yuklash havolasi sahifaning pastki qismida). Bu C tilida yozilgan va siz gcc -ni o'rnatishingiz kerak bo'ladi (Linuxda odatda bu sukut bo'yicha bo'ladi, Mac foydalanuvchilari esa asl OS diskiga ixtiyoriy o'rnatuvchi yoki Apple -dan bepul yuklab olinadigan ishlab chiqaruvchi vositalarini o'rnatishi kerak bo'ladi). Namuna kodi harorat sensori o'qilishi, BlinkM "aqlli LED" yonishi, ketma -ket EEPROM yozish va tekshirish, Nintento Wii Nunchuk kontrollerini o'qish (faqat Linux) va servo boshqaruv paneli bilan aloqa qilish uchun kiritilgan. Afsuski, bu adapter sxemasi emas. barcha tizimlarga mos keladi. DDC -ni qo'llab -quvvatlash majburiy emas, shuning uchun hamma video kartalar bu imkoniyatni qo'llab -quvvatlamaydi. Hozircha ATI yoki Intel grafik chiplari bo'lgan Mac tizimlarida omadim keldi, lekin NVIDIA-ga asoslangan tizimlar omadsiz. Linux tomonida men faqat IBM ThinkPad A31p (ATI grafikasi) ni muvaffaqiyatli sinab ko'rdim, lekin u Asus EeePC (Intel) bilan ishlamaydi. Bu erda tasvirlar turli I2C qurilmalarini amalda ko'rsatadigan sinov qurilmasini ko'rsatadi. Kompyuter atrof -muhit haroratini doimiy ravishda I2C harorat sensori orqali o'qiydi, vaqti -vaqti bilan bu ma'lumotni I2C seriyali EEPROM chipiga yozib qo'yadi (ha, bu faqat faylga chop etilishi mumkin edi, lekin bu I2C ilovalarini yana ko'rsatish uchun edi), keyin esa servo (orqali I2C tekshirgichi) indikatorni vaqtincha almashtirish vazifasini bajaradi. Kutubxona va ushbu qurilmalar uchun namuna kodi allaqachon mavjud bo'lganligi sababli, bu demoni yig'ish uchun bir necha daqiqa vaqt kerak bo'ldi (va ularning aksariyati indikatorni tanlashda edi).

Tavsiya: