Podstawy Techniki
Mikroprocesorowej
Magistrala szeregowa SPI
Serial Peripherial Interface
Wydział Elektroniki Mikrosystemów i Fotoniki
dr inż. Piotr Markowski
Na prawach rękopisu.
Komunikacja cyfrowa
SPI – najważniejsze cechy
• Synchroniczny transfer danych między:
- mikrokontrolerem a urządzeniami peryferyjnymi - mikrokontrolerami
• dwukierunkowa
• 3 linie transferu + 1 linia trybu pracy • tryb pracy MASTER lub SLAVE
• kolejność transmisji: MSB -> LSB lub LSB -> MSB • 7 szybkości transmisji
• przerwanie (zakończenie transmisji)
SPI – sterowanie
Rejestry:
SPCR (SPI Control Register) SPSR (SPI Status Register) SPDR (SPI Data Register) Przerwanie: Zakończenie transmisji Flaga SPIF (SPSR) Włączanie SPIE (SPCR) Wektor 0x00A
SPI struktura sieci
MISO – Master Input / Slave Output MOSI – Master Output / Slave Input
M
S
SCK OS
S
SCK SCK SCK I O I O I O I SS SS SS SS – Slave Select SCK – SPI Clock SSSPI struktura sieci
SPI struktura sieci
MISO – Master Input / Slave Output MOSI – Master Output / Slave Input SS – Slave Select SCK – SPI Clock
M
SCK SS SS MOSI MISOM
SCK MOSI MISOPiny
Tryb MASTER: MOSI, SCK : MISO : SS : Tryb SLAVE: MISO : MOSI, SCK, SS:Pin SS
Tryb SLAVE: SS –
SS = 0 => SS = 1 =>
(nawet gdy nie wszystkie dane przekazane) Tryb MASTER:
SS –
Musi być = , inaczej MASTER zmieni się w SLAVE
SS – => praca „bezpieczna” (zawsze M) SS – => tryb pracy (M,S) zależny od stanu Inny MASTER w strukturze chce przejąć kontrolę:
bit MSTR (SPCR) « 0; MOSI, SCK -> wejścia
flaga SPIF (SPSR) « 1 (informuje o zmianie trybu)
Konfiguracje sieci - podsumowanie
Rejestry magistrali
SPI
SPI Control Register – SPCR
Mody 0, 2
CPHA = 0
Mody 1, 3
CPHA = 1
SPI Control Register – SPCR
SPI Status Register – SPSR
SPI Data Register – SPDR
dr inż. Piotr Markowski © 2015Przykładowe zagadnienia
sprawdzające
1. Schemat połączenia układów w magistrali.
2. Schemat komunikacji – rozpoczęcie, sposób przesyłu danych.
3. Wejścia i wyjścia – rodzaje, zastosowania.
4. Rola nóżki Slave_Select (Chip_Select) i sposoby jej łączenia.
5. Rodzaje transmisji danych (szeregowa, równoległa, synchroniczna, asynchroniczna).
6. Przerwania – rodzaje.
7. Daisy chain SPI.