Nach drei Jahren Alpha- und Beta-Tests hat die Arduino-Community, die eine Reihe von offenen Platinen auf Mikrocontrollerbasis entwickelt, die stabile Version der integrierten Entwicklungsumgebung Arduino IDE 2.0 vorgestellt. Diese bietet eine Schnittstelle zum Schreiben von Code, Kompilieren, Hochladen von Firmware auf die Hardware und Interaktionen mit Platinen während des Debuggings. Die Firmware wird in einer eigens entwickelten Programmiersprache geschrieben, die C ähnelt und das schnelle Erstellen von Programmen für Mikrocontroller ermöglicht. Der Code der Entwicklungsumgebung ist in TypeScript (typisiertes JavaScript) geschrieben, während das Backend in Go implementiert ist. Die Quelltexte werden unter der AGPLv3-Lizenz verteilt. Vorbereitete Pakete für Linux, Windows und macOS sind verfügbar.
Der Branch Arduino IDE 2.x ist ein völlig neues Projekt, das keine Codeüberschneidungen mit Arduino IDE 1.x hat. Als Basis für die Arduino IDE 2.0 wurde der Eclipse Theia-Code-Editor verwendet, und die Desktop-Anwendung wurde unter Verwendung der Electron-Plattform erstellt (Arduino IDE 1.x ist in Java geschrieben). Die mit Kompilierung, Debugging und dem Hochladen von Firmware verbundene Logik wurde in einen separaten Hintergrundprozess, arduino-cli, ausgelagert. Der Benutzeroberfläche wurde, wo immer möglich, ein vertrauter Look bewahrt, während sie gleichzeitig modernisiert wurde. Benutzern von Arduino 1.x wird die Möglichkeit geboten, auf den neuen Branch zu aktualisieren und dabei vorhandene Boards und Funktionsbibliotheken zu konvertieren.
Unter den auffälligsten Änderungen für den Benutzer sind:
- Ein schnellerer, reaktionsfähigerer und modern gestalteter Benutzeroberfläche mit mehreren Informationsansichtsmodi.
- Unterstützung der automatischen Vervollständigung von Funktions- und Variablenbezeichnungen unter Berücksichtigung vorhandenen Codes und angeschlossener Bibliotheken. Fehlerbenachrichtigungen während der Eingabe. Operationen, die mit der Analyse der Semantikrelated sind, wurden in eine Komponente ausgelagert, die das LSP (Language Server Protocol) unterstützt.

- Navigationshilfen im Code. Im Kontextmenü, das durch einen Rechtsklick auf eine Funktion oder Variable angezeigt wird, erscheinen Links, um zu der Zeile zu springen, in der die gewählte Funktion oder Variable definiert ist.

- Ein integrierter Debugger, der das Debuggen im Live-Modus und die Verwendung von Haltepunkten unterstützt.
- Unterstützung für den Dunkelmodus.

- Für Personen, die an Projekten auf verschiedenen Computern arbeiten, wurde die Unterstützung für das Speichern von Arbeiten in der Arduino Cloud hinzugefügt. Auf Systemen, auf denen die Arduino IDE 2 nicht installiert ist, gibt es die Möglichkeit, den Code über die Web-Oberfläche Arduino Web Editor zu bearbeiten, die auch Offline-Betrieb unterstützt.
- Neue Platinen- und Bibliotheksmanager.
- Integration mit Git.
- Überwachungssystem für den seriellen Port (Serial Monitor).
- Diagrammersteller (Plotter), der es ermöglicht, von der Platine zurückgegebene Variablen und andere Daten in Form eines anschaulichen Diagramms darzustellen. Eine gleichzeitige Anzeige der Ausgaben in Textform und als Diagramm ist möglich.

- Integrierter Mechanismus zur Überprüfung und Bereitstellung von Updates.
Quelle: opennet.ru




