Spisu treści:
- Krok 1: SZEREGOWY VS. KOMUNIKACJA RÓWNOLEGŁA
- Krok 2:
- Krok 3:
- Krok 4: WPROWADZENIE DO KOMUNIKACJI SPI
- Krok 5:
- Krok 6:
- Krok 7:
- Krok 8: JAK DZIAŁA SPI
- Krok 9:
- Krok 10:
- Krok 11:
- Krok 12:
- Krok 13: ZALETY I WADY SPI
Wideo: PODSTAWY PROTOKOŁU KOMUNIKACJI SPI: 13 kroków
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:31
Kiedy podłączasz mikrokontroler do czujnika, wyświetlacza lub innego modułu, czy zastanawiasz się kiedyś, jak te dwa urządzenia komunikują się ze sobą? Co dokładnie mówią? Jak są w stanie się zrozumieć?
Komunikacja między urządzeniami elektronicznymi przypomina komunikację między ludźmi. Obie strony muszą mówić tym samym językiem. W elektronice języki te nazywane są protokołami komunikacyjnymi. Na szczęście dla nas jest tylko kilka protokołów komunikacyjnych, które musimy znać, budując większość projektów elektroniki DIY. W tej serii artykułów omówimy podstawy trzech najpopularniejszych protokołów: Serial Peripheral Interface (SPI), Inter-Integrated Circuit (I2C) oraz Universal Asynchronous Receiver/Transmitter (UART). Najpierw zaczniemy od kilku podstawowych pojęć dotyczących komunikacji elektronicznej, a następnie wyjaśnimy szczegółowo, jak działa SPI. W następnym artykule omówimy komunikację opartą na UART, a w trzecim zagłębimy się w I2C. SPI, I2C i UART są nieco wolniejsze niż protokoły takie jak USB, Ethernet, Bluetooth i WiFi, ale są o wiele prostsze i zużywają mniej zasobów sprzętowych i systemowych. SPI, I2C i UART są idealne do komunikacji między mikrokontrolerami oraz między mikrokontrolerami a czujnikami, gdzie nie ma potrzeby przesyłania dużych ilości danych o dużej prędkości.
Krok 1: SZEREGOWY VS. KOMUNIKACJA RÓWNOLEGŁA
Urządzenia elektroniczne komunikują się ze sobą, przesyłając bity danych przez przewody fizycznie połączone między urządzeniami. Bit jest jak litera w słowie, z wyjątkiem 26 liter (w alfabecie angielskim), bit jest binarny i może być tylko 1 lub 0. Bity są przesyłane z jednego urządzenia do drugiego przez szybkie zmiany napięcia. W systemie pracującym przy napięciu 5 V bit 0 jest przesyłany jako krótki impuls 0 V, a 1 bit jest przesyłany krótkim impulsem 5 V.
Bity danych mogą być przesyłane równolegle lub szeregowo. W komunikacji równoległej bity danych są przesyłane jednocześnie, każdy osobnym przewodem. Poniższy schemat przedstawia równoległą transmisję litery „C” w formacie binarnym (01000011):
Krok 2:
W komunikacji szeregowej bity są przesyłane jeden po drugim jednym przewodem. Poniższy schemat przedstawia transmisję szeregową litery „C” w postaci binarnej (01000011):
Krok 3:
Krok 4: WPROWADZENIE DO KOMUNIKACJI SPI
SPI to powszechny protokół komunikacyjny używany przez wiele różnych urządzeń. Na przykład moduły kart SD, moduły czytników kart RFID i bezprzewodowy nadajnik/odbiornik 2,4 GHz wykorzystują SPI do komunikacji z mikrokontrolerami.
Unikalną zaletą SPI jest to, że dane mogą być przesyłane bez przerwy. Dowolna liczba bitów może być wysyłana lub odbierana w ciągłym strumieniu. W przypadku I2C i UART dane przesyłane są w pakietach, ograniczonych do określonej liczby bitów. Warunki startu i stopu definiują początek i koniec każdego pakietu, więc dane są przerywane podczas transmisji. Urządzenia komunikujące się przez SPI są w relacji master-slave. Urządzenie nadrzędne jest urządzeniem sterującym (zwykle mikrokontrolerem), podczas gdy urządzenie podrzędne (zwykle czujnik, wyświetlacz lub układ pamięci) przyjmuje instrukcje od urządzenia nadrzędnego. Najprostsza konfiguracja SPI to pojedynczy system nadrzędny, jeden podrzędny, ale jeden nadrzędny może sterować więcej niż jednym podrzędnym (więcej na ten temat poniżej).
Krok 5:
Krok 6:
MOSI (Master Output/Slave Input) - Linia dla urządzenia nadrzędnego do wysyłania danych do urządzenia podrzędnego.
MISO (wejście główne/wyjście podrzędne) - Linia dla urządzenia podrzędnego do wysyłania danych do urządzenia nadrzędnego.
SCLK (Clock) – Linia sygnału zegara.
SS/CS (Slave Select/Chip Select) – Linia dla urządzenia nadrzędnego, aby wybrać, do którego urządzenia podrzędnego wysłać dane
Krok 7:
*W praktyce liczba urządzeń podrzędnych jest ograniczona pojemnością obciążenia systemu, co zmniejsza zdolność urządzenia nadrzędnego do dokładnego przełączania między poziomami napięcia.
Krok 8: JAK DZIAŁA SPI
ZEGAR
Sygnał zegarowy synchronizuje wyprowadzanie bitów danych z urządzenia nadrzędnego do próbkowania bitów przez urządzenie podrzędne. W każdym cyklu zegarowym przesyłany jest jeden bit danych, więc szybkość przesyłania danych zależy od częstotliwości sygnału zegara. Komunikacja SPI jest zawsze inicjowana przez mastera, ponieważ master konfiguruje i generuje sygnał zegara.
Każdy protokół komunikacyjny, w którym urządzenia współdzielą sygnał zegarowy, jest znany jako synchroniczny. SPI to synchroniczny protokół komunikacyjny. Istnieją również metody asynchroniczne, które nie wykorzystują sygnału zegarowego. Na przykład w komunikacji UART obie strony są ustawione na wstępnie skonfigurowaną szybkość transmisji, która dyktuje prędkość i czas transmisji danych.
Sygnał zegarowy w SPI można modyfikować za pomocą właściwości polaryzacji zegara i fazy zegara. Te dwie właściwości współpracują ze sobą, aby określić, kiedy bity są wyprowadzane i kiedy są próbkowane. Polaryzacja zegara może być ustawiona przez mastera, aby umożliwić wysyłanie bitów i próbkowanie na zboczu narastającym lub opadającym cyklu zegara. Fazę zegara można ustawić tak, aby wyjście i próbkowanie miały miejsce na pierwszym lub drugim zboczu cyklu zegara, niezależnie od tego, czy rośnie, czy opada.
WYBIERZ SLAVE
Master może wybrać, z którym slave'em chce rozmawiać, ustawiając linię CS/SS slave'a na niski poziom napięcia. W stanie bezczynności, bez transmisji, linia wyboru urządzenia podrzędnego jest utrzymywana na wysokim poziomie napięcia. W urządzeniu nadrzędnym może być dostępnych wiele styków CS/SS, co umożliwia równoległe podłączenie wielu urządzeń podrzędnych. Jeśli obecny jest tylko jeden pin CS/SS, wiele urządzeń podrzędnych może być podłączonych do urządzenia nadrzędnego poprzez łączenie łańcuchowe.
WIELU NIEWOLNIKÓW SPI
można skonfigurować do pracy z jednym urządzeniem nadrzędnym i jednym urządzeniem podrzędnym, a także z wieloma urządzeniami podrzędnymi kontrolowanymi przez jednego urządzenia nadrzędnego. Istnieją dwa sposoby podłączenia wielu urządzeń podrzędnych do urządzenia nadrzędnego. Jeśli master ma wiele pinów wyboru urządzenia podrzędnego, urządzenia podrzędne można podłączyć równolegle w następujący sposób:
Krok 9:
Krok 10:
MOSI I MISO
Urządzenie nadrzędne przesyła dane do urządzenia podrzędnego bit po bicie, szeregowo przez linię MOSI. Slave odbiera dane wysłane z mastera na pinie MOSI. Dane wysyłane z urządzenia nadrzędnego do urządzenia podrzędnego są zwykle wysyłane najpierw z najbardziej znaczącym bitem. Urządzenie podrzędne może również wysyłać dane z powrotem do urządzenia nadrzędnego przez linię MISO w trybie szeregowym. Dane przesyłane z urządzenia podrzędnego z powrotem do urządzenia nadrzędnego są zwykle wysyłane najpierw z najmniej znaczącym bitem. ETAPY TRANSMISJI DANYCH SPI 1. Master wyprowadza sygnał zegarowy:
Krok 11:
Jeśli dostępny jest tylko jeden pin wyboru urządzenia podrzędnego, urządzenia podrzędne można łączyć łańcuchowo w następujący sposób:
Krok 12:
MOSI I MISO
Urządzenie nadrzędne przesyła dane do urządzenia podrzędnego bit po bicie, szeregowo przez linię MOSI. Slave odbiera dane wysłane z mastera na pinie MOSI. Dane wysyłane z urządzenia nadrzędnego do urządzenia podrzędnego są zwykle wysyłane najpierw z najbardziej znaczącym bitem.
Urządzenie podrzędne może również wysyłać dane z powrotem do urządzenia nadrzędnego przez linię MISO w trybie szeregowym. Dane przesyłane z urządzenia podrzędnego z powrotem do urządzenia nadrzędnego są zwykle wysyłane najpierw z najmniej znaczącym bitem.
KROKI TRANSMISJI DANYCH SPI
*Uwaga Obrazy są wymienione na liście obój, który można łatwo odróżnić
1. Master wyprowadza sygnał zegarowy:
2. Master przełącza pin SS/CS na stan niskiego napięcia, który aktywuje slave:
3. Urządzenie nadrzędne wysyła dane po jednym bicie do urządzenia podrzędnego wzdłuż linii MOSI. Niewolnik odczytuje bity w miarę ich odbierania:
4. Jeśli potrzebna jest odpowiedź, urządzenie podrzędne przesyła dane po jednym bicie do urządzenia nadrzędnego wzdłuż linii MISO. Mistrz odczytuje bity w miarę ich odbierania:
Krok 13: ZALETY I WADY SPI
Korzystanie z SPI ma pewne zalety i wady, a jeśli masz wybór między różnymi protokołami komunikacyjnymi, powinieneś wiedzieć, kiedy użyć SPI zgodnie z wymaganiami twojego projektu:
ZALETY
Brak bitów startu i stopu, dzięki czemu dane mogą być przesyłane strumieniowo w sposób ciągły bez przerw Brak skomplikowanego systemu adresowania typu slave, takiego jak I2C Wyższa szybkość przesyłania danych niż I2C (prawie dwa razy szybciej) Oddzielne linie MISO i MOSI, dzięki czemu dane mogą być wysyłane i odbierane jednocześnie czas
NIEDOGODNOŚCI
Wykorzystuje cztery przewody (I2C i UART używają dwóch) Brak potwierdzenia, że dane zostały pomyślnie odebrane (I2C ma to) Brak formy sprawdzania błędów, takiej jak bit parzystości w UART Tylko pozwala na pojedynczy master Mam nadzieję, że ten artykuł dał ci lepsze zrozumienie SPI. Przejdź do drugiej części tej serii, aby dowiedzieć się o komunikacji opartej na UART, lub do części trzeciej, w której omawiamy protokół I2C.
Jeśli masz jakieś pytania, możesz je zadać w sekcji komentarzy, jesteśmy tutaj, aby pomóc. I koniecznie podążaj
Pozdrawiam: M. Junaid
Zalecana:
Jak prawidłowo zmierzyć pobór mocy modułów komunikacji bezprzewodowej w dobie niskiego poboru mocy?: 6 kroków
Jak prawidłowo zmierzyć pobór mocy modułów komunikacji bezprzewodowej w dobie niskiego poboru mocy?: Niski pobór mocy jest niezwykle ważnym pojęciem w Internecie rzeczy. Większość węzłów IoT musi być zasilana bateriami. Tylko poprzez prawidłowe zmierzenie poboru mocy modułu bezprzewodowego możemy dokładnie oszacować, ile baterii
D4E1 Pomoc w komunikacji: 7 kroków
D4E1 Pomoc komunikacyjna: Jacqueline i Gerarda to dwie entuzjastyczne starsze panie. Mieszkają w Zorghotel Heilig Hart w Kortrijk. Ich dzieci przychodzą kilka razy w tygodniu. Obie panie lubią chodzić do parku. Ich dzieci lubią pchać je do przodu na wózku inwalidzkim. Jac
Zrozumienie protokołu IR pilotów klimatyzatora: 9 kroków (ze zdjęciami)
Zrozumienie protokołu IR pilotów klimatyzatora: Od dłuższego czasu uczę się o protokołach IR. Jak wysyłać i odbierać sygnały IR. W tym momencie pozostaje tylko protokół IR pilotów AC. W przeciwieństwie do tradycyjnych pilotów prawie wszystkich urządzeń elektronicznych (powiedzmy telewizor), gdzie
PODSTAWY KOMUNIKACJI UART: 16 kroków
PODSTAWY KOMUNIKACJI UART: Pamiętasz, kiedy drukarki, myszy i modemy miały grube kable z tymi ogromnymi, niezgrabnymi złączami? Tych, które dosłownie trzeba było wkręcić w komputer? Te urządzenia prawdopodobnie używały UART do komunikacji z twoim komputerem. Podczas gdy USB ma prawie
Płytka enkodera i dekodera protokołu NEC na podczerwień: 5 kroków
Płytka kodera i dekodera protokołu NEC na podczerwień: Odbiera surowy modulowany lub demodulowany sygnał podczerwieni NEC i konwertuje go na bajty wysyłane przez port szeregowy. Szybkość transmisji szeregowej jest wybierana z dwóch domyślnych prędkości. Domyślny tryb użytkowania wysyła sekwencję poleceń z bajtem ramki