Hallo liebes Forum, ich hab mir ein SD Modul für meinen ATMEGA besorgt. https://www.amazon.de/gp/product/B06XH3FCN1/ref=ppx_yo_dt_b_asin_title_o02_s00?ie=UTF8&psc=1 Weiterhin habe ich noch ein MicroSD Modul vermutlich von einem anderen Hersteller. Beide Module lassen sich beschreiben, was für meine Funktion als Datenlogger schon einmal ganz toll ist. Mein Problem, wenn ich das SD Modul über SPI anschließe, habe ich ohne auf das Modul zuzugreifen (Tiefschlaf des ATMEGA) eine Erhöhung des Stroms um ca. 3mA und das obwohl der Controller im PowerDownMode ist. Verwende ich das Micro SD Modul, tritt dieser Effekt nicht auf. Die 3mA für das SD Modul fließen immer wenn eine SD Karte (unterschiedliche Typen und Größen schon probiert) im SD Modul sitzt. Entferne ich diese, dann habe ich nur den Strom des Controllers im Tiefschlaf+ca. 0,4mA SD Modul. Wenn ich die Versorgungsspannung während der Tiefschlafphase vom SD Modul (Karte eingesetzt) entferne, dann steigt mein Gesamtstrom trotzdem auf 3mA an. Hat jemand eine Idee woran das liegen könnte bzw. wie ich das Problem löse? Das MicroSD Modul hat leider keine Möglichkeit mit 3,3V zu operieren, weswegen ich es für den batteriebetriebenen Datenlogger nicht verwenden möchte.
Peter W. schrieb: > Hat jemand eine Idee woran das liegen könnte bzw. wie ich das Problem > löse? SD Kartenhalter hat meistens auch ein "Card Detect" Signal (CD) - da wird ein Pullup nach Masse gezogen. Wenn man das Signal nicht benötigt, kann man den einfach auslöten... Alternative: Spannung vom SD Modul komplett mit P-Channel MOSFET abtrennen.
Das SD Card Modul hat keine Pegelwandler, es ist nur für Mikrocontroller mit 3,3V Pegeln gedacht. Betreibst du deinen Mikrocontroller etwa mit 5V Signalen? Der Spannungsregler und die SD Karte werden schon eine gewisse Stromaufnahme größer als Null haben. Ohne Versorgumngsspannung wird die SD Karte parasitär von den Datenleitungen versorgt - was übrigens den schnellen Tod der SD Karte verursachen kann. Wenn du das Ding ganz abschalten willst, musst du das nicht nur mit der Stromversorgung machen, sondern auch mit den Daten-Leitungen. Schalte sie hochohmig.
Jim M. schrieb: > Alternative: Spannung vom SD Modul komplett mit P-Channel MOSFET > abtrennen. Das wird wohl nicht funktionieren, da ich auf dem Breadboard die Vcc schon aufgetrennt habe und das nichts am Stromfluss verändert. Wenn ich GND und Vcc auftrenne, dann wird der Strom gesamthaft sogar größer. Jim M. schrieb: > SD Kartenhalter hat meistens auch ein "Card Detect" Signal (CD) - da > wird ein Pullup nach Masse gezogen. Laut Wiki müsste das der PIN 1 der Karte sein. Leider erkennt man auf dem Modul schlecht wie die Leitungen verlaufen und es ist alles SMD. Da bin ich nicht wirklich geübt. Ich könnte versuchen am SD Karten halter die Lötfahne für den Pin1 zu durchtrennen. Bevor ich mein SD Modul so eventuell zerstöre, wie zuversichtlich bist du, dass der Strom dort her kommt? :)
Peter W. schrieb: > Wenn ich GND und Vcc auftrenne Mööp. Trenne niemals eine GND Leitung auf! Alle Signale beziehen sich darauf. Das Verhalten eines Mikrochips ohne GND aber mit Spannungen an anderen Pins ist 100% außerhalb seiner Spezifikation.
Stefan ⛄ F. schrieb: > Das SD Card Modul hat keine Pegelwandler, es ist nur für Mikrocontroller > mit 3,3V Pegeln gedacht. Betreibst du deinen Mikrocontroller etwa mit 5V > Signalen? Nein ich betreibe den ATMEGA mit 3,3V. Es liegt allerdings immer an der eingesetzten Karte. Sobald diese entfernt wird, ist auch der Strom weg. Stefan ⛄ F. schrieb: > Wenn du das Ding ganz abschalten willst, musst du das nicht nur mit der > Stromversorgung machen, sondern auch mit den Daten-Leitungen. Schalte > sie hochohmig. Bitte entschuldige die vielleicht dumme Frage, aber sind die Datenleitungen im PowerDownModus nicht automatisch hochohmig? Stefan ⛄ F. schrieb: > Trenne niemals eine GND Leitung auf! Alle Signale beziehen sich darauf. Danke. Guter Hinweis.
Peter W. schrieb: > Bitte entschuldige die vielleicht dumme Frage, aber sind die > Datenleitungen im PowerDownModus nicht automatisch hochohmig? Nein. Ganz im Gegenteil, die bleiben in dem Zustand, den sie vorher hatten.
Stefan ⛄ F. schrieb: > Nein. Ganz im Gegenteil, die bleiben in dem Zustand, den sie vorher > hatten. Habe ich probiert. Leider ohne Erfolg, sobald ich die Karte einsetze, gleiches Ergebnis. Wenn ich die Vcc von 3,3V entferne, bleibt der Strom unverändert. Ich habe jetzt PB2-PB5 als Eingang hochohmig gesetzt. Ich verwende einen ATMEGA328P.
:
Bearbeitet durch User
Peter W. schrieb: > Leider ohne Erfolg, sobald ich die Karte einsetze, > gleiches Ergebnis. Wenn keine Spannungsversorgung vorhanden ist und alle Signal-Leitungen ebenfalls stromlos (hochohmig) sind, dann kann da kein Strom fließen. Außer vielleicht an dem oben genannten Schaltkontakt. Aber da würde ich < 1mA erwarten. Irgendwas läuft bei Dir nicht so, wie du denkst. Ergo: Schaltplan zeichnen, messen, Messprotokoll erstellen und dann schauen wir mal drüber.
Peter W. schrieb: > Das MicroSD Modul hat leider keine Möglichkeit mit 3,3V zu operieren, Das bezweifele ich.
Peter W. schrieb: > Habe ich probiert. Leider ohne Erfolg, sobald ich die Karte einsetze, > gleiches Ergebnis. Wenn ich die Vcc von 3,3V entferne, bleibt der Strom > unverändert. Hast Du auch daran gedacht die ganzen anderen Pins auf GND zu setzen? Ansonsten wird die Karte über CS (und eventuell Datenpins) querversorgt - da sind Dioden von den Pins nach VCC in der Karte drin. Peter W. schrieb: > Das MicroSD Modul hat leider keine Möglichkeit mit 3,3V zu operieren, Doch: Einfach den LDO runterlöten. Der AMS1117 darf laut Datenblatt bis 11mA ganz alleine verbraten.
Stefan ⛄ F. schrieb: > Irgendwas läuft bei Dir nicht so, wie du denkst. Ergo: Schaltplan > zeichnen, messen, Messprotokoll erstellen und dann schauen wir mal > drüber. Bitte nicht aufregen. Ist nicht der schönste Plan und auch nur schnell auf Papier gekritzelt. Jim M. schrieb: > Doch: Einfach den LDO runterlöten. Der AMS1117 darf laut Datenblatt bis > 11mA ganz alleine verbraten. Wo sitzt bei meinem Modul denn der LD0 und was ist das? Der AMS1117 scheint wohl eine Art Festspannungsregler auf 3,3V zu sein. Jim M. schrieb: > Ansonsten wird die Karte über CS (und eventuell Datenpins) querversorgt > - da sind Dioden von den Pins nach VCC in der Karte drin. Anscheinend nicht, sonst würde ja wie von Stefan schon beschrieben, sich beim Auftrennen der Versorgungsspannung zum SD Modul auch der Strom reduzieren. Demnach fließt wohl der Strom über die Datenleitungen. Ich programmiere mit der Arduino IDE. Die internen Pullup Widerstände schalte ich in der Setup für die Datenleitungen ein. Vermutlich liegt hier der Fehler.
1 | void setup() |
2 | { |
3 | Serial.begin(9600); |
4 | // alle Pullup an |
5 | pinMode(10, INPUT_PULLUP); |
6 | pinMode(11, INPUT_PULLUP); |
7 | pinMode(12, INPUT_PULLUP); |
8 | pinMode(13, INPUT_PULLUP); |
9 | |
10 | // Ausschalten ADC |
11 | ADCSRA = 0; |
12 | |
13 | set_sleep_mode(SLEEP_MODE_PWR_DOWN); |
14 | |
15 | /* Setup des Watchdog Timers */ |
16 | MCUSR &= ~(1<<WDRF); /* WDT reset flag loeschen */ |
17 | WDTCSR |= (1<<WDCE) | (1<<WDE); /* WDCE setzen, Zugriff auf Presclaler etc. */ |
18 | WDTCSR = 1<<WDP1 | 1<<WDP2; /* Prescaler auf 1.0 s */ |
19 | WDTCSR |= 1<<WDIE; /* WDT Interrupt freigeben */ |
20 | |
21 | SD.begin(sd_CS); |
22 | File dataFile = SD.open("datalog.csv", FILE_WRITE); |
23 | dataFile.close(); |
24 | Serial.println("Leave setup"); |
25 | } |
Ergänzung: Das Modul mit der Micro SD Karte ist das wo der Hersteller die 5V Versorgungsspannung angibt.
:
Bearbeitet durch User
Peter W. schrieb: > Wo sitzt bei meinem Modul denn der LD0 und was ist das? Der AMS1117 > scheint wohl eine Art Festspannungsregler auf 3,3V zu sein. LDO = Low DropOut. Eine bestimmte Sorte Festpannungsregler - wie z.B. AMS1117. In dessen Datenblatt hätte man die 5mA gefunden, und die zieht er auch wenn +5V offen ist. Daher auslöten oder anders entschärfen. Peter W. schrieb: > Die internen Pullup Widerstände > schalte ich in der Setup für die Datenleitungen ein. Zum korrekten Betrieb der SD Karte wäre das OK, beim Abschalten der Versorgung müssen die aber alle auf Masse gezogen werden (oder offen/hochohmig beiben). Der 328p bekommt vom UNO +5V auf der TX Leitung, das kann u.U. die 3,3V hoch ziehen. Mach da mal einen Spannungsteiler rein. Außerdem fehlern die Abblock-C am 328p VCC/GND und AVCC/GND Pärchen.
Jim M. schrieb: > Der 328p bekommt vom UNO +5V auf der TX Leitung, das kann u.U. die 3,3V > hoch ziehen. Mach da mal einen Spannungsteiler rein. Außerdem fehlern > die Abblock-C am 328p VCC/GND und AVCC/GND Pärchen. Die Kondensatoren mit 100nF habe ich nachgerüstet. Direkt auf das Steckbrett zwischen VCC und GND sowie AVCC und GND. Das mit der TX Leitung habe ich auch gerade erkannt. Spannungsteiler habe ich auch eingebaut. Ist eine gute Idee, daran hätte ich so gar nicht gedacht. Jetzt funktioniert auch das Auftrennen der Spannungsversorgung am SD Modul. Ich hätte jetzt noch einen IRF9622 MOS FET hier. Habe so etwas allerdings noch nie verbaut. Wie würde man hier denn den Vorwiderstand berechnen für ein SD Modul?
Peter W. schrieb: > Wo sitzt bei meinem Modul denn der LD0 und was ist das? Der AMS1117 > scheint wohl eine Art Festspannungsregler auf 3,3V zu sein. Das ist der Chip mit den dicken Anschlussbeinen: drei auf der einen Seite und ein ganz breiter (zur Wärmeableitung) auf der anderen Seite.
1 | pinMode(10, INPUT_PULLUP); |
2 | pinMode(11, INPUT_PULLUP); |
3 | pinMode(12, INPUT_PULLUP); |
4 | pinMode(13, INPUT_PULLUP); |
Versuche mal INPUT (ohne PULLUP) oder OUTPUT und danach diese Pins auf LOW setzen. > Ergänzung: Das Modul mit der Micro SD Karte ist das wo der Hersteller > die 5V Versorgungsspannung angibt. So wie ich das sehe können beide Module mit 5V versorgt werden, weil auf beiden ein 3,3V Regler drauf ist. Das Modul mit dem 3,3V Anschluss IMG_3990.JPG) hat auf jeden Fall 3,3V Signale. Bei diesem Modul kannst du versuchen, den Spannungsregler zu entfernen, um dessen Stromaufnahme einzusparen. Das Modul ohne 3,3V Anschluss (IMG_3992.JPG) scheint einen Chip als Pegelkonverter zu enthalten, der möglicherweise unbedingt 5V Versorgung benötigt. Dessen Signale haben dann wohl auch 5V (dieses Produkt passt also nicht zu deiner Schaltung). > Der 328p bekommt vom UNO +5V auf der TX Leitung, das kann u.U. die 3,3V > hoch ziehen. Mach da mal einen Spannungsteiler rein. Außerdem fehlern > die Abblock-C am 328p VCC/GND und AVCC/GND Pärchen. Sehr guter Hinweis
Peter W. schrieb: > Jetzt funktioniert auch das Auftrennen der Spannungsversorgung am SD > Modul. Irgendwie schon und dann leider doch nicht. Ich setze ca. für 20sec den Controller den PowerDownModus. Mit dem SD Modul benötigt alles dann noch etwas mehr als 2mA. Während des Tiefschlafes trenne ich die Vcc Verbindung zum SD Modul. Der Stromfluss geht auch entsprechend auf <1mA zurück. Wenn ich während des Tiefschlafes den Vcc wieder an das SD Modul anlege, dann hab ich sofort einen Strom von ca. 15mA. Gut eigentlich möchte ich über einen MOS FET das SD Modul dann auch erst nach dem Verlassen des Tiefschlafes anschalten. Deswegen habe ich nach dem Aufwachen ein kurzes Delay von 3sec eingebaut und in dem Zeitraum die Vcc wieder angelegt. Gleiches Verhalten. Jetzt habe ich parallel bei der seriellen Ausgabe gesehen, dass der Controller einen Reset macht. Warum tut er das? Stefan ⛄ F. schrieb: > Versuche mal INPUT (ohne PULLUP) oder OUTPUT und danach diese Pins auf > LOW setzen. Hier ist meine Funktion für den Tiefschlaf. Da
1 | void pwrDown(int sekunden) { |
2 | Serial.println("Enter pwrDown"); |
3 | delay(100); |
4 | |
5 | // SPI Pins als Eingang und pull-ups ausgeschaltet |
6 | pinMode(11, INPUT); |
7 | pinMode(12, INPUT); |
8 | pinMode(13, INPUT); |
9 | pinMode(10, INPUT); |
10 | digitalWrite(10, LOW); |
11 | digitalWrite(11, LOW); |
12 | digitalWrite(12, LOW); |
13 | digitalWrite(13, LOW) ; |
14 | |
15 | for(int i=0; i < sekunden; i++) { |
16 | |
17 | sleep_enable(); // sleep mode einschalten |
18 | |
19 | // Alle Module ausschalten |
20 | power_all_disable(); |
21 | |
22 | sleep_mode(); // in den sleep mode gehen |
23 | sleep_disable(); // sleep mode ausschalten nach dem Erwachen |
24 | |
25 | } |
26 | |
27 | power_all_enable(); // Komponenten wieder aktivieren |
28 | |
29 | // SPI wieder in Grundstellung |
30 | pinMode(11, OUTPUT); |
31 | pinMode(12, INPUT); |
32 | pinMode(13, OUTPUT); |
33 | pinMode(10, OUTPUT); |
34 | |
35 | Serial.println("Leave pwrDown"); |
36 | delay(3000); |
37 | } |
> Jetzt habe ich parallel bei der seriellen Ausgabe gesehen, > dass der Controller einen Reset macht. Warum tut er das? Ich weiß es nicht. Mir ist aber aufgefallen, dass du den Sleep Modus nicht mit set_sleep_mode() konfiguriert hast. Siehe https://playground.arduino.cc/Learning/ArduinoSleepCode/ Prüfe mal, oder der Timer 0 dir dazwischen funkt und ein Aufwachen verursacht. Wenn du die Stromversorgung der SD Karte hart einschaltest, ohne den Strom zu begrenzen, bricht in diesem Moment eventuell die Spannungsversorgung des AVR ein, was den Reset auslösen könnte.
Stefan ⛄ F. schrieb: > Mir ist aber aufgefallen, dass du den Sleep Modus nicht mit > set_sleep_mode() konfiguriert hast. Siehe Doch das habe ich in der setup() Routine gemacht.
1 | ISR(WDT_vect){ |
2 | /* Watchdog imer Interrupt Service Routine */ |
3 | } |
4 | |
5 | void setup() |
6 | { |
7 | Serial.begin(9600); |
8 | |
9 | // Ausschalten ADC |
10 | ADCSRA = 0; |
11 | |
12 | set_sleep_mode(SLEEP_MODE_PWR_DOWN); |
13 | |
14 | /* Setup des Watchdog Timers */ |
15 | MCUSR &= ~(1<<WDRF); /* WDT reset flag loeschen */ |
16 | WDTCSR |= (1<<WDCE) | (1<<WDE); /* WDCE setzen, Zugriff auf Presclaler etc. */ |
17 | WDTCSR = 1<<WDP1 | 1<<WDP2; /* Prescaler auf 1.0 s */ |
18 | WDTCSR |= 1<<WDIE; /* WDT Interrupt freigeben */ |
19 | |
20 | SD.begin(sd_CS); |
21 | delay(100); |
22 | Serial.println("Leave setup"); |
23 | } |
Stefan ⛄ F. schrieb: > Wenn du die Stromversorgung der SD Karte hart einschaltest, ohne den > Strom zu begrenzen, bricht in diesem Moment eventuell die > Spannungsversorgung des AVR ein, was den Reset auslösen könnte. Das hört sich gut an. Das Problem hatte ich vorher mal, als mir nicht bewusst war, dass der 3,3V PIN vom Arduino Board nur max. 50mA liefert. Da hat der Controller permanent einen Reset gemacht. Wie kann ich das denn umgehen? Mit dem Einschalten über einen MOSFET?
Ich glaube du musst Interrupts mit cli() sperren, während du den Watchdog abschaltest, weil da ein strammes Timing erforderlich ist.
Peter W. schrieb: > Wie kann ich das > denn umgehen? Mit dem Einschalten über einen MOSFET? Mit einem ein/aus schalbarem Spannungsregler anstelle des MOSFET, der genug Strom für die SD Karte liefert, aber nicht mehr zulässt, als das Netzteil liefern kann.
Stefan ⛄ F. schrieb: > Ich glaube du musst Interrupts mit cli() sperren, während du den > Watchdog abschaltest, weil da ein strammes Timing erforderlich ist. Ich glaube du hast Recht :)
1 | cli(); |
2 | wdt_reset(); // Reset Watchdog Timer |
Habe ich in der Setup() vor der Watchdog Konfiguration ergänzt. Stefan ⛄ F. schrieb: > Mit einem ein/aus schalbarem Spannungsregler anstelle des MOSFET, der > genug Strom für die SD Karte liefert, aber nicht mehr zulässt, als das > Netzteil liefern kann. Ich möchte den Datenlogger mit Batterien betreiben. Als Spannungsversorgung sollen dann zwei AA Batterien her. Deswegen schaue ich parallel immer etwas nach dem Stromverbrauch, sonst wäre der nicht so relevant. Ich kenn mich mit den ganzen Bauteilen nicht so aus. Auf dem Breadboard nutze ich aktuell einen LF33CV, davon habe ich einen da. Dann habe ich noch einen L78L33ACZ und einen MCP 1702-3302 LDO-Regler. Die sind wohl aber alle nicht schaltbar.
Zur Not tut es ein P-MOSFET in Reihe zu einem Strombegrenzenden Spannungsregler.
Stefan ⛄ F. schrieb: > Zur Not tut es ein P-MOSFET in Reihe zu einem Strombegrenzenden > Spannungsregler. Hast du hier eventuell eine Beispielschaltung bzw. passen die von mir benannten Bauteile? IRF9622 MOS FET P Kanal L78L33ACZ oder MCP 1702-3302 oder LF33CV. Habe allerdings noch nie einen MOF FET berechnet mit den Widerständen. In meiner Recherche bin ich darauf gestoßen, dass so ein SD Modul im Schreibvorgang bis 100mA ziehen kann. Deswegen kann es nicht direkt vom Controller versorgt werden. Kann ich nicht einfach einen Bipolar Transistor nehmen? Sorry wenn ein paar blöde Fragen dabei sind. Mir fehlt hier etwas die Erfahrung.
Peter W. schrieb: > Hast du hier eventuell eine Beispielschaltung Nein > Kann ich nicht einfach einen Bipolar Transistor nehmen? Ja, dann aber vor den Spannungsregler damit der Spannungsabfall an seiner C-E Strecke nicht die 3,3V Versorgung der SD Karte beeinträchtigt.
Stefan ⛄ F. schrieb: > Nein Ich habe bislang nur eine LED über einen Transistor geschaltet und noch nie ein ganzes Modul. Würde ich hier den Vcc des SD Modul an den Emitter, Vorwiderstand mit Controller an die Basis und direkt 3,3V an den Collector anschließen? Dann habe ich doch allerdings immer einen Spannungsabfall Uce der mir meine 3,3V am SD Modul reduziert. Wenn das Modul jetzt exakt die 3,3V zum arbeiten brauch, dann bin ich wohl auf dem Holzweg.
Peter W. schrieb: > Würde ich hier den Vcc des SD Modul an den Emitter, Vorwiderstand mit > Controller an die Basis und direkt 3,3V an den Collector anschließen? > dann bin ich wohl auf dem Holzweg. Mit deinem Ansatz: ja Du musst einen PNP Transistor verwenden, mit Emitter an 5V. Der Kollektor ist dann sein Ausgang, da kommt der Spannungsregler dran. Schau Dir die Grundlagen in Band 2 von http://stefanfrings.de/mikrocontroller_buch/index.html an.
Stefan ⛄ F. schrieb: > Du musst einen PNP Transistor verwenden, mit Emitter an 5V. Der Stefan, erstmal vielen Dank für deine Geduld und Hilfe. Weswegen allerdings 5V? Ich hatte doch gesagt, dass ich beabsichtige den kompletten Logger mit 3,3V über 2xAA zu betreiben. Stefan ⛄ F. schrieb: > Schau Dir die Grundlagen in Band 2 von > http://stefanfrings.de/mikrocontroller_buch/index.html an. Geht klar. Sieht nach einem interessanten Pdf aus. Ich nehme mal an, dass ich hiermit jetzt deinen Nachnamen kenne? :) Danke
Peter W. schrieb: > Weswegen allerdings 5V? Weil der Spannungsregler, der den Strom begrenzt, an seinem Eingang deutlich mehr als 3,3V braucht. Steht im Datenblatt unter "Dropout Voltage". > Ich nehme mal an, dass ich hiermit jetzt deinen Nachnamen kenne? Psst, nicht weitersagen.
Peter W. schrieb: > Ich hatte doch gesagt, dass ich beabsichtige den > kompletten Logger mit 3,3V über 2xAA zu betreiben. Wie soll das gehen? Es fehlt an allen Ecken Grundlagenwissen, Du hast keine Chance, nutze die.
Manfred schrieb: > Wie soll das gehen? Eventuell mit einem Stepup Regler, welcher aus den 3V die 3,3V macht? Es gibt wohl auch Leute welche den Atmega328 aus einer einzigen Cr2032 versorgt haben. Das Gerät soll nicht verkauft werden und ich möchte damit keinen Preis gewinnen. Manfred schrieb: > Es fehlt an allen Ecken Grundlagenwissen, Du hast keine Chance, nutze > die Das mache ich. Du bist gern eingeladen, mir dabei zu helfen.
Peter W. schrieb: > Es gibt wohl auch Leute welche den Atmega328 aus einer einzigen Cr2032 > versorgt haben. Ja, den AVR, aber keine SD Karte. >> Ich hatte doch gesagt, dass ich beabsichtige den >> kompletten Logger mit 3,3V über 2xAA zu betreiben. > Eventuell mit einem Stepup Regler, welcher aus den 3V die 3,3V macht? Das kann klappen. Ich komme mit Step-Down Reglern (an 4 Zellen) allerdings besser zurecht. Bei geringem Schaltungsaufwand sind sie tendenziell effizienter und liefern eine glattere Ausgangsspannung. Wenn die durchschnittliche Stromaufnahme im zweistellingen mA Bereich liegt, würde ich allerdings 4 Zellen und einen Linear-Regler verwenden (bzw. in deinem Fall zwei, den zweiten zur Strombegrenzung für die SD Karte). Dein Modul hat ja schon einen drauf. Wenn du zwischen Batterie und diesem Regler deinen Transistor zur Unterbrechung schaltest, hast du es schon. Ich hoffe, dir ist bewusst, dass du einen weiteren Transistor brauchst, wenn du den PNP and 5V mit einem 3,3V Mikrocontroller schalten willst. Entsprechende Schaltungsvorschläge wurden hier im Forum schon oft gezeigt, du findest auch welche in meinem Buch (1x mit MOSFET, 1x mit PNP).
Kann ich nicht die Schaltung von Nick Gammon verwenden? http://www.gammon.com.au/forum/?id=12106 Er realisiert über eine P-Kanal MOSFET ein geschaltete Versorgungsspannung für seine externen Komponenten. Im Quellcode schaltet er das Gate als Ausgang einfach entsprechend an und wieder aus.
1 | // power MOSFET - initially off
|
2 | digitalWrite (POWER, HIGH); |
3 | pinMode (POWER, OUTPUT); |
Peter W. schrieb: > Kann ich nicht die Schaltung von Nick Gammon verwenden? Kannst du. Aber sei darauf vorbereitet, dass der Einschaltstrom eventuell deine Stromversorgung überfordert.
Stefan ⛄ F. schrieb: > Kannst du. Aber sei darauf vorbereitet, dass der Einschaltstrom > eventuell deine Stromversorgung überfordert. Du meinst, die Spannung bricht zusammen und der Controller macht einen Reset? In dem benannten Beispiel hängt an der geschalteten Versorgungsspannung neben den SD Modul, noch der RTC und ein LCD. http://gammon.com.au/images/Arduino/HHS_Temperature_Logger1.png Ich probier es morgen mal aus.
Peter W. schrieb: > Du meinst, die Spannung bricht zusammen und der Controller macht einen > Reset? Ja, oder er stürzt ab. > Ich probier es morgen mal aus. Tu das. Wenn es nicht geht, kannst du einen neuen Thread zum Thema Saft-Anlauf starten.
Stefan ⛄ F. schrieb: > Peter W. schrieb: >> Du meinst, die Spannung bricht zusammen und der Controller macht einen >> Reset? > > Ja, oder er stürzt ab. > >> Ich probier es morgen mal aus. > > Tu das. Wenn es nicht geht, kannst du einen neuen Thread zum Thema > Saft-Anlauf starten. Hallo Stefan, es klappt tatsächlich. Allerdings nicht mit den 3,3V, sondern nur mit 5V, da der P Kanal MOSFET laut Datenblatt erst bei 4,5V schaltet. https://www.mouser.de/datasheet/2/308/FQP47P06-1300909.pdf Hast du vielleicht einen P-MOSFET im Sinn der bei 3,3V schaltet und möglichst bei Conrad Electronics erhältlich wäre? Ich möchte ungern dafür Versandkosten zahlen.
Peter W. schrieb: > Hast du vielleicht einen P-MOSFET im Sinn der bei 3,3V schaltet und > möglichst bei Conrad Electronics erhältlich wäre? IRML6402
Stefan ⛄ F. schrieb: > Peter W. schrieb: >> Hast du vielleicht einen P-MOSFET im Sinn der bei 3,3V schaltet und >> möglichst bei Conrad Electronics erhältlich wäre? > > IRML6402 Vielen Dank, den schau ich mir mal an. Wobei ich wahrscheinlich das Löten noch vorher etwas üben werde. SMD ist nichts für meine Augen :)
Peter W. schrieb: > Stefan ⛄ F. schrieb: >> Peter W. schrieb: >>> Hast du vielleicht einen P-MOSFET im Sinn der bei 3,3V schaltet und >>> möglichst bei Conrad Electronics erhältlich wäre? >> >> IRML6402 > > Vielen Dank, den schau ich mir mal an. Wobei ich wahrscheinlich das > Löten noch vorher etwas üben werde. SMD ist nichts für meine Augen :) Einen größeren für 3,3V habe ich nicht gefunden. Falls du einen findest, will ich auch haben!
Stefan ⛄ F. schrieb: > Einen größeren für 3,3V habe ich nicht gefunden. Falls du einen findest, > will ich auch haben! Leider nicht. Einen habe ich auch schon zerstört. Funktioniert auch nicht wie mit dem MOSFET davor bei 5V. Eine LED bekomme ich mit dem Model zwar zum blinken, aber beim SD Modul gibt es immer wieder einen Reset. Habe jetzt die folgende Schaltung probiert mit einem BC547, aber leider auch ohne Erfolg. Kann natürlich sein das der SMD MOSFET jetzt beim löten wieder einen mitbekommen hat. https://www.arduinoforum.de/attachment.php?aid=3001
Stefan ⛄ F. schrieb: > Einen größeren für 3,3V habe ich nicht gefunden. Falls du einen findest, > will ich auch haben! Hallo Stefan, was hältst du denn von den NDP6020P? Der müsste doch eigentlich auch für 3,3V gehen.
Peter W. schrieb: > was hältst du denn von den NDP6020P? Sehr schön, den gibt es sogar bei Conrad. Vielen Dank
Funktioniert leider immer noch nicht. Kannst du mir bei der Arbeitspunkteinstellung helfen? Die Schaltung ist wie bei Nick Gammon. http://gammon.com.au/images/Arduino/HHS_Temperature_Logger1.png Die Widerstände habe ich jetzt erstmal gleich gewählt. Leider funktioniert es nicht. Wenn ich den Gatewiderstand bei 330Ohm habe, gibt es einen Reset des Controllers und bei 3,3kOhm schaltet er nicht durch.
Peter W. schrieb: > was hältst du denn von den NDP6020P? Aufpassen: Das P am Ende steht für P-Kanal, der NDP6020 ist ein N-FET. Beachten sollte man auch, dass der NDP6020P nur 8 Volt UGS verträgt.
Manfred schrieb: > Das P am Ende steht für P-Kanal, der NDP6020 ist ein N-FET. Hallo Manfred, genau, laut Datenblatt https://www.mouser.de/datasheet/2/308/NDP6020P-1306840.pdf handelt es sich um einen P Kanal. Das ist genau der Typ MOSFET den Nick Gammon in seinen Beispiel verwendet hat. http://www.gammon.com.au/forum/?id=12106 Er hat nur ein Exemplar für 5V Vgs genommen, weil er mit 5V arbeitet. In meinem Fall sollen es 3,3V sein. Leider bricht anscheinend nun immer die Spannung ein wenn ich das SD Modul an den Drain hänge. Bei einer LED funktioniert es ohne Probleme.
:
Bearbeitet durch User
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.