I-logo ye-sheen.bot

Ukuqonda Okujulile

Kungani Ukwengeza Inzwa Yesibili Kuqhwalisa i-micro:bit Noma i-Arduino Yakho

Aga 29, 2026·Sheen Robotics
Kungani Ukwengeza Inzwa Yesibili Kuqhwalisa i-micro:bit Noma i-Arduino Yakho

Uma ukwengeza inzwa eyodwa nje kumisa yonke iphrojekthi yakho ye-micro:bit noma ye-Arduino, imbangela cishe njalo ukukhiyeka kwebhasi ye-I2C okudalwa ukushayisana kwamakheli, izinkinga zama-pull-up, noma ukungqubuzana kwamavolthiji.

Uma iphrojekthi yakho ibisebenza kahle nesikrini se-OLED noma inzwa yemvelo, kodwa yaqhwala nya ngomzuzu owafaka ngawo inzwa yesibili, ikhodi yakho ayihlangabezananga nje nephutha elincane lomqondo—ibhasi yakho yokuxhumana ikhiyeke ngokwenyama. Ibhodi liyama ngoba i-microcontroller ibhajwe emjikelezweni ongapheli ilinde isiqinisekiso sikagesi esingasoze safika.

Ezinkundleni ezifana ne-BBC micro:bit, i-Arduino Uno, ne-ESP32, izinhlelo zezinzwa eziningi cishe njalo zixhumana nge-I2C (Inter-Integrated Circuit). Nakuba i-I2C idumile ngoba idinga izintambo zedatha ezimbili kuphela (i-SDA ne-SCL) kungakhathaliseki ukuthi uxhuma amadivayisi amangaki, yaziwa ngokuba sengozini enkulu yokukhiyeka kwehadiwe okudalwa yiphuzu elilodwa.

Kungani i-I2C Ilenga Esikhundleni Sokwehluleka Ngesizotha

Ngokungafani nokuxhumana kwe-serial okujwayelekile noma amaphinini okufunda edijithali, i-I2C isebenzisa uhlelo lwezintambo lwe-open-drain. I-microcontroller nezinzwa aziwakhuphuli zona uqobo amalayini; ama-pull-up resistor angaphandle noma angaphakathi adonsela phezulu kancane i-SDA (idatha) ne-SCL (iwashi) afike evolthijini yokusebenza. Noma iyiphi idivayisi esebhasini ingathumela isignali ngokudonsela ilayini phansi ku-Ground.

Uma ikhodi yakho ibiza umsebenzi ofana no-Wire.endTransmission() noma icela idatha ngesandiso se-MakeCode, i-microcontroller ithumela uhlaka lwekheli bese ilinda ibhithi le-Acknowledgement (ACK). Uma iphutha lehadiwe libambe i-SDA noma i-SCL phansi, noma uma amadivayisi amabili exuba isignali, umtapo we-firmware osebenza ngokuvumelanisa ulinda phakade. Kuthisha noma kumfundi, ibhodi limane libukeke lifile.

Izimbangela Ezintathu Ezingemuva Kokuqhwala

Izimo ezintathu ezivamile zehadiwe zibangela cishe konke ukukhiyeka kwe-I2C kwezinzwa eziningi ekilasini:

1. Amakheli Azenzakalelayo Aphindaphindekayo

Yonke inzwa ye-I2C inekheli le-hex elingaguquki lamabhithi ayisikhombisa elifakwe ngqo esilikoni sayo. Uma uxhuma izinzwa ezimbili ezifanayo (isibonelo, ama-accelerometer amabili e-MPU6050 noma izibonisi ezimbili ezijwayelekile ze-OLED ezingu-0.96 inch), womabili amadivayisi anekheli elifana ncamashi (elifana no-0x68 noma no-0x3C).

Uma i-microcontroller isakaza lelo kheli, womabili amashipi azama ukukhuluma ngaso leso sikhathi. Amalayini awo edatha ayashayisana, aphazamise ukushaya kwewashi, bese ekhiya isimo sebhasi.

Uhlobo LwenzwaIkheli Elivamile ElizenzakalelayoIkheli Lesibili (Iphinini Liguqulwe)
I-MPU-6050 (Gyro/Accel)0x680x69 (i-AD0 iye ku-3.3V)
I-SSD1306 OLED (128x64)0x3C0x3D (iswishi ye-jumper enanyathiselwayo)
I-BME280 (Izinga lokushisa/Ingcindezi)0x760x77 (i-SDO iye ku-VCC noma ku-GND)
I-DS3231 (Iwashi Lesikhathi Sangempela)0x57 / 0x68Limisiwe / Ibhuloho lokunanyathisela

2. Ama-Pull-Up Resistor Angekho Noma Antantayo

Ngenxa yokuthi i-I2C yeyame kuma-pull-up resistor ukuze ibuyisele amalayini ezingeni eliphezulu, ukungabi nawo ama-pull-up kwenza amalayini ewashi nawedatha antante ngendlela ongenakuyibikezela. Ngakolunye uhlangothi, ukuxhuma ndawonye amabhodi e-breakout amane noma amahlanu—ngalinye linama-pull-up resistor alo angaphakathi angu-4.7kΩ noma 10kΩ—kubeka lawo ma-resistor ngokuhambisana. Lokhu kwehlisa ukumelana kwebhasi kuyonke kufike phansi kakhulu kangangokuthi ama-transistor abuthakathaka angaphakathi kwezinzwa ezijwayelekile awakwazi ukudonsela ilayini kuye ngqo ku-0V, kubangele ukwehluleka ekuthumeleni.

3. Ukungafani Kwamazinga Omqondo Angu-3.3V Nangu-5V

I-BBC micro:bit nama-microcontroller anamuhla e-ESP32 asebenza ngomqondo we-3.3V, kanti i-Arduino Uno endala noma ibhodi le-breakout lenzwa elidala lisebenza nge-5V. Uma uxhuma inzwa ye-5V enama-pull-up resistor akhelwe ngaphakathi kubhasi eyabelwanwe ngayo kanye nenzwa ye-3.3V, ilayini ye-5V izodonsela amalayini edatha e-micro:bit aye ku-5V. Okungcono kunakho konke okungenzeka ukuthi kononakalise idatha ebhasini; okubi kunakho konke, kulimaza inzwa ye-3.3V noma isixhumi se-I2C se-microcontroller.

Inqubo Yamanyathelo Amane Yokuxazulula Izinkinga Ekilasini

Uma uhlelo lomfundi lwezinzwa eziningi luqhwalisa ibhodi, landela le nqubo yokuhlola inyathelo nenyathelo ukuze uthole ngokushesha iphutha likagesi:

Inyathelo 1: Hlukanisa Bese Uskena

Khipha inzwa entsha bese uqinisekisa ukuthi isekhethi yasekuqaleni isavuleka kahle. Bese ufaka iskripthi sesiskeni se-I2C ebhodini (esitholakala kalula ezibonelweni ezijwayelekile ze-Arduino noma ngezandiso eziyisisekelo ze-MakeCode). Isiskeni sithumela ama-ping emakhelini kusukela ku-0x01 kuya ku-0x7F bese sibika yonke idivayisi ephendulayo nge-serial. Faka inzwa yesibili yodwa bese uyayiskena. Uma zombili izinzwa zibika ikheli le-hex elifana ncamashi, usukutholile ukushayisana.

Inyathelo 2: Shintsha Iphinini Lekheli Lehadiwe

Amabhodi amaningi e-breakout anikeza iphinini lokukhetha ikheli (elivame ukulotshwa ngokuthi ADDR, AD0, noma SDO) noma ibhuloho elincane lokunanyathisela ngemuva kwe-PCB. Ukubophela leli phinini ku-3.3V noma ku-GND kushintsha ibhithi eliphansi kunawo wonke lekheli ledivayisi. Uma seliguqulwe iphinini, buyekeza ikhodi yokuqalisa yaleyo nzwa ethile ukuze isebenzise ikheli lesibili.

Inyathelo 3: Hlola Ivolthiji Yebhasi Nobude Bamalayini

Qinisekisa ukuthi yonke inzwa esebhasini isebenza ngevolthiji yomqondo efanayo. Uma kumele uhlanganise amamojula e-5V ne-micro:bit ye-3.3V, dlulisa amasignali kumguquli wezinga lomqondo ozinikele osebenza kuzo zombili izindlela, esikhundleni sokuwaxhuma ngokuhambisana. Ngaphezu kwalokho, gcina izintambo ze-jumper zimfushane—izintambo ezinde nezidungekile ze-breadboard zengeza i-capacitance engahlosiwe egoqa amakhona okushaya kwewashi bese kubangela ukulahleka kwamaphakethe.

Inyathelo 4: Vula Izikhawu Zokuphela Kwesikhathi Kudrayivu

Ikhodi endala ye-Arduino yeyame kwimisebenzi evimbayo. Ku-Arduino IDE, ungavimbela i-microcontroller ukuba iqhwale unomphela ngokwengeza isikhawu sokuphela kwesikhathi sebhasi ngemuva kuka-Wire.begin():

Wire.begin();
Wire.setWireTimeout(3000, true); // isikhawu esingu-3ms, setha kabusha ibhasi uma ilenga

Uma ibhasi ikhiyeka ngenxa yentambo exegayo noma ukwenyuka kwamandla kagesi, idrayivu isetha kabusha ngokuzenzakalelayo isixhumi sehadiwe bese iqhubeka nokusebenzisa okusele komjikelezo esikhundleni sokumisa isistimu yonke.

Ukwakha Amasekhethi Aqinile Ekilasini

Ukufundisa abafundi indlela i-I2C esebenza ngayo ngaphakathi kuguqula ukukhiyeka okucasulayo nokuthule kube yisifundo esibambekayo ngeziphrothokholi zokuxhumana. Uma uklamela amakilabhu noma ukulethwa kwekharikhulamu amakhithi wamarobhothi anezinzwa eziningi, ungahlola amabhodi e-breakout amamojula namakhithi ehadiwe yemfundo esitolo se-Sheen Robotics, noma uhlele izindlela zokufunda ezigcwele ngezifundo zethu ezihlelekile ku-Sheen Canvas.

Ngokuphoqelela izintambo ezimfushane, ngokuqinisekisa amakheli ehadiwe ngaphambi kokuhlanganisa amaphrojekthi, nangokufundisa abafundi indlela yokufunda amakheli e-hex esiskenini se-I2C, ungakuqeda ukuqhwala okwesabekayo kwezinzwa eziningi ngaphambi kokuba kuphazamise isifundo sakho.

#microbit#arduino#i2c#izinto zikagesi#ukuxazulula izinkinga

Okunye Ukuqonda Okujulile