Page 1 sur 1

[résolu] Capteur et level shifter sur MCP3008

Posté : mar. 29 oct. 2019 08:23
par esope60
Salut à tous,

Pour mon projet j'avais besoin de récupérer la valeur d'un potentiometre via un MCP3008, en plus de voir une LED correspondant varier.
Le MCP était en 3.3V, cela fonctionnait mais rapidement je continuait de tourner le potar sans voir la valeur max changer.
Il fallait donc améliorer l'échantillionage, pour ça il suffit d'alimenter le MCP en 5V au lieu de 3.3V. Mais le problemes c'est que les 4 signaux unidirectionnels récupérés par le RPI (MISO, MOSI, CLK, CE0) sont en 3.3V tout comme les GPIO, donc ça aurait vite claqué.
Du coup la solution était d'utiliser un level shifter, qui réhausse ou abaisse le signal en fonction du besoin.
J'ai choisi ce modèle et ça fonctionne super bien !
https://fr.aliexpress.com/item/19727898 ... 6c37oSZA9E

Ma valeur haute récupérée s'arrete au moment ou le potar arrive en fin de course, j'ai donc toute la plage de valeur.
Il suffit d'alienter le Level shifter en 3.3V et en 5V, et ensuite de mettre chaque signal recu sur les HV (high voltage), coté MCP, et le signaux récupérés sur les pattes LV (LOW voltage) coté RPI.

Et pas testé mais à priori ce modèle fonctionnerait aussi pour l'I2C.

Voilà si ça peut servir à quelqu'un.

Image

Re: [résolu] Capteur et level shifter sur MCP3008

Posté : mar. 29 oct. 2019 17:10
par Bud Spencer
Sur une liaison SPI, seul la ligne MISO est en entrée coté maitre, il suffit donc de juste mettre une résistance sur cette ligne pour utiliser un slave 5v avec un master 3.3 v (ou 2 résistances montées en diviseur si on a pas envie d'expliquer comment calculer une résistance unique :lol: ). J'avais déjà expliquer ca ici -> viewtopic.php?f=44&t=3033&start=70#p27795 ;)