26. Lektion: SPI: Difference between revisions
Jump to navigation
Jump to search
| Line 31: | Line 31: | ||
[[file:SPI_modes.svg.png|SPI_Modeses]] | [[file:SPI_modes.svg.png|SPI_Modeses]] | ||
{| class="wikitable" style="margin:left" | |||
|+ SPI Modes | |||
|- | |||
! SPI Mode !! CPOL !! CPHA | |||
|- | |||
| 0|| 0 || 0 | |||
|- | |||
| 1|| 0|| 1 | |||
|- | |||
| 2|| 1|| 0 | |||
|- | |||
| 3 || 1|| 1 | |||
|} | |||
=== SPI des Pico=== | === SPI des Pico=== | ||
Revision as of 19:30, 14 December 2023
Das Serielle Periphere Interface
Dem Seriellen Peripheren Interface (SPI) liegt ein sehr einfaches Konzept zu Grunde. Dafür benötigt es mehr Leitungen als die I2C Schnittstelle:
- MOSI
- Master Out Slave In
- MISO
- Master In Slave Out
- SCK
- Clock
- D/C
- Data/Control
- CS / SS
- Chip Select
Das SPI Konzept
SPI arbeitet nach dem Master / Slave Konzept. Der Master kontrolliert die Kommuniktion.
Die Hardware besteht im Prinzip aus einen 8-Bit Schieberegister.
Quelle: https://www-user.tu-chemnitz.de/~heha/hsn/ATmegaX8.chm/19.htm
Die SPI Geräte können auf 2 Arten miteinander verbunden werden. Sie können parallel oder hintereinander (Dasy Chain) verbunden werden.
SPI Modes
| SPI Mode | CPOL | CPHA |
|---|---|---|
| 0 | 0 | 0 |
| 1 | 0 | 1 |
| 2 | 1 | 0 |
| 3 | 1 | 1 |
SPI des Pico
Hardware SPI
Die default Einstellungen für Hardware SPI findet man so:
from machine import SPI print(SPI(0)) print(SPI(1)) SPI(0, baudrate=992063, polarity=0, phase=0, bits=8, sck=18, mosi=19, miso=16) SPI(1, baudrate=992063, polarity=0, phase=0, bits=8, sck=10, mosi=11, miso=8)
