Maître SPI mode 0
DébutantSe connecter →
00:00
01Fonctionnement
Le module implémente un maître SPI en mode 0 (CPOL=0, CPHA=0) avec diviseur d'horloge paramétrable. Une transaction démarre sur commande et transfère les données en série, MSB first. Le module gère le Chip Select et signale la disponibilité.
Le reset est synchrone et actif haut.
Génériques :
g_clk_div: integer (défaut 4) — Nombre de cycles système par demi-période SCK. Avecg_clk_div=4, SCK bascule toutes les 4 cycles → fréquence SCK = Fclk/8.
- Machine à états pour la gestion du protocole
- La fréquence SCK est déterminée par le générique
g_clk_div
02Interface
| Signal | Direction | Largeur | Description |
|---|---|---|---|
i_clk | Entrée | 1 bit | Horloge système |
i_rst | Entrée | 1 bit | Reset synchrone |
i_start | Entrée | 1 bit | Démarrage d'une transaction |
i_data | Entrée | 8 bits | Données à émettre |
i_miso | Entrée | 1 bit | Master In Slave Out |
o_data | Sortie | 8 bits | Données reçues |
o_done | Sortie | 1 bit | '1' pendant l'état DONE |
o_sck | Sortie | 1 bit | Horloge SPI générée |
o_mosi | Sortie | 1 bit | Master Out Slave In |
o_cs_n | Sortie | 1 bit | Chip Select actif bas |