Hallo, Ich habe ein Arduino Projekt, bei welchem ich gerne den Mikrocontroller ab einer bestimmten Zeit an/abschalte würde, bzw. den Loop stoppen (z.b. zwischen 20:00 und 8:00 Uhr). Dazu würde ich das RTC Modul DS1307 (V03) verwenden, allerdings habe ich auf Google nichts gefunden, was mir weiterhelfen könnte. Villeichthat hat ja jemand von euch eine Idee. Liebe Grüße
Sadorn schrieb: > allerdings habe ich auf Google nichts gefunden Dann wirst Du auch keine Ostereier finden :-)
Sadorn schrieb: > Dazu würde ich das RTC Modul DS1307 (V03) verwenden, Tja, wer soll es denn auswerten und damit den Arduino einschalten ? Der Arduino offenbar nicht, der ist ja aus. Ein zweiter Arduino ? Mit Relais ? > allerdings habe ich > auf Google nichts gefunden, was mir weiterhelfen könnte. Villeichthat > hat ja jemand von euch eine Idee. Offenkundig ist es eine blöde Idee. Wenn statt dem Arduino-Spielzeug ein echter Mikrocontroller wie ATmega328 verwendet wird, kann der in sleep vom Stromverbrauch her praktisch ausgeschaltet sein.
Ich würde mich Ha. Ha. anschließen. Es gibt einen ganzen Sack voll RTC's mit Schaltausgang. Du kannst aber auch jemanden einstellen, der den Schalter, zur rechten Zeit, betätigt.
Nun lasst ihn doch. Nicht jeder ist ein Profi oder will einer werden. @Sadorn: Sowas macht man, indem man den µC in den sleep mode schickt. Dann braucht der nur noch 100nA Strom, also nichts. Natürlich muss der irgendwann wieder aufwachen. Das macht man, indem man z.B. den internen Watchdog laufen lässt, der alle 8 Sekunden den µC weckt und der dann nachschaut, obgenug Zeit vergangen ist. Der Watchdog ist nicht umsonst. Der Stromverbrauch steigt auf, je nach Modell, 250nA bis 6uA. Ist aber immernoch fast nichts. Mit 6 uA hält eine CR2032 Knopfzelle ganze drei Jahre.
Vielleicht noch wichtig zu wissen: Der Watchdog ist nicht genau. 8s können auch mal gut 8.3s sein. Wenn es auf die Uhrzeit wirklich ankommt, musst doch noch einen externen Taktgeber einbauen. Wenn nicht, gut, dann hast du bereits alles an Bord, also gibts gratis.
Sadorn schrieb: > Dazu würde ich das RTC Modul DS1307 (V03) verwenden Falls es dir nichts ausmacht, wenn die Schaltzeitpunkte um einige Sekunden pro Tag driften, ist das sicher eine gute Wahl. Für eine stabilere Zeit ist eine DS3231 mit dem integrierten TCXO meist pflegeleichter.
Hi Nun ja, ich kenn zwar nicht den wirklichen Grund, aber der Sinn erschließt sich mir auch nicht. Feste Schaltzeiten können dem Controller zwar von außen gegeben werden,aber diese Bauteile brauchen auch Energie und machen eine mögliche Energieeinsparung eventuell wieder kaputt. Der Watchdog ist sinnvoll, wenn externe Ereignisse den Controller wecken können und er dann dieses Ereigniss abarbeitet und sich danach wieder schlafen legt. In der Regel benötigt aber jede externe Sensorik auch Energie, so dass der Energiebedarf des Controllers nicht unbedingt eine Rolle spielt. Um also wirklich einen vernünftigen Rat zu geben, muss man den Gedanken dahinter kennen Nur dann kann man bewerten,ob eine "Abschaltung" des Controllers sinnig ist. Gruß oldmax
MaWin schrieb: > Offenkundig ist es eine blöde Idee. Wenn statt dem Arduino-Spielzeug ein > echter Mikrocontroller wie ATmega328 verwendet wird, kann der in sleep > vom Stromverbrauch her praktisch ausgeschaltet sein. Meistens IST der Arduino ein M328, also kann man ihn auch in den SleepMode schicken und periodisch die RTC abfragen. Also offensichtlich keine "blöde Idee", nur ein blöder Kommentar...
Erwin D. schrieb: > Meistens IST der Arduino ein M328, also kann man ihn auch in den > SleepMode schicken und periodisch die RTC abfragen. > Also offensichtlich keine "blöde Idee", nur ein blöder Kommentar... Oder ein blöder Erwin. Ein Arduino ist mehr als ein ATmega328, nämlich Spannungsregler, USB Bridge, LEDs, und quartzgetaktet. Man kommt nicht an seine fuses dran um ihn auf energiesparsam umzuprogrammieren. Wenn man aber auf die blöde Platine verzichtet, hat man plötzlich alle Freiheit. Nur halt nicht mehr die USB Uploadmöglichkeit
Beitrag #7035216 wurde von einem Moderator gelöscht.
Mohammed A. schrieb im Beitrag #7035216: > Warum nicht ein esp8266? Kann per NTP synchronisieren, braucht den > RTC nicht, und ist auch nicht teurer als ein 328p. Bei dessen Stromverbrauch im Netz kann er alternativ den Arduino gleich die ganze Zeit durchlaufen lassen, braucht ihn gar nicht auszuschalten.
Beitrag #7035320 wurde von einem Moderator gelöscht.
Die Ausgangsfrage könnte man auch dahingehend verstehen, dass die Funktion des Arduino zu bestimmten Zeiten nicht erwünscht sei, also nicht das Stromsparen im Vordergrund stünde.
Mohammed A. schrieb im Beitrag #7035320:
> Deep_sleep funktioniert bei den teilen wunderbar
Supi, und wie wacht er dann zu einer gegebenen Uhrzeit wieder auf ?
Beitrag #7035337 wurde von einem Moderator gelöscht.
MaWin schrieb: > Ein Arduino ist mehr als ein ATmega328, nämlich Spannungsregler, USB > Bridge, LEDs, und quartzgetaktet. Ein Arduino mit ATmega328 muss keine USB Bridge enthalten. Der Arduino Pro Mini kommt ohne USB Bridge daher und es ist auch keiner gezwungen, den auf dem Board vorhandenen Spannungsregler zu verwenden. SJ1 nimmt den Regler und die Power-LED vollständig aus dem System raus. https://www.arduino.cc/en/uploads/Main/Arduino-Pro-Mini-schematic.pdf
MaWin schrieb: > Man kommt nicht an seine fuses dran .... Du nicht. Aber ein Arduino Jünger könnte das, und hat meist sogar das Werkzeug (einen zweiten Arduino) dafür. Und das sind nicht die "Hohen Weihen" sondern nur ein klein bisschen mehr, als der Anfängerstatus. Das Programm könnte man schön auf einem Standard Arduino UNO ausprobieren/entwickeln, und zum Ende hin den ATMega auf eine sparsamere Platine verpflanzen.
Mohammed A. schrieb im Beitrag #7035337: > Das "wach mal nach xx sekunden auf" geht prächtig. Mein > batteriebetriebener sat-rx schläft zwischen den überflügen stundenlang. Sorry, aber der sleep-timer nennt sich zwar RTC, ist aber nur RC und so ungenau, dass man danach wieder die Zeit holen muss - per NTP über WLAN. Das frisst so viel Strom, man sollte wohl besser einen Arduino mit 32kHz Quartz dauernd mitlaufen lassen um die Zeit mitzuführen. https://arduino.stackexchange.com/questions/65530/esp8266-deep-sleep-timer-slightly-inaccurate
Beitrag #7035371 wurde von einem Moderator gelöscht.
Mohammed A. schrieb im Beitrag #7035371: > MaWin schrieb: > >> 32kHz >> Quartz > > Der wäre wohl etwas gross ... Geht so: https://www.reichelt.de/standardquarz-grundton-32-768-khz-iqd-lfxtal002995-p245392.html
Jan schrieb: > Der Watchdog ist nicht genau. 8s können auch mal gut 8.3s sein Oder 6 oder 10. Eine RTC braucht man trotzdem noch.
MaWin schrieb: > Man kommt nicht an seine fuses dran um ihn auf energiesparsam > umzuprogrammieren. Wozu ist dann der IST Connector vorhanden?
Sadorn schrieb: > Ich habe ein Arduino Projekt, bei welchem ich gerne den Mikrocontroller > ab einer bestimmten Zeit an/abschalte würde, bzw. den Loop stoppen (z.b. > zwischen 20:00 und 8:00 Uhr). Dazu würde ich das RTC Modul DS1307 (V03) > verwenden, Ich würde ein DS3231-Modul verwenden. Da kann man Alarmzeiten vorgeben, die Möglichkeit gibt es beim DS1307 nicht. Wenn die Abschaltzeit (Alarm) erreicht ist, lässt man das Modul einen Interrupt machen und kann dann, nachdem die Aufweckzeit gesetzt wurde, den µC schlafen legen. Beim nächsten Interrupt zur Aufweckzeit setzt der µC sein Programm fort, als erstes wird man den nächsten Zeitpunkt zum nächsten Stoppen und Schlafen legen in das Alarmregister schreiben. Und so weiter. Falls es um sehr sparsamen Betrieb während der Ruhezeit geht, werden ein paar Modifikationen notwendig sein: - DS3231-Module sind mit einer LED ausgestattet - die braucht keiner. - dort sind auch diverse PUs verbaut, die nicht alle notwendig sind und µA kosten. - Achtung, manche sind mit einer CR2032 ausgestattet, aber die Ladeelektronik für eine LIR2032 ist trotzdem drauf ... - auch das gesamte Arduino-Board könnte sich selber von der Stromversorgung trennen und mit dem Alarmausgang des DS3231 wieder aktiviert werden. Schaltung ähnlich zum Transistortester. Realisierungsvarianten gäbe es viele; Details für deine Anwendung hast du ja nicht genannt. So könnte man die aktuelle Zeit auch pollen und, falls dazwischen nicht viel zu tun ist, kurze Schlafphasen einlegen. Ist für die Aufgabe überhaupt ein Arduino notwendig oder reicht nicht evtl. auch ein kleiner Tiny, insbesondere wenn es um sparsamen Betrieb gehen würde? Nachteil beim DS3231, genauso wie beim DS1307, ist das Stellen der Uhr auf die aktuelle Zeit. Ich hab mir dazu eine HW, DCF-SW und einen Anschluss an meine DCF-Uhr gebastelt, mit denen ich das Modul einmal im Jahr stellen lasse. Alternativ ginge das auch über einen UART-Anschluss über ein PC-Terminal.
HildeK schrieb: > - DS3231-Module sind mit einer LED ausgestattet - die braucht keiner. > - dort sind auch diverse PUs verbaut, die nicht alle notwendig sind und > µA kosten. > - Achtung, manche sind mit einer CR2032 ausgestattet, aber die > Ladeelektronik für eine LIR2032 ist trotzdem drauf ... Wenn es ein Modul sein soll..... Dann rate ich zum ChronoDot Modul. Komische Bauform, aber kein überflüssiger Kram drauf.
Stefan ⛄ F. schrieb: > Jan schrieb: >> Der Watchdog ist nicht genau. 8s können auch mal gut 8.3s sein > > Oder 6 oder 10. Eine RTC braucht man trotzdem noch. Naja.... also wenn man man ganz naiv annimmt, der TO betreibt sein Gerät bei 25°, dann ist die Abweichung nicht ganz so extrem wie von dir geschildert. Aber ja, wenn die Zeit sein muss, dann gehts nur mit Taktgeber. Muss ja nichtmal eine RTC sein. Ein 1 Hz Taktgeber, der eine ISR triggert, die einfach einen Counter hochzählt ist bereits eine halbe RTC. Ich tippe aber drauf, dass der TO einfach Energie sparen will. Ich habe hier gut 50 Geräte mit Knopfzellen, die laufen alle mit einigen uA. Natürlich auch dann, wenn ich sie nicht brauche, eben weil es völlig egal ist.
Jan schrieb: > Naja.... also wenn man man ganz naiv annimmt, der TO betreibt sein Gerät > bei 25°, dann ist die Abweichung nicht ganz so extrem wie von dir > geschildert. Das angehängte Diagramm zeigt nur das "typische" Verhalten. Da lese ich (für 25°C und 5V) 114,5 kHz ab, was bereits eine beträchtliche Abweichung von den 128 kHz ist. Dazu kommen noch Fertigungstoleranzen, zu denen der Hersteller keine Angaben macht. Ich denke nicht dass dieser Oszillator nicht taugt, um Zeiten zu messen oder festzulegen. Da ist ja jede Sanduhr um Welten präziser.
Stefan ⛄ F. schrieb: > MaWin schrieb: > >> Man kommt nicht an seine fuses dran um ihn auf energiesparsam >> umzuprogrammieren. > > Wozu ist dann der IST Connector vorhanden? Um den eingelöteten Atmega328AU das erste Mal mit dem Arduino-Bootloader zu programmieren und auf den festgelöteten 16MHz Quartz einzustellen.
Stefan ⛄ F. schrieb: > Das angehängte Diagramm zeigt nur das "typische" Verhalten. Da lese ich > (für 25°C und 5V) 114,5 kHz ab, was bereits eine beträchtliche > Abweichung von den 128 kHz ist. Dazu kommen noch Fertigungstoleranzen, > zu denen der Hersteller keine Angaben macht. > > Ich denke nicht dass dieser Oszillator nicht taugt, um Zeiten zu messen > oder festzulegen. Da ist ja jede Sanduhr um Welten präziser. Ich habe nichts anderes behauptet. Für eine Uhrzeit ist er ungeeignet. Aber wie gesagt, ist eine Uhrzeit vllt gar nicht nötig. Es könnte auch nur ums Energiesparen gehen und da reicht es aus, eine billige Aufwachquelle zu haben. Da der TO sich bisher aber nicht mehr gemeldet hat, werden wir das vielleicht auch nie erfahren.
MaWin schrieb: > Um den eingelöteten Atmega328AU das erste Mal mit dem Arduino-Bootloader > zu programmieren und auf den festgelöteten 16MHz Quartz einzustellen. Bei den Stückzahlen sollte man ja eigentlich meinen, die werden von Microchip direkt factory programmed geliefert....
Stefan ⛄ F. schrieb: > Ich denke nicht dass dieser Oszillator nicht taugt Oops, da steht ein "nicht" zu viel.
Mohammed A. schrieb im Beitrag #7035337: > Das "wach mal nach xx sekunden auf" geht prächtig. Mein > batteriebetriebener sat-rx schläft zwischen den überflügen stundenlang. Wenn es auf eine Stunde mehr oder weniger nicht ankommt, geht das prächtig. Wolfgang schrieb: > Ein Arduino mit ATmega328 muss keine USB Bridge enthalten. > Der Arduino Pro Mini kommt ohne USB Bridge daher und es ist auch keiner > gezwungen, den auf dem Board vorhandenen Spannungsregler zu verwenden. > SJ1 nimmt den Regler und die Power-LED vollständig aus dem System raus. Genau das habe ich in einer Anwendung getan, alles runter. Es wird nach jedem sleep (8s) ein Zähler inkrementiert, auf eine Steckbrücke und einen Taster geschaut und ansonsten bei Zählerstand 111 eine Aktion ausgelöst. Die Zeit ist furchtbar ungenau, aber stört mich in dieser Anwendung nicht. Versorgt wird er per MCP1703T-5002 aus einer 12V Blei-Gel und schaltet alle etwa 15 Minuten per FET den Spannungsteiler an, um die Akkuspannung zu messen. Da ist noch ein großer Elko drumherum, in Mittel verbraucht das Gebilde etwa 25µA. Da sind keine Fuses geändert, das Ding läuft so, wie es der Chinese geliefert hat, mit dem Standard-A*-Bootloader. MaWin schrieb: >> Wozu ist dann der IST Connector vorhanden? Sollte wohl ISP heißen. > Um den eingelöteten Atmega328AU das erste Mal mit dem Arduino-Bootloader > zu programmieren und auf den festgelöteten 16MHz Quartz einzustellen. Wir haben zwar keine ATMega verbaut, sondern andere ICs, aber diese werden durchweg vor der Bestückung programmiert, das macht ein Dienstleister, der die auch wieder sauber gegurtet anliefert. Schon rein aus Gründen des Zeitaufwandes will man nicht nachträglich seriell programmieren.
Hallo, Vielen Dank, für die Zahlreichen Antworten, auch wenn sich einige wiederspricht... Um meine Frage nochmal zu präzisieren: Das Stromsparen steht tatsächlich gar nicht im Vordergrund. Es geht mir eigentlich darum, zwischen einer bestimmten Zeit den Loop den der Arduino sonst ausführt, zu unterbrechen. D.h. der Arduino liest die RTC aus, und wenn meine Vorgegebene Zeit erreicht ist, stoppt der Loop, und der Arduino kann sich gerne auch schlafen legen, oder er wacht wieder auf, wenn meine "Aufwachzeit" erreicht ist und der Loop geht weiter. Kleine Zeitliche Abweichungen stören mich im Übrigen auch nicht. Damit stellt sich mir aber auch eine neue Frage, wie kann ich das programmieren? Ich habe bisher nur gefunden, wie man den Arduino schlafen legen kann, aber ich habe keine Idee, wie ich den Arduino die RTC auslesen lassen könnte, sodass er danach entscheidet, ob der Loop läuft, oder stoppt. Ich würde mich freuen, wenn jemand dazu eine Idee, Tutorial oder ähnliches hat. Liebe Grüße
Sadorn schrieb: > Ich habe bisher nur gefunden, wie man den Arduino schlafen legen kann, > aber ich habe keine Idee, wie ich den Arduino die RTC auslesen lassen > könnte, sodass er danach entscheidet, ob der Loop läuft, oder stoppt. Befasse dich dazu mit dem Datenblatt des ATmega328, insbesondere dem Stichwort "Wakeup". Wenn der Mikrocontroller im Tiefschlaf ist, kann er durch ein (Interrupt-) Signal an einem I/O Pin aufgeweckt werden. Weil das ein Interrupt ist, musst du auch eine Interrupt-Prozedur schreiben, im einfachsten Fall eine leere. Für diverse RTC Chips gibt es sicher passende Arduinio Bibliotheken auf Github. Du musst die RTC so konfigurieren, dass sie zum gewünschten Zeitpunkt das Interrupt-Signal auf einem Pin ausgibt. Beim der Bibliothek für D3231 wäre das RTC.setAlarm(). Siehe https://thekurks.net/blog/2018/2/5/wakeup-rtc-datalogger Wenn die Zeit nicht so super genau sein muss und Stromsparen nicht relevant ist, reicht dir vermutlich die Genauigkeit des 16 Mhz Quarzes (oder Resonator) von deinem Arduino Modul. Bei Einzelstücken könnte man auch erwägen, die Abweichung von der Soll-Zeit per Software aufzugleichen. In diesem Fall kannst du die Wartezeit einfach per delay() Befehl in deine Schleife einfügen.
Sadorn schrieb: > Es geht mir eigentlich darum, zwischen einer bestimmten Zeit den Loop > den der Arduino sonst ausführt, zu unterbrechen. Dazu braucht man keine extra Hardware, sondern nur grundlegende Programmierkenntnisse. Also wirklich grundlegend, Kindergartenniveau. Selbst ein delay täte es laut deiner Beschreibung zur Unterbrechung bis 24 Tagen.
Sadorn schrieb: > Um meine Frage nochmal zu präzisieren: Das Stromsparen steht tatsächlich > gar nicht im Vordergrund. Ok, war oben nicht klar geworden. > Es geht mir eigentlich darum, zwischen einer > bestimmten Zeit den Loop den der Arduino sonst ausführt, zu > unterbrechen. D.h. der Arduino liest die RTC aus, und wenn meine > Vorgegebene Zeit erreicht ist, stoppt der Loop, und der Arduino kann > sich gerne auch schlafen legen, oder er wacht wieder auf, wenn meine > "Aufwachzeit" erreicht ist und der Loop geht weiter. Kleine Zeitliche > Abweichungen stören mich im Übrigen auch nicht. Deine Anwendung hast du nicht genannt. "Kleine zeitliche Abweichungen" heißen was? Eine Sekunde/Tag, eine Minute/Tag oder noch mehr oder nur eine Minute/Jahr? Soll sich das z.B. regelmäßig jeden Tag wiederholen? Dürfen sich die Abweichungen pro Tag im Laufe der Zeit aufsummieren? Sadorn schrieb: > aber ich habe keine Idee, wie ich den Arduino die RTC auslesen lassen > könnte, sodass er danach entscheidet, ob der Loop läuft, oder stoppt. Die von mir genannte RTC wird über I2C angesprochen. Es gibt sicherlich auch I2C-Libs für den Arduino. Der RTC-Baustein hat Register für Datum und Uhrzeit sowie für zwei (?) Alarmzeiten, die man beschreiben und auslesen kann. Lies einfach das frei zugängliche Datenblatt des DS3231. Wie ich oben schon sagte: Man gibt der RTC den Auftrag ein Signal zu generieren um hh:mm Uhr über die Alarmfunktion (wie bei einem Wecker). Die RTC schaltet dann einen Pin. Das kann man nutzen, um aus dem Schlaf aufzuwachen oder es einfach in einer Schleife regelmäßig auf eine Änderung abzufragen und dann entsprechende Codeblöcke auszuführen oder es zu lassen. Ähnliches kann man auch mit den eingebauten Timern machen. Dann zählt man halt z.B. die Sekunden solange die Funktion ausgeführt werden soll oder eben nicht ausgeführt werden soll. Mir fehlt einfach eine kurze Erklärung, was du mit der Anordnung machen willst. Das würde gute Tipps leichter machen.
MaWin schrieb: > Also wirklich grundlegend, Kindergartenniveau. Böse, aber sehr wahr. Sadorn schrieb: > Das Stromsparen steht tatsächlich gar nicht im Vordergrund. Diese Information kommt erheblich zu spät! > Es geht mir eigentlich darum, zwischen einer > bestimmten Zeit den Loop den der Arduino sonst ausführt, zu > unterbrechen. Es gibt keinen Grund, die Hauptschleife zu unterbrechen. Befasse Dich mit der Grundstruktur von Programmen. In der Loop steht dann eben "frage die RTC ab" und dann die Entscheidung "wenn Zeit größer 08:00 und kleiner 20:00 mache etwas" ansonsten "delay irgendwas". Da wird keine kilometerlange loop, sondern man lagert Funktionen in eigene Schleifen (Klassen ?) aus, die man in Art eines Befehls anspringt
1 | void FrageUhrAb(){ |
2 | ..
|
3 | }
|
4 | |
5 | void LEDgruenEin { |
6 | ...
|
7 | }
|
und so weiter, zumindest für Dinge, die man im Programmablauf mehrfach benötigt. HildeK schrieb: > Ähnliches kann man auch mit den eingebauten Timern machen. Dann zählt > man halt z.B. die Sekunden solange die Funktion ausgeführt werden soll > oder eben nicht ausgeführt werden soll. Das mache ich anders: Ich hole mir millis(), addiere meine Zeitdauer dazu und schreibe das in eine Variable. In loop wird dann in jeder Runde verglichen, ob millis() größer Zielzeit ist. Das hat den Vorteil, dass auch ein zwischenzeitlicher Überlauf keinen Fehler erzeugt.
Manfred schrieb: > Das mache ich anders: Ich hole mir millis(), addiere meine Zeitdauer > dazu und schreibe das in eine Variable. In loop wird dann in jeder Runde > verglichen, ob millis() größer Zielzeit ist. Das hat den Vorteil, dass > auch ein zwischenzeitlicher Überlauf keinen Fehler erzeugt. Ich glaube diese Methode ist falsch, eben weil sie einen Überlauf erzeugt. Begründung: Angenommen der Zeit-Zähler hat 8 Bit, wir starten beim Wert 254 und wollen 5 Millisekunden warten. Dann rechnest du 254 + 5 = 3 (wegen Überlauf) Im nächsten Schritt wartest du so lange, bis millis() > 3 ist, was sofort der Fall ist. Du hast keine 5 ms gewartet. Neuer Versuch: Angenommen der Zeit-Zähler hat immer noch 8 Bit aber du benutzt eine 16 Bit Variable. Dann rechnest du: 254 + 5 = 259 (kein Überlauf) Im nächsten Schritt wartest du so lange, bis millis() > 259 ist, was niemals passiert. Dein Programm hängt sich auf. Der Fehler tritt bei größeren Zählern ebenso auf, nur nicht so häufig. Richtig geht es mit einer Subtraktion. Dabei ist wichtig, dass die Variable (start) ein unsigned int gleicher Größe ist, wie der Rückgabewert von millis(). start=millis() if (millis()-start >= intervall) { tue etwas; } Falls nicht klar ist warum, spiele das mal in einem Debugger durch - gerne auch auf einem PC, wenn du keinen µC mit Debugger hast. Wenn der Zähler gerade übergelaufen ist, ergibt die Subtraktion trotz Überlauf die richtige Differenz. Beispiel: 3 - 254 = 5
MaWin schrieb: > Um den eingelöteten Atmega328AU das erste Mal mit dem Arduino-Bootloader > zu programmieren und auf den festgelöteten 16MHz Quartz einzustellen. Wer verbietet es einem, nicht nur die Erstprogrammierung darüber zu machen, sondern ihn auch das zweite oder dritte Mal zu programmieren und dabei logischerweise auch die Fuses mit zu programmieren? Tut mir ja leid, dass du dich dazu nicht in der Lage fühlst, aber andere können das zweifellos!
Erwin D. schrieb: > Wer verbietet es einem, nicht nur die Erstprogrammierung darüber zu > machen, sondern ihn auch das zweite oder dritte Mal zu programmieren und > dabei logischerweise auch die Fuses mit zu programmieren? Tut mir ja > leid, dass du dich dazu nicht in der Lage fühlst, aber andere können das > zweifellos! Wenn man den eingelöteten Quartz gegen einen 32kHz ersetzt, die LEDs ausbohrt, den Spannungsregler ablötet, die Leiterbahnen zum USB Bridge Chip durchkratzt, könnte man nach Reprogrammierung des ATmega328 und dessen fuses aus einem Arduino was stromsparendes machen. Aber es ist Schwachsinn, das machen nur Schwachsinnige.
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.