Bonjour,
J’ai un programme en C++ qui écrit/lit une mémoire EEPROM 93LC46 via SPI (/dev/spidev0.1) :
- PIN19 GPIO10 MOSI
- PIN21 GPIO9 MISO
- PIN23 GPIO11 CLOCK
- PIN26 GPIO7 CS
- PIN20 GROUND
- PIN17 POWER 3.3v
Le programme tourne parfaitement sur un raspberry pi 3B+ avec une image stretch.
Sur cette même machine mais avec une image récente (Raspberry Pi OS port from Bookworm 32 ou 64 bit) le programme n’arrive pas à communiquer correctement.
J’ai regardé ce qu’il se passait de plus près à l’oscilloscope et il y a une différence indépendante de mon programme qui à mon sens pose problème :
- dans la configuration qui fonctionne (stretch ou jusqu’à buster Index of /raspbian/images/raspbian-2020-02-14) le signal CS (PIN26 GPIO7) est bas
- dans la configuration qui ne fonctionne pas (avec tout OS plus récent) le signal CS (PIN26 GPIO7) est haut
Peu-être lié au commit spi: bcm2835: fix gpio cs level inversion · raspberrypi/linux@5e31ba0 · GitHub qui semble être la date à partir de laquelle mon programme ne fonctionne plus sur les OS compilés après…
Y a-t-il un moyen de configurer un raspberry pour avoir le PIN26 GPIO7 en signal bas par défaut ?