Serial Peripheral Interface

Z Wikipedii, wolnej encyklopedii
Przejdź do nawigacji Przejdź do wyszukiwania
Najprostsze zastosowanie SPI, tylko jedno urządzenie nadrzędne i jedno urządzenie podrzędne

SPI (ang. Serial Peripheral Interface) – szeregowy interfejs urządzeń peryferyjnych. Jeden z najczęściej używanych interfejsów komunikacyjnych pomiędzy systemami mikroprocesorowymi a układami peryferyjnymi takimi jak: przetworniki ADC/DAC, układy RTC, pamięci EEPROM, pamięci flash, karty MMC/SD/ itp.

Przerzutnik typu D (data) (ang. Flip-flop) – jeden z podstawowych rodzajów przerzutników synchronicznych, nazywany układem opóźniającym. Przerzutnik ten przepisuje stan wejścia informacyjnego D na wyjście Q. Przepisanie informacji następuje tylko przy odpowiednim stanie wejścia zegarowego.Standard RS-232 opisuje sposób połączenia urządzeń DTE (ang. Data Terminal Equipment) tj. urządzeń końcowych danych (np. komputer) oraz urządzeń DCE (ang. Data Communication Equipment), czyli urządzeń komunikacji danych (np. modem). Standard określa nazwy styków złącza oraz przypisane im sygnały a także specyfikację elektryczną obwodów wewnętrznych. Standard ten definiuje normy wtyczek i kabli portów szeregowych typu COM. Standard RS-232 (ang. Recommended Standard) opracowano w 1962 roku na zlecenie amerykańskiego stowarzyszenia producentów urządzeń elektronicznych (Electronic Industries Alliance) w celu ujednolicenia parametrów sygnałów i konstrukcji urządzeń zdolnych do wymiany danych cyfrowych za pomocą sieci telefonicznej.

Komunikacja poprzez SPI odbywa się synchronicznie za pomocą 3 linii:

  1. MOSI (ang. master output slave input) – dane dla układu peryferyjnego,
  2. MISO (ang. master input slave output) – dane z układu peryferyjnego,
  3. SCLK (ang. serial clock) – sygnał zegarowy (taktujący).

Do aktywacji wybranego układu peryferyjnego służy dodatkowo linia SS (ang. Slave Select – wybór układu podrzędnego) lub adresacja układów. W drugim przypadku, w przesyłanej wiadomości zawarty musi być adres urządzenia, które po jego rozpoznaniu przyjmuje pozostałe bajty. Adresowanie układów wykorzystywane jest szczególnie podczas pracy z rozbudowanymi systemami, których poszczególne części można programować niezależnie, także po zamontowaniu na płytce.

Universal Serial Bus, USB, uniwersalna magistrala szeregowa – rodzaj sprzętowego portu komunikacyjnego komputerów, zastępującego stare porty szeregowe i porty równoległe. Został opracowany przez firmy Microsoft, Intel, Compaq, IBM i DEC.Interfejs IEEE 1284 – nazwa 25-pinowego złącza w komputerach osobistych. IEEE 1284 jest portem równoległym wykorzystywanym w głównej mierze do podłączenia urządzeń peryferyjnych: drukarki, skanery, plotery. Został opracowany w 1994 r. przez konsorcjum Network Printing Alliance jako standard zapewniający wsteczną kompatybilność z używanym od lat 70. jednokierunkowym portem Centronics. Zwany jest też portem LPT lub portem równoległym (błędne uproszczenie wynikające z faktu, iż zwykle jest jedynym portem równoległym wyprowadzonym na zewnątrz komputera PC).

Interfejs SPI zbudowany jest na rejestrach przesuwnych, które składają się z przerzutników typu D. Synchronizacja każdego z nich odbywa się za pomocą sygnału zegarowego. Przerzutników jest 8 od 0 do 7. Na wejście przerzutnika nr 0 wprowadzany jest stan logiczny, który uruchamia ramkę danych.

Pamięć flash (ang. flash memory) – rodzaj pamięci EEPROM, pozwalającej na zapisywanie lub kasowanie wielu komórek pamięci podczas jednej operacji programowania. Jest to pamięć trwała (nieulotna) – po odłączeniu zasilania nie traci zapisanych w niej danych.Zegar czasu rzeczywistego (ang. Real-Time Clock RTC) – element systemów komputerowych służącym do odliczania czasu niezależnie od stanu maszyny (pracy, zablokowania, wyłączenia), montowany jest niemalże we wszystkich komputerach osobistych, serwerach i wielu systemach wbudowanych, sterownikach PLC.

Każdy przerzutnik przechowuje jeden bit danych. Interfejs SPI MASTER generuje sygnał zerowy za pomocą generatora. Połączone linie MOSI i MISO tworzą zamknięty pierścień, dzięki czemu transfer danych jest ciągły, ale nie stały. Co osiem cykli zegarowych generatora wysyłany jest 1 bajt danych. Wartość rejestru można zmieniać co 8 cykli zegara.

Przetwornik analogowo-cyfrowy A/C (ang. A/D – analog to digital; ADC – analog to digital converter), to układ służący do zamiany sygnału analogowego (ciągłego) na reprezentację cyfrową (sygnał cyfrowy). Dzięki temu możliwe jest przetwarzanie ich w urządzeniach elektronicznych opartych o architekturę zero-jedynkową oraz gromadzenie na dostosowanych do tej architektury nośnikach danych. Proces ten polega na uproszczeniu sygnału analogowego do postaci skwantowanej (dyskretnej), czyli zastąpieniu wartości zmieniających się płynnie do wartości zmieniających się skokowo w odpowiedniej skali (dokładności) odwzorowania. Przetwarzanie A/C tworzą 3 etapy: próbkowanie, kwantyzacja i kodowanie. Działanie przeciwne do wyżej wymienionego wykonuje przetwornik cyfrowo-analogowy C/A.Przetwornik cyfrowo-analogowy, przetwornik C/A lub DAC (z ang. Digital to Analog Converter, DAC) – przyrząd elektroniczny przetwarzający sygnał cyfrowy (zazwyczaj liczbę binarną w postaci danych cyfrowych) na sygnał analogowy w postaci prądu elektrycznego lub napięcia o wartości proporcjonalnej do tej liczby. Innymi słowy jest to układ przetwarzający dyskretny sygnał cyfrowy na równoważny mu sygnał analogowy.

Przesyłanie data frame przez interfejs SPI nie jest domyślnie nastawione. Może zostać nastawione czy wysyłanie ramek rozpocznie się od najstarszego, czy od najmłodszego bitu. Przesuwanie danych w rejestrach można również ustawić dla zbocza opadającego lub narastającego sygnału SCK.

Zobacz też[ | edytuj kod]

  • RS232
  • USB
  • Port Centronics
  • I²C
  • Przypisy[ | edytuj kod]

    1. y, SPI communication – How SPI works?, 911 Electronic, 11 maja 2020 [dostęp 2020-09-14] (ang.).




    Reklama