-
-
Kursy
»
-
Kurs FPGA Lattice (26). Slave SPI
Kurs FPGA Lattice (26). Slave SPI
Niedziela, 01 Grudzień 2024
Interfejs SPI, obok UART oraz I²C, należy do najczęściej stosowanych łączy komunikacyjnych między mikrokontrolerami i innymi układami scalonymi, takimi jak wyświetlacze, pamięci, czujniki itp. W tym odcinku zobaczymy, jak wykonać moduł pełniący funkcję Slave SPI. Celem naszego ćwiczenia będzie zademonstrowanie komunikacji CPU-FPGA, przy czym CPU będzie odgrywać rolę mastera, wydającego polecenia układowi FPGA za pośrednictwem interfejsu SPI.
Trochę teorii
SPI wprowadza podział na urządzenia typu master oraz slave. Master rozpoczyna i kończy transmisję oraz generuje sygnał zegarowy. Slave musi odpowiadać na polecenia mastera, ale sam nie może zainicjować transmisji. Przy użyciu SPI można połączyć jednego mastera z – teoretycznie – nieskończoną liczbą układów slave. Zaletą SPI jest duża szybkość transmisji – bez najmniejszego problemu uzyskamy przepustowość rzędu 10 Mbit/s, nawet w przypadku prostych i tanich mikrokontrolerów. Współczesne wyświetlacze LCD potrafią odbierać dane przez SPI z prędkością nawet 80 MHz.
SPI korzysta z czterech linii sygnałowych:
SCK (Serial Clock) – sygnał zegarowy generowany przez mastera i odbierany przez wszystkie układy slave.
MOSI (Master Output, Slave Input) – wyjście danych z układu master, połączone z wejściami wszystkich układów slave. Wszystkie slave’y mają zatem możliwość odbierania danych wysyłanych przez mastera, niezależnie od tego, który slave został przez niego wybrany za pomocą aktywnego sygnału CS.
MISO (Master Input,...
Aby kontynuować czytanie wykup
Prenumeratę