Inhaltsverzeichnis:
- Schritt 1: Was ist ein EEPROM?
- Schritt 2: Importieren Sie die Bibliothek
- Schritt 3: Setzen Sie das Initialisierungs-Flag
- Schritt 4: Aktualisieren der Einstellungen
- Schritt 5: Viel Spaß
Video: Initialisierung der Arduino EEPROM-Einstellungen - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:19
Hallo allerseits, Jeder Arduino hat einen kleinen eingebauten Speicher namens EEPROM. Sie können dies verwenden, um Einstellungen für Ihr Projekt zu speichern, bei denen die ausgewählten Werte zwischen den Einschaltzyklen beibehalten werden und beim nächsten Einschalten des Arduino vorhanden sind. Ich habe einen coolen Trick, der Ihnen beibringt, wie Sie bei Ihrem ersten Lauf eine Reihe von Standardwerten initieren können, also bleiben Sie dran, um herauszufinden, wie.
Schritt 1: Was ist ein EEPROM?
Ein EEPROM ist ein winziger Speicher, dessen Werte auch dann erhalten bleiben, wenn das Arduino-Board ausgeschaltet ist. Dies funktioniert wie eine kleine Festplatte, sodass Sie Ihre Parameter für das nächste Mal speichern können, wenn Sie das Gerät einschalten. Je nach Art des Arduino-Boards steht Ihnen auf jedem unterschiedlich viel Speicherplatz zur Verfügung, so hat beispielsweise das Uno 1024 Byte, das Mega 4096 Byte und das LilyPad 512 Byte.
Es ist wichtig zu beachten, dass alle EEPROMs eine begrenzte Anzahl von Schreibzyklen haben. Atmel gibt für das EEPROM auf dem Arduino eine Lebenserwartung von rund 100.000 Schreib-/Löschzyklen an. Dies mag nach vielen Schreibvorgängen klingen, aber es kann leicht sein, diese Grenze zu erreichen, wenn Sie in einer Schleife lesen und schreiben. Sobald ein Standort zu oft geschrieben und gelöscht wurde, kann er unzuverlässig werden. Möglicherweise werden nicht die richtigen Daten oder der Wert eines benachbarten Bits zurückgegeben.
Schritt 2: Importieren Sie die Bibliothek
Um diesen Speicher zu nutzen, binden wir zunächst die vom Arduino bereitgestellte Bibliothek ein. Die Bibliothek bietet zwei Methoden: Lesen und Schreiben für die entsprechenden Aktionen. Die Lesefunktion akzeptiert die Adresse, von der wir lesen möchten, während die Schreibfunktion sowohl die Adresse als auch den Wert akzeptiert, den wir schreiben möchten.
In unserem Beispiel besteht das Ziel darin, bei jedem Start des Arduino ein Array von Einstellungen bereit zu haben. Daher definieren wir zunächst das Array, das wir zum Speichern verwenden werden, und definieren die Adressen für jede der Einstellungen, die wir speichern möchten. In einem Chip, auf dem 1024 Bytes verfügbar sind, liegen die Adresspositionen zwischen 0 und 1023.
Schritt 3: Setzen Sie das Initialisierungs-Flag
Der Trick bei der Ersteinstellung von Vorgabewerten für die Einstellungen besteht darin, eine der Adressen als Indikator dafür zu verwenden, ob die Einstellungen initialisiert wurden oder nicht. Ich habe dafür den letzten Adressstandort verwendet, da er oft für nichts anderes verwendet wird. Die Funktion loadSettings prüft zuerst an dieser Stelle, ob der dort gespeicherte Wert ein „T“-Zeichen enthält, und wenn nicht, geht sie von Einstellung zu Einstellung und schreibt die Anfangswerte für jeden von ihnen. Sobald dies erledigt ist, wird der Wert des Ortes, an dem wir die initialisierten Einstellungen verfolgen, auf das Zeichen "T" gesetzt und beim nächsten Einschalten des Arduino werden wir die Werte nicht mehr initialisieren, sondern stattdessen die gespeicherten Daten einlesen unser Array.
Schritt 4: Aktualisieren der Einstellungen
Zum Aktualisieren der Werte können wir entweder die Schreibfunktion wie bei der Initialisierung verwenden, aber besser ist es, die bereitgestellte Aktualisierungsfunktion zu verwenden. Diese Funktion überprüft zunächst, ob der zu speichernde Wert derselbe ist, der sich bereits im EEPROM befindet, und wenn dies der Fall ist, wird sie nicht aktualisiert. Dadurch wird versucht, die Anzahl der Schreibvorgänge zu minimieren, um die Lebensdauer des EEPROM zu verlängern.
Schritt 5: Viel Spaß
Ich hoffe, dass dieses Instructable für Sie hilfreich war und dass Sie es geschafft haben, etwas zu lernen. Der Quellcode ist auf meiner GitHub-Seite verfügbar und der Link ist unten. Wenn Sie Vorschläge haben, hinterlassen Sie diese bitte in den Kommentaren und vergessen Sie nicht, meinen YouTube-Kanal für weitere ähnliche Videos zu abonnieren.
Empfohlen:
Heimwerken -- Einen Spinnenroboter herstellen, der mit einem Smartphone mit Arduino Uno gesteuert werden kann – wikiHow
Heimwerken || Wie man einen Spider-Roboter herstellt, der mit einem Smartphone mit Arduino Uno gesteuert werden kann: Während man einen Spider-Roboter baut, kann man so viele Dinge über Robotik lernen. Wie die Herstellung von Robotern ist sowohl unterhaltsam als auch herausfordernd. In diesem Video zeigen wir Ihnen, wie Sie einen Spider-Roboter bauen, den wir mit unserem Smartphone (Androi
Raspberry Pi mit Node.js mit der Cloud verbinden – wikiHow
So verbinden Sie Raspberry Pi mit Node.js mit der Cloud: Dieses Tutorial ist nützlich für alle, die einen Raspberry Pi mit Node.js mit der Cloud, insbesondere mit der AskSensors IoT-Plattform, verbinden möchten. Sie haben keinen Raspberry Pi? Wenn Sie derzeit keinen Raspberry Pi besitzen, empfehle ich Ihnen, sich einen Raspberry Pi zuzulegen
ESP-01 Programmier-Hack - der Einfache :): 6 Schritte
ESP-01 Programmierer Hack - der Einfache :): Hallo ESPer, In diesem anweisbaren zeige ich Ihnen einen einfachen Hack, um einen Programmierer für ESP-01 / ESP8266-01 / ES-01-Modul zu machen. Die meisten von uns haben ein Arduino-Board oder FTDI USB-TTL-Geräte als Programmierer für dieses Modul verwendet. Beide Methoden funktionieren gut. Aber t
Der Sanity Check: 5 Schritte (mit Bildern)
Der Sanity Check: Bei diesem Projekt dreht sich alles um die Gesundheit oder darum, dass er regelmäßig überprüft wird. Der beste Weg, dies zu erreichen, besteht darin, eine Maske zu bauen, deren Augen zufällig rot leuchten. Oft genug, damit es auffällt, aber spärlich genug, um die Leute zweifeln zu lassen
So erstellen Sie einen Smart Pot mit NodeMCU, der von der App gesteuert wird – wikiHow
So erstellen Sie einen Smart Pot mit NodeMCU, der von einer App gesteuert wird: In dieser Anleitung bauen wir einen Smart Pot, der von einem ESP32 und einer Anwendung für Smartphones (iOS und Android) gesteuert wird. Wir verwenden NodeMCU (ESP32) für die Konnektivität und die Blynk-Bibliothek für das Cloud-IoT und die Anwendung auf dem Smartphone. Endlich haben wir