Chargement…
Chargement…
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. Avec g_clk_div=4, SCK bascule toutes les 4 cycles → fréquence SCK = Fclk/8.g_clk_div| 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 |