Jak włączyć SPI / I2C na Raspberry Pi (i do czego ich używać)

  • Gabriel Brooks
  • 0
  • 4117
  • 74
Reklama

Raspberry Pi może być używany do prawie wszystkiego. Od domowych centrów medialnych po niestandardowe konfiguracje gier retro, można śmiało powiedzieć, że Pi i podobne jednopłytowe komputery stają się wszechobecne.

Kiedy zaczniesz eksperymentować z pinami GPIO na Raspberry Pi, sprawy stają się jeszcze bardziej interesujące. Omówiliśmy już, co robią te wszystkie piny, więc teraz spójrzmy, jak włączyć protokoły SPI i I2C na twoim Pi i dlaczego możesz chcieć.

Co to jest SPI na Raspberry Pi?

Przed zanurzeniem omówmy pokrótce, co robią te dwa protokoły.

SPI (lub Serial Peripheral Interface) pozwala mikrokontrolerowi, na przykład Pi, komunikować się z ponad 100 elementami peryferyjnymi jednocześnie. Mikrokontroler działa jak “mistrz” do wszystkich “niewolnik” elementy i może komunikować się z nimi z dużą prędkością. Ten schemat przedstawia proste połączenie SPI:

Źródło zdjęcia: Cburnett / wikipedia.org

Jeśli po raz pierwszy czytasz o SPI, może wydawać się onieśmielający, ale trzymaj się tego! SCLK to prędkość zegara ustawiona przez urządzenie nadrzędne, która określa szybkość dzielenia się informacjami między urządzeniami.

W każdym cyklu (lub “kleszcz”) zegara, zarówno master, jak i slave wysyłają i odbierają jeden bit informacji. Oto co MOSI (Master Out Slave In) i MISO Styki (Master In Slave Out) są dla.

The SS lub Slave Select pin (oznaczony CE0 lub CE1 na Pi) służy do informowania urządzenia slave o komunikacji z urządzeniem nadrzędnym lub nie w danym momencie. W większości przypadków każde urządzenie podrzędne wymaga własnego pinu SS, ale może współdzielić piny SCLK, MOSI i MISO.

Niektóre urządzenia mogą być “przykuty łańcuchem” aby udostępnić pin SS, zmniejszając całkowitą liczbę używanych pinów do czterech plus dwa dla zasilania i uziemienia. SPI jest znany z tego, że jest niesamowicie szybki i jest powszechnie stosowany w rejestrach przesuwnych lub ADC (przetwornikach analogowo-cyfrowych) do przesyłania danych między urządzeniami.

Rozszerzony startups Kanał YouTube ma łatwy do naśladowania element SPI wyjaśniający protokół dalej:

Jak włączyć SPI na Raspberry Pi

Aby włączyć SPI na Raspberry Pi, otwórz raspi-config z terminala, wprowadzając:

sudo raspi-config

Nawigować do Opcje interfejsu, i w następującym menu wybierz P4 SPI Włącza / wyłącza automatyczne ładowanie modułu jądra SPI. Wybierz tak w oknie monitu. SPI jest teraz włączony!

Alternatywnie możesz włączyć SPI z /boot/config.txt plik. Otwórz okno terminala i wprowadź:

sudo nano /boot/config.txt

Poszukaj linii, która czyta # dtparam = spi = wł i usuń # symbol. Niezależnie od tego, w jaki sposób włączysz SPI, uruchom ponownie Pi i SPI.

Co możesz zrobić z SPI na Raspberry Pi?

Chociaż istnieją setki różnych projektów wykorzystujących wiele różnych urządzeń peryferyjnych SPI, dobrym początkiem jest zaprogramowanie własnego czytnika RFID.

Korzystaliśmy z czytnika MFRC-522 w naszym samouczku DIY Smart Lock z Arduino i RFID DIY Smart Lock z Arduino i RFID DIY Smart Lock z Arduino i RFID Oto jak zbudować prosty inteligentny zamek oparty na RFID, używając Arduino jako szkieletu i kilka tanich komponentów. . Aby zapoznać się z wprowadzeniem RFID o smaku Raspberry Pi, zapoznaj się z szczegółowymi instrukcjami instruktażowymi piddlerintheroot.

Tego rodzaju konfiguracja nie dotyczy tylko elektroniki hobbystycznej. W naszej kolekcji najlepszych projektów Raspberry Pi 13 najlepszych projektów Raspberry Pi w 2017 r. 13 najlepszych projektów Raspberry Pi w 2017 roku Zachwycą Cię imponująco kreatywne projekty Raspberry Pi. , przedstawiliśmy pełnowymiarowy system MES, który działa z wykorzystaniem Raspberry Pi i RFID, jako część operacji na dużą skalę w Europie.

Co to jest I2C na Raspberry Pi?

I2C to protokół komunikacyjny stworzony przez firmę Phillips Electronics, która odnotowała gwałtowny wzrost popularności w projektach hobbystycznych opartych na mikrokontrolerach. Powód tego jest oczywisty - wykorzystuje tylko dwa przewody zamiast minimum czterech SPI. Jest również dobrze obsługiwany przez biblioteki tworzone przez użytkowników. Istnieje wiele komponentów zaprojektowanych do współpracy z I2C na Raspberry Pi. Chociaż jest wolniejszy niż SPI, nadal działa wystarczająco szybko, aby mógł być używany przez większość codziennych zastosowań.

Podobnie jak SPI, protokół ma mistrz urządzenie, takie jak Pi i a niewolnik urządzenie, takie jak ekran, rejestr przesuwny lub sterownik silnika.

Pierwsze połączenie między urządzeniami to SCL (Zegar szeregowy), który jest ustawiany przez urządzenie nadrzędne w celu synchronizacji przesyłania danych. Druga linia to SDA (Serial Data), która przesyła dane tam iz powrotem między wszystkimi urządzeniami na magistrali I2C.

Urządzenie nadrzędne rozpoczyna komunikację z początek bit i siedmiobitowy adres heksadecymalny. To musi pasować do urządzenia podrzędnego, aby mogły się komunikować. Tak wiele urządzeń może być używanych tylko z dwoma przewodami.

Urządzenie główne określa następnie, czy chce czytać, czy pisać (R / W) niewolnikiem, przed otrzymaniem potwierdzenia lub ACK z powrotem.

Łatwe do naśladowania i dogłębne spojrzenie na I2C jest zapewnione przez YouTuber Augmented Startups:

Jak włączyć I2C na Raspberry Pi

I2C jest również włączony w Pi za pośrednictwem raspi-config menu. Otwórz terminal i wprowadź:

sudo raspi-config

Użyj klawiszy strzałek, aby wybrać Opcje interfejsu, śledzony przez P5 I2C Włącza / wyłącza automatyczne ładowanie modułu jądra I2C. Potwierdź, że chcesz włączyć protokół, i powinieneś zobaczyć ekran potwierdzenia.

Podobnie jak w przypadku SPI, możesz także włączyć I2C, modyfikując plik config.txt. Otwórz terminal i wprowadź:

sudo nano /boot/config.txt

Zmodyfikuj #dtparam = i2c_arm = wł, usunięcie # symbol.

Uruchom ponownie Pi, a I2C jest gotowy do pracy!

Co możesz zrobić z I2C na Raspberry Pi?

I2C jest świetny dla każdego projektu, który wymaga dużej liczby wyników. Typowym zastosowaniem są ekrany LCD, które wymagają do 16 styków. I2C sprowadza to tylko do dwóch dla komunikacji i dwóch dla zasilania i uziemienia.

Wiele ekranów LCD jest wyposażonych w I2C “plecak” dołączone, co znacznie ułatwia konfigurację i zwalnia resztę styków Pi dla innych czujników i urządzeń peryferyjnych.

TheRaspberryPiGuy ma szczegółowy samouczek YouTube na temat konfigurowania i używania ekranu LCD z I2C na Raspberry Pi

Używanie SPI i I2C zapisuje kołki!

SPI i I2C na Raspberry Pi z pewnością nie są dla początkujących miłośników elektroniki, ale też nie należy się ich obawiać.

Przed zanurzeniem się warto zapoznać się z naszym przewodnikiem dla początkujących po Raspberry Pi, aby poznać podstawy.

Praca nad niektórymi przykładowymi projektami jest najlepszym sposobem na naukę, a my czekamy na to, co wymyślisz! Kto wie, jakie dziwne i cudowne kreacje Raspberry Pi 10 najdziwniejszych projektów Raspberry Pi 10 najdziwniejszych projektów Raspberry Pi W każdym z nas jest szalony naukowiec, a Raspberry Pi pozwala wyjść z gry. Czasami rzeczy stają się dziwne. Bardzo dziwne. zrobisz?




Jeszcze bez komentarzy

O nowoczesnej technologii, prostej i niedrogiej.
Twój przewodnik w świecie nowoczesnych technologii. Dowiedz się, jak korzystać z technologii i gadżetów, które nas otaczają każdego dnia i dowiedz się, jak odkrywać ciekawe rzeczy w Internecie.