Forum: Mikrocontroller und Digitale Elektronik Spannungsversorgung nRF24L01+ schalten


von Theo (Gast)


Lesenswert?

Hallo,
da der nRF24L01+ ja leider keinen Reset-Befehl kennt, will ich ihm dazu 
einfach die Spannungsversorgung für eine ausreichende Zeit wegnehmen.
Ich dachte dabei, der Einfachheit halber einfach die Masse des Chips mit 
einem NPN-Transistor wegzunehmen. Sperrt der Transistor, hat der Chip 
keine Masse mehr.
Ist das eine gute Idee oder könnte das den Chip beschädigen, wenn 
plötzlich alles Betriebsspannung hat?

von Arduinquäler (Gast)


Lesenswert?

Theo schrieb:
> Ist das eine gute Idee oder könnte das den Chip beschädigen, wenn
> plötzlich alles Betriebsspannung hat?

Ich will es mal so formulieren (aus eigener Erfahrung):
Wenn du beim nRF24L01+ einen Reset brauchst machst du
etwas falsch, entweder in der Initialisierung oder im
Register Handshake.

Das bedingt allerdings bei einem Restart dass wirklich
alles gesetzt wird was man braucht ....

Siehe auch

Beitrag "NRF24L01+ test program for Arduino Mega"
Beitrag "NRF24L01+ test program for Arduino Uno"
Beitrag "NRF24L01 - Testprogramm für Windows PC"

von Sascha_ (Gast)


Lesenswert?

Mein Verständnis von CMOS sagt mir, dass dann alle Ausgangstransistoren 
an den GPIO Pins sperren.

Aber das heisst nicht, dass da nicht trotzdem was kaputtgehen kann.

von Axel S. (a-za-z0-9)


Lesenswert?

Theo schrieb:
> Ich dachte dabei, der Einfachheit halber einfach die Masse des Chips mit
> einem NPN-Transistor wegzunehmen. Sperrt der Transistor, hat der Chip
> keine Masse mehr.
> Ist das eine gute Idee

Nein. Bzw nur dann, wenn du auch alle anderen Verbindungen zwischen dem 
µC und dem nRF kappst. Wenn auch nur ein Pin deines µC ein L ausgibt, 
dann wird der nRF über die Schutzdiode an diesem Eingang wieder mit 
Betriebsspannung versorgt. Das gleiche Problem besteht übrigens auch, 
wenn du Vcc des nRF wegschaltest und der µC irgendwo ein H ausgibt.

Die einzige Möglichkeit, das sauber hinzubekommen, liegt darin, die 
Eingänge des nRF mit Pullup/Pulldown-Widerständen (je nach Funktion) zu 
versehen und die entsprechen Pins des µC als Eingänge zu schalten.

von Theo (Gast)


Angehängte Dateien:

Lesenswert?

Ist also nicht sehr elegant. Dachte ich mir.

Jetzt habe ich mal spontan das hier ausgesponnen.

R1 soll die zu schaltende "Last" sein (ein Rauchmelder). Eigentlich will 
ich mit der Schaltung einen monatlichen Selbsttest des Melders machen, 
ohne jeden Testknopf drücken zu müssen. Detektieren werde ich das dann 
an einem anderen Pin des Melders, der sonst für die Vernetzung 
vorgesehen ist. Die 3.3 bzw. 0 V rechts sollen den Pin des Controllers 
simulieren.
Ist das auch krank oder kann man das prinzipiell so machen? 3 
Widerstände und 2 Transistoren kosten zusammen wahrscheinlich ca. 5 Cent 
und machen mich bei meinen 10-15 Platinen später sicherlich nicht arm. 
Zumal die maximal 5x5 cm ja auch irgendwie gefüllt werden müssen und ich 
auch ein wenig Designen und Routen über den Winter üben will...

von Theo (Gast)


Lesenswert?

Ei, ei, ei,
da bin ich doch im Projekt durcheinandergekommen. Aber das Prinzip ist 
ja das Gleiche: Schalten der Betriebsspannung.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.