Bonjour à tous,
je me suis fait un module relais basé sur un attiny et un module nrf24l01 pour la communication.
Le tout est alimenté par un régulateur hlkpm01 ( 220v - 5v).
Le nrf24l01 ne support que tu 3.3v j'ai donc placé un régulateur 5v - 3.3v
Je rencontre un problème de communication, lorsque le montage est alimenté en 5v et aucun problème lorsque celui-ci est alimenté en 3.3V .
Pour trouver ce problème j'ai utilisé un arduino uno qui m'a permis d'alimenter mon module soit en 5v ou en 3v.
Je pense qu'il y a eu une mauvaise compréhension.
L'attiny est alimenté en 5v et pour le nrf24 j'ai mis un régulateur de tension 5v vers 3v devant afin qu'il ne reçoive uniquement du 3v.
Donc si l'ensemble du montage est alimenté en 5v ( nrf24 forcément en 3v avec le régulateur ) problème de récéption et si le montage est alimenté en 3v ( Attiny84 et nrf24l01 ) aucun problème.
Je ne comprends pas ce qu'il peut provoquer ce problème.
mauvaise compréhension ? sans doute.....sommes nous d'accord sur ce qui suit ?
Ne pas confondre :
-Tension d'alimentation du nrf24l01 (issue du régulateur)
-tension reçue sur ses entrées de signaux, câblées directement à un microcontrolleur alimenté en 5V.
~~Le nrf24L01 "n'aime pas recevoir" sur ses entrées (MOSI, CLK, CE.....) des tensions supérieures à sa tension d'alimentation (~~Le régulateur 3,3V alimentant le nrf24l01 n'à aucune influence sur les niveaux de tensions reçues sur sur MOSI, CLK.....IL n'agit que sur la broche Vcc du nrf)
Pour résoudre ce genre de problème lié à la connection de circuit intégrés alimentés sous des tensions différentes on met en place des 'adptateurs de niveaux logiques' pour les signaux .
Leptro un peu plus haut a évoqué cette question des niveaux de tension appliquée aux entrées de signaux.
Tu n'envoies pas plus de 5V sur les entrées Dx et Ax d'une carte Uno, Mega...(régulateur 5V sur la carte Arduino)
Faire de même avec le nrf24l01 et son régulateur 3,3V = ne pas envoyer plus de 3,3V (Il en sort 5 sur les sorties Dx d'une carte Aduino Uno, Mega.....)
On est d'accord actuellement uniquement la broche vcc du nrf24l01 est alimentée en 3.3v en revanches les autres broches sont reliées directement à celles de l'attiny qui lui est alimenté en 5v.
Donc si je comprend bien, l'ensemble des broches du nrf24l01 doivent recevoir uniquement du 3,3v max.
Qu'est ce que des adaptateurs de niveaux logiques?
Je ne peux pas utiliser le même régulateur que celui qui sert pour l'alimentation de la broche vcc pour l'ensemble des autres broches?
Et ce que je ne comprend pas, c'est qu'avec un Arduino Uno il n'y a pas de problème en utilisant le 3v sur le vcc.
Exemple: https://www.elec-cafe.com/wp-content/uploads/2015/12/nRF24L01_DS18B20_Arduino_UNO_RX_Elec-Cafe.png
Donc si je comprend bien, l'ensemble des broches du nrf24l01 doivent recevoir uniquement du 3,3v max.
Qu'est ce que des adaptateurs de niveaux logiques?
Oui c'est ça (la doc donne 3,6V comme maximum toléré, voir le message #3)
Adaptateurs de niveaux, içi par exemple chez Adafuit
~~L'exemple du blog ne respecte pas les recommendations du fabricant du nrf24l01, il peut par chance 'tomber en marche' !! ~~On trouve fréquemment sur le web des montages 'vite faits' , non reproductibles par manque de prise en compte des conditions d'utilisation des composants.
Désolé !!!! A partir de mon message #5 je suis parti sur l'idée fausse (influence ESP8266 !!) que le nrf24L01 ne supportait pas des signaux 5V sur ses entrées.......FAUX vu l'extrait de notice technique intégré dans mon messsage #3 Le nrf24L01 accepte de recevoir (CLK, MOSI,....) des signaux 5V Pour la compréhension des échanges je laisse en place mes bétises.....
Oui en effet, j'ai un composant 5v ( un relais ) et j'utilise un régulateur 220v - 5v.
Ce que je peux faire c'est de mettre un régulateur 5v -3.3v devant l'attiny afin que toute les broches soit en 3.3v et prendre le 5v de la sortie du régulateur pour alimenter le relais ?
Mais ce que je comprend pas c'est pourquoi il n'y a aucune soucis avec un Arduino Uno en utilisant ce branchement
Ce montage comme celui du blog précédent sont OK (signaux 5V , alimentation du nrf en 3,3V) Encore désolé pour mes 'divagations' ci dessus (messages #5 et #7)
Le seul point faible de ces montages réside dans le fait que les niveau hauts des signaux sortant du nrf (MISO par exemple) sont un peu faibles pour les entrées logiques d'un AT alimenté en 5V . Dans un montage commercial on mettrait dans le sens nrf -> AVR un adaptateur de niveau pour rehausser les niveaux hauts bien au dessus de VCC/2
Quel problème ? (je suis un peu perdu après ces méandres... )
Le problème initial de ton fil de discussion survenait quand le nrf etait alimenté en 5V.
On a vu que c'était interdit. Maintenant qu'il est alimenté en 3,3V que se passe-t-il ?
Non ce n'est pas ça le soucis
Dans tout les cas le nrf24 est alimenté sur le vcc en 3.3v grâce à un régulateur type LM1117 .
Lorsque le montage présent ici est alimenté en 5v le nrf24 ne reçoit pas et lorsque le montage est alimenté en 3v aucun soucis
Tout à fait exact al1fch. J'allais corriger mais ta correction arrive avant que je clique sur "Post".
Je confirme : le NRF24L01 est parfaitement tolérant au 5V sur ses entrées logiques.
Je fais ça pratiquement tous les jours. MYSENSORS et DOMOTICZ oblige ...
Donc Ok pour le régulateur 3.3V, mais aucun besoin d'adaptateur de niveau.
Sur ce schéma d'une prise connectée que j'ai développé vous pouvez le constater : c'est direct.
Pas de soucis, 5V c'est cool, ça passe.
alb12 je ne parviens pas à accéder à ton lien. J'aurais aimé jeter un coup d’œil.
Un point sur les niveaux logiques auquel il faut faire attention, j'en parle en connaissance de cause car je me suis fait avoir moi aussi.
Pour des signaux digitaux tout bête le seuil de déclenchement des entrées de l'avr sont approximativement centrées sur Vcc/2 avec 0,5 V d'hystérésis, donc du 3,3V en entrée cela passe sans difficultés.
MAIS
Pour les signaux issus des blocs d'électronique numérique internes aux microcontrôleur : I2C, SPI la norme est la norme CMOS (niveau bas <= 0,8Vcc; niveau haut >= 0,8 Vcc.
Il y a toujours de la perte, les niveaux que délivre un circuit alimenté sous 3,3V sont toujours légèrement inférieurs à 3,3V, idem pour le 5V bien évidement,.
Le 3,3V comme le 5V sont donnés à +/- 5% .
Un circuit CMOS peut être pil poil à la limite de la norme ou avoir une certaine marge --> cela ne dépend que du lot de fabrication.
Tout cela fait que des schémas trouvés sur internet peuvent être des schémas qui sont tombés en marche par le plus grand des hasards.
Dans les circuits intégrés la dispersion de fabrication est souvent de 10 ou 30% entre les différents lots de fabrication.
Mais à l'intérieur d'un même lot la dispersion n'est que de quelques petits %.
C'est pour cela que valider un montage avec des composants provenant du même sachet n'est qu'illusion.
Je partage l'avis qu'il faut des adaptateurs de niveaux.
Si tu veux utiliser le SPI avec des fréquences élevées il me semble préférable de choisir, maintenant que cela existe à pas cher, un adaptateur de niveaux a circuit intégrés dédié plutôt que les premiers modèles sortis à transistors discrets.