Chargement…
Chargement…
Maître I2C simplifié qui réalise une seule transaction d'écriture d'adresse (START + 7 bits d'adresse + bit R/W + ACK + STOP).
Comportement :
o_sda et o_scl sont à '1' (lignes relâchées).i_start='1', le module génère un START : o_sda descend pendant que o_scl est haut.i_addr (7 bits, MSB en premier) puis du bit i_rw, sur les fronts descendants de o_scl.o_sda et échantillonne l'ACK de l'esclave.o_sda remonte pendant que o_scl est haut, puis o_done ← '1'.*Reset asynchrone actif haut.*
| Signal | Direction | Largeur | Description |
|---|---|---|---|
i_clk | Entrée | 1 bit | Horloge système |
i_start | Entrée | 1 bit | Déclenchement de la transaction |
i_addr | Entrée | 7 bits | Adresse esclave |
i_rw | Entrée | 1 bit | Bit R/W (0=écriture, 1=lecture) |
o_sda | Sortie | 1 bit | Ligne SDA |
o_scl | Sortie | 1 bit | Ligne SCL |
o_done | Sortie | 1 bit | Transaction terminee |