reklama

Raspberry Pi lze použít pro téměř cokoli. Z domácí mediální centra na vlastní retro herní nastavení, lze s jistotou říci, že počítače Pi a podobné jednodeskové počítače se stávají všudypřítomné.

Když začnete experimentovat s Špendlíky GPIO na Raspberry Pi, věci se stávají ještě zajímavějšími. Již jsme se zabývali tím, co všechny tyto kolíky dělají, takže se nyní podívejme, jak na vašem Pi povolit protokoly SPI a I2C a proč byste mohli chtít.

Co je SPI na Raspberry Pi?

Než se ponoříme, krátce si ukážeme, co tyto dva protokoly dělají.

SPI (nebo sériové periferní rozhraní) umožňuje mikrokontroléru, jako je Pi, komunikovat s více než 100 periferními komponenty najednou. Mikrokontrolér funguje jako „master“ pro všechny „slave“ komponenty a může s nimi komunikovat vysokou rychlostí. Tento diagram popisuje jednoduché připojení SPI:

SPI a I2C na Raspberry Pi
Obrázek Kredit: Cburnett /wikipedia.org

Pokud se jedná o vaše první čtení o SPI, může se to zdát docela zastrašující, ale držte se ho! SCLK je rychlost hodin nastavená masterem, která určuje rychlost sdílení informací mezi zařízeními.

instagram viewer

V každém cyklu (nebo „tick“) hodin, master i slave posílají a přijímají jeden bit informací. To je to, co MOSI (Master Out Slave In) a MISO (Master In Slave Out) kolíky jsou pro.

SS nebo Pin pro výběr slave (označený CE na CE Pi nebo CE1) se používá k tomu, aby zařízení slave komunikovalo s masterem - nebo ne - v kterémkoli daném okamžiku. Ve většině případů vyžaduje každé slave zařízení svůj vlastní pin SS, ale může sdílet piny SCLK, MOSI a MISO.

Některá zařízení mohou být „daisy chained“ pro sdílení SS pinů, přičemž celkové použité kolíky se sníží na čtyři plus dvě pro napájení a uzemnění. Je známo, že SPI je neuvěřitelně rychlý a běžně se používá v posuvných registrech nebo ADC (převodníky analogového na digitální) pro předávání dat mezi zařízeními.

Rozšířená spuštění Kanál YouTube má snadno sledovatelný primer pro SPI, který protokol dále vysvětluje:

Jak povolit SPI na Raspberry Pi

Chcete-li povolit SPI na Raspberry Pi, otevřete raspi-config z terminálu zadáním:

sudo raspi-config

Navigovat do Možnosti rozhraní, a v následující nabídce vyberte P4 SPI Povoluje / zakazuje automatické načítání modulu jádra SPI. Vybrat Ano na příkazovém řádku okna. SPI je nyní povoleno!

SPI a I2C na Raspberry Pi

Případně můžete povolit SPI z /boot/config.txt soubor. Otevřete okno terminálu a zadejte:

sudo nano /boot/config.txt

Hledejte řádek, který čte # dtparam = spi = on a odstranit # symbol. Ať už povolíte SPI, restartujte Pi a SPI.

Co můžete dělat s SPI na Raspberry Pi?

I když existují stovky různých projektů využívajících mnoho různých periferií SPI, dobrý startovací projekt programuje vlastní čtečku RFID.

Použili jsme Čtečka MFRC-522 v našem DIY Smart Lock s Arduino a výukovým programem RFID DIY Smart Lock s Arduino a RFIDZde je návod, jak vytvořit jednoduchý inteligentní zámek založený na RFID pomocí Arduino jako páteře a několika levných komponent. Přečtěte si více . Pro úvod do RFID s příchutí Raspberry Pi se podívejte na Piddlerintheroot je in-hloubka Instructable.

Toto nastavení není jen pro hobby elektroniku. V našem sbírka nejlepších projektů Raspberry Pi 13 nejlepších projektů Raspberry Pi roku 2017Tyto působivě kreativní projekty Raspberry Pi vás budou odfouknout. Přečtěte si více , představovali jsme komplexní systém MES, který pracuje s Raspberry Pi a RFID, jako součást rozsáhlého továrního provozu v Evropě.

Co je I2C na Raspberry Pi?

I2C je komunikační protokol vytvořený společností Phillips Electronics, která zaznamenala nárůst použití v hobby projektech založených na mikrokontroléru. Důvod je zřejmý - používá pouze dva dráty namísto minimálních čtyř SPI. Je také dobře podporován uživatelskými knihovnami. Existuje mnoho komponent určených pro použití s ​​I2C na Raspberry Pi. I když je pomalejší než SPI, stále funguje dostatečně rychle pro většinu každodenních použití.

Podobně jako SPI má protokol i mistr zařízení, jako je Pi, a otrok zařízení, jako je obrazovka, posuvný registr nebo ovladač motoru.

První spojení mezi zařízeními je SCL (Serial Clock), které je nastaveno masterem pro synchronizaci přenosu dat. Druhý řádek je SDA (Serial Data), která přenáší data tam a zpět mezi všemi zařízeními na sběrnici I2C.

Hlavní zařízení zahájí komunikaci s a Start bit a sedm bitů hexadecimální adresa. To musí odpovídat slave zařízení, aby mohla komunikovat. Takto lze tolik zařízení použít pouze se dvěma dráty.

Hlavní zařízení pak určuje, zda chce číst nebo zapisovat (R / W) otrok před přijetím potvrzení nebo ACK zadní.

YouTuber poskytuje snadno sledovatelný a podrobný pohled na I2C Rozšířená spuštění:

Jak povolit I2C na Raspberry Pi

I2C je také povolen na Pi přes raspi-config Jídelní lístek. Otevřete terminál a zadejte:

sudo raspi-config

Pomocí kláves se šipkami vyberte Možnosti rozhraní, následován P5 I2C Aktivuje / deaktivuje automatické načítání modulu jádra I2C. Potvrďte, že chcete protokol povolit, a měla by se zobrazit potvrzovací obrazovka.

SPI a I2C na Raspberry Pi

Stejně jako u SPI můžete I2C také povolit úpravou souboru config.txt. Otevřete terminál a zadejte:

sudo nano /boot/config.txt

Modifikovat #dtparam = i2c_arm = zapnuto, odstranění # symbol.

SPI a I2C na Raspberry Pi

Restartujte svůj Pi a I2C je připraveno jít!

Co můžete dělat s I2C na Raspberry Pi?

I2C je skvělý pro každý projekt, který vyžaduje velké množství výstupů. Typické použití je pro LCD obrazovky, které vyžadují použití až 16 pinů. I2C to snižuje pouze na dva pro komunikaci a dva na sílu a zem.

Mnoho LCD obrazovek přichází s „Batoh“ I2C připojené, což je mnohem jednodušší pro nastavení a uvolnění zbývajících pinů pro ostatní senzory a periferie.

TheRaspberryPiGuy má podrobný návod YouTube o nastavení a používání LCD obrazovky s I2C na Raspberry Pi

Použití SPI a I2C šetří kolíky!

SPI a I2C na Raspberry Pi rozhodně nejsou pro úplné začátečníky z oblasti elektroniky pro hobby, ale také se nemají čeho bát.

Před potápěním by bylo dobré následovat naše průvodce pro začátečníky Raspberry Pi naučit se základy.

Nejlepším způsobem, jak se učit, je projít některé příklady projektů a těšíme se na to, s čím přijdete! Kdo ví co podivné a nádherné Raspberry Pi výtvory 10 nejpodivnějších projektů Raspberry PiV každém z nás je šílený vědec a Raspberry Pi nechává vyjít a hrát si vnitřní loon. Někdy jsou věci divné. Opravdu divné. Přečtěte si více uděláš?

Ian Buckley je nezávislý novinář, hudebník, performer a video producent žijící v Berlíně v Německu. Když nepíše nebo na jevišti, pohrává si s elektronikou pro kutily nebo kódem v naději, že se stane šíleným vědcem.