CodeShorty: Serieller Interrupt

Ist es möglich Eingaben auf der Seriellen-Schnittstellen per Interrupt abzufangen? Die Antwort is wohl eher jain, es ist möglich die Serial Event Funktion zu verwenden. Diese wird nach jeder Loop ausgeführt, unterbricht diese aber nicht. Zweck Benutzereingaben über Terminal Kommunikations mit anderen Geräten über die Serielle-Schnittstelle Nötige Bibliotheken Keine Programm Es gibt in der Arduino-Gui …

Weiterlesen
NEO 6-M GPS Shield - Banner

NEO-6M GPS Logger Shield V1.0

Eine weitere Zusatzplatine für den Arduino Uno und kompatible. Sie ist mit einem u Blox GPS chip ausgestattet. Zusätzlich besitzt sie einen Steckplatz für eine µSD Karte und bietet sich somit als GPS logger an. Die hier vorliegende Version 1.0 wurde breits durch eine Version 2 abgelöst. Die neu Version ist wegen des aktuellen Chipmangels …

Weiterlesen

Zumo V1.2

Ich habe den Zumo schon einige Jahre und gerade wieder in einer Kiste entdeckt. Da dachte ich mir wäre doch ganz schön mal was darüber zu berichten. Der Zumo ist ein kleiner fahrbarer Untersatz auf den man den Arduino Uno oder Leonardo direkt aufstecken kann. Er verfügt über zwei Motoren und ein paar Sensoren …

Weiterlesen

ESP8266 RTOS SDK

Das RTOS SDK is die Espressif eigenen Programmierumgebung für den ESP8266. Fakten Auch das Arduino SDK kapselt die Funktionalitäten dieses SDKs. Jetzt könnte man sich fragen warum für ESP8266 spezialisierten Code schreiben indem man direkt das SDK verwendet. Die Anwort ist nicht ganz einfach aber hier ein paar Argumente: Das Framework bietet erweiterte Funktionalitäten die …

Weiterlesen

Espressif IDF – GPIOs

Die meisten GPIO Pins des ESP32 sind, bis auf ein paar Ausnahmen, sowohl Eingänge als auch Ausgänge (Siehe hierzu auch das entsprechende Datenblatt). Wie diese Digital angesteuert werden, zeigen die nächsten Beispiele. Grundsätzliches Sind die Pins als Digital konfiguriert können sie jeweil den Wert 1= true oder 0= false annehmen. Ausgang Hier das Blinkbeispiele mit …

Weiterlesen

Espressif IDF – Tasks

Ein Task ist eine (wiederkehrende) Aufgabe für den Prozessor. Mehrere Tasks ringen um die Aufmerksamkeit der CPU. Wie diese erstellt werden und welche Datenstrukturen zur Datenübermittlung und Synchronisation vorhanden sind, wird in diesem Beitrag kurz umrissen. Tasks können zu einer sehr komplexen Angelegenheit werden, weshalb ich hier nur die Spitze des Eisberges ankratzen kann. Dennoch …

Weiterlesen

Espressif IDF – Menuconfig

Eine der schönen Erungenschaften der IDF ist die Menü gesteuerte Konfiguration. Noch schöner finde ich, dass eigenen Konfiguratiospunkte erstellt werden können. Diese werden dann automatisch in das Haupt Menü eingehängt. Vorab: Die Biliothek „esp_system.h“ wird im Quellcode benötigt sonst klappts nicht Nach Änderungen am Menü ein idf.py clean durchführen Zur Erstellung solch eines Konfigurationspunktes nehme …

Weiterlesen

Espressif IDF – Timer

Ein beliebtes Beispiel in der Arduino Umgebung ist Blink. Hier wird eine LED mit einer kurzen Pause an und aus geschaltet. Zu Gpio Aktionen kommen wir im nächsten Kapitel, um das Blinken kümmern wir uns hier. Auch in der Arduino Umgebung wird immer geraten Codeunterbrechungen mit Delay zu vermeiden. Dort gibt es einige Konstrukte mit …

Weiterlesen

Espressif IDF – Lognachrichten

Gerade bei der Entwicklung auf dem Mircocontroller ist hier und da mal eine Ausgabe wichtig, um zu erahnen, ob der entwickelte Code auch das richtige macht. Schade ist es wenn solche Ausgaben dann immer noch das fertige Produkt belasten. Damit der Debugging code es nicht oder nur bedingt ins Endprodukt schafft gibt es in nahezu …

Weiterlesen

Espressif IDF – Fehlerbehandlung

Die Fehlerbehandlung in der IDF eine der Kernfunktionalitäten. Auf sie stösst man praktisch in jedem Beipiel-Programm. Deshalb möchte ich an dieser Stelle näher auf sie eingehen. Alle wichtigen Funktion der IDF geben Fehlercodes zurück. Hierauf kann zum einen manuell reagiert werden (if Bedingung + Eigenes Handling) oder sie können an eine spezielles Macro (Funktion) zur …

Weiterlesen