Ich bin kein großer Fan der offiziellen Arduino IDE (in Bezug auf Visuals), also habe ich angefangen, nach besseren Alternativen zu suchen. Die meisten Projekte, die ich gefunden habe, befinden sich jedoch in Alpha / Beta und sind im Allgemeinen unvollständig.
Ich bin zu 100% neu in der Programmierung von Leiterplatten und habe noch nie ein Arduino verwendet, aber nach meinem Dafürhalten ist die Arduino IDE nur ein Wrapper für eine AVR-Bibliothek, die das eigentliche Schreiben auf die Platine übernimmt. Sind andere "Arduino-ähnliche Geräte" -IDEs eine mögliche Option?
Auch hier bin ich sehr neu in diesem Bereich, daher wäre die Benutzerfreundlichkeit sehr gut.
Antworten:
Achtung, eine langwierige Erklärung wird folgen. Ich möchte einige Missverständnisse beseitigen, von denen ich glaube, dass Sie sie haben.
Der Arduino ist wirklich zwei Dinge.
Ja, die Arduino-IDE umschließt grundsätzlich avr-gcc - den AVR C-Compiler. Ihre Projekte oder "Skizzen" enthalten die genannten Arduino-Bibliotheken und werden mit avr-gcc kompiliert. Nichts davon hat jedoch etwas damit zu tun, wie etwas an die Tafel geschrieben wird. Wie diese Skizzen eingesetzt werden, ist etwas anders als gewöhnlich.
Die Arduino IDE kommuniziert mit Ihrem Arduino über den USB-zu-Seriell-Chip auf der Karte und initialisiert einen Programmiermodus, den der Bootloader versteht, und sendet Ihr neues Programm an den Chip, wo der Bootloader es an einem bekannten Ort ablegt und dann ausführt . Es gibt keine "Avr-Bibliothek, die das eigentliche Schreiben erledigt" - es ist nur die Arduino-IDE, die einen seriellen Port öffnet und mit dem Bootloader spricht. Auf diese Weise werden Ihre Debug-Meldungen auch zur Laufzeit an die IDE ausgegeben.
Jede alternative IDE muss dieselbe serielle Kommunikation mit dem Bootloader ausführen können. Arduino ist einfach, da alle Bibliotheken, die sie Ihnen bereits zur Verfügung stellen, über die IDE per Tastendruck programmiert und ausgeführt werden können. Ich glaube ehrlich gesagt nicht, dass es einfacher oder benutzerfreundlicher wird. Sie haben alle Details des AVR-Mikrocontrollers und des Erstellungs- / Bereitstellungsprozesses abstrahiert.
Die Alternative wäre so etwas wie avr-studio (das auch avr-gcc für seinen Compiler verwendet) und ein ICSP-Programmierer (eine zusätzliche Hardware, die Sie kaufen müssen). Sie erhalten nur einige Registerdefinitions-Header-Dateien und einige nützliche Makros. Sie haben auch keinen Bootloader auf Ihrem AVR-Chip, es ist nur eine leere Tafel. Wenn Sie mit dem Mikrocontroller arbeiten möchten, müssen Sie sich eingehend mit dessen Hardware-Peripheriegeräten und -Registern befassen und die Bytes in C verschieben. Möchten Sie eine Debug-Meldung zurück an den PC senden? Schreiben Sie zuerst die UART-Routine für print () und öffnen Sie ein Terminal auf Ihrem Computer.
Einen Schritt weiter schreiben Sie Code in einem Texteditor und rufen von einem Makefile oder einer Befehlszeile aus avr-gcc und avr-dude (Programmierkommandozeilen-Tool) auf.
Noch einen Schritt weiter schreiben Sie eine Assembly in einem Texteditor und rufen den Avr-Assembler und den Avr-Dude auf.
Ich bin mir nicht sicher, wohin ich gehen soll, ich denke nur, dass die vorhandene IDE und Arduino absolut genial und perfekt für Anfänger sind - ihr Anspruch auf Ruhm ist Benutzerfreundlichkeit. Vielleicht nicht die Antwort, die Sie suchen, lernen Sie den Arbeitsablauf und machen Sie etwas cooles daraus.
quelle
Schauen Sie sich diese Seite an http://www.arduino.cc/playground/Main/DevelopmentTools Es gibt mehrere ide's und sogar ein Visual Studio Plugin
quelle
Ich verwende SublimeText als meinen primären Texteditor, daher war ich sehr glücklich, Stino zu finden , ein Arduino-Plugin für SublimeText. Es ist ein vollständiger Ersatz für die Arduino IDE (obwohl Sie eine Kopie der Arduino IDE benötigen, damit Stino die Bibliotheken finden kann). Es hat ein paar Bugs, ist aber durchaus brauchbar. Ich habe die Arduino IDE seit der Entdeckung von Stino kaum berührt.
quelle
Zufällig habe ich vor einigen Tagen von dieser neuen IDE namens MariaMole gehört: http://dalpix.com/mariamole
Seltsamerweise ist Maria-Mole der Name einer in Brasilien sehr beliebten Süßigkeit:
quelle
Ja, bei der Erstellung einer "Arduino-IDE" geht es im Grunde darum, ein Front-End vor avr-gcc und avrdude zu setzen. Neben der "offiziellen Arduino IDE" gibt es tatsächlich noch einige andere Möglichkeiten. Interessant ist möglicherweise die Eclipse-basierte AVR-Umgebung:
http://avr-eclipse.sourceforge.net/wiki/index.php/Plugin_Download
quelle
Persönlich empfehle ich (seit ich es geschrieben habe;)) UECIDE . Es basierte ursprünglich auf MPIDE für die ChipKIT-Boards, das selbst auf der Version 0023 der Arduino IDE basierte, aber es ist nicht mehr viel vom ursprünglichen Code übrig, es wurde alles neu geschrieben.
Es unterstützt alle Arduino-Boards sowie ChipKIT-Boards, Launchpad, Maple und eine ganze Reihe weiterer.
quelle
Sie können auch browserbasierte / Online-IDEs für Arduino wie Codebender ausprobieren .
quelle
(Quelle: visualmicro.com )
Das kostenlose Plugin für Microsoft Visual Studio und Atmel Studio ist einfach zu verwenden und verfügt über alle nützlichen Funktionen der Arduino IDE.
Der Skizzencode bleibt voll kompatibel mit dem Arduino Ide. Das Plugin verwendet denselben Build-Prozess und dieselbe Toolkette wie das Arduino Ide. Sie wählen, welche Arduino Ide-Version (en) Sie für Ihre Projekte verwenden möchten.
Bietet viele zusätzliche Funktionen wie Drilldown zu Compilerfehlern, disassemblierte Ansicht (mit Drilldown), Code-Vervollständigung, Upload über Programmierer oder USB.
Unterstützt mehrere Arduino-Versionen in einem einzigen Ide. Die Visual Studio-Version unterstützt auch Intel Galileo.
Beide Ide unterstützen Arduino Yun Wifi / Web Server Upload. Es gibt auch einen optionalen Usb / Serial / Wifi Arduino Debugger
Atmel Studio basiert auf Visual Studio. Atmel Corp. ist das Unternehmen, das die Arduino-Mikrocontroller herstellt. Dies bedeutet, dass das Atmel Studio Ide die Arduino-Mikrocontroller kennt und für diese konzipiert ist.
Atmel Studio bietet auch andere Tools wie einen Simulator.
Dokumentation und kostenloses Forum
quelle
Ich habe kürzlich von dem Witz, der die Arduino-IDE ist, zu code :: blocks-arduino gewechselt. Es eignet sich besser für komplexere Projekte mit mehreren Quelldateien. Sie haben die vollständige Kontrolle über Compiler-Flags, Build-Ziele und viele andere Dinge, die in der offiziellen IDE entweder fehlen oder schlecht geschrieben sind. Sie funktionieren ähnlich wie das Eclipse-Plugin, sind jedoch nicht so aufgebläht wie Eclipse-Code :: blocks-arduino a Standalone-Build. Es enthält mehrere nützliche Tools zum Hochladen und Debuggen, wie einen SUPER COOLEN UND NÜTZLICHEN seriellen Monitor mit einigen wirklich netten Funktionen wie direktem i2c-Debuggen (Twi, wie auch immer Sie es nennen möchten), serieller Erfassung und CSV-Ausgabe usw.
Für Windows kompiliert, mit verfügbaren Linux-Quellen http://www.arduinodev.com/codeblocks/
Ein "mittlerer" Ansatz wäre MariaMole, der leider nur für Windows gedacht ist, aber die Einfachheit der offiziellen IDE aufweist, aber viele der Funktionen einer "klassischen" IDE aufweist. Ein bemerkenswerter Unterschied zwischen den beiden ist, dass MariaMole .cpp- und .h-Dateien verwendet, während code :: blocks-arduino .ino wie die offizielle IDE verwendet.
nur Windows; ( http://hackaday.com/2012/11/29/mariamole-an-alternate-arduino-ide-aimed-at-advanced-users/
quelle
Jon L: s Anser fasst den Arduino recht gut zusammen und da er nur auf die Alternativen eingeht, könnte ich sie etwas näher erläutern.
Beachten Sie jedoch, dass alt1, wie Jon L feststellt, einfach und einfach ist, da es die meisten Dinge aus Ihrem Gesicht entfernt. Schalten Sie eine LED ein und rufen Sie die Funktion turnOnLED in der lib auf.
Alt2. Sie erhalten Hilfe zum Chip und zu einer klassischeren IDE, müssen aber die meisten Dinge selbst erledigen.
Alt3. Sie müssen alles selbst tun, aber Sie erhalten die maximale Leistung über Ihre Umgebung.
Nun können Sie auswählen, welche Art von Entwicklung Sie durchführen möchten. Eine gute Sache bei AVR ist, dass die Tools wie jtag recht erschwinglich sind und es sich somit um eine recht billige Plattform handelt, mit der Sie arbeiten können, unabhängig davon, auf welcher Ebene Sie arbeiten.
Und da es sich beim Arduino um einen AVR handelt, können Sie bei Verwendung eines J-Tag-Anschlusses Alt1,2 und 3 auf den Arduino-Platinen verwenden.
quelle
Sie können emacs (oder ähnliches) zum Schreiben von Code verwenden und make zum Erstellen und Bereitstellen verwenden. Die Arduino-Pakete werden mit Makefile-Samples und -Stubs ausgeliefert, um all diese Dinge zu erledigen.
quelle
EngBlaze hat gerade ein Tutorial über die Verwendung von Atmel Studio (früher AVR Studio) durchgeführt, um genau dies zu tun. Tutorial: Verwenden von Atmel Studio 6 mit Arduino-Projekten
quelle
Eclipse ist eine großartige Alternative und mit dem Eclipse-Plugin, das Sie unter eclipse.baeyens.it finden, kann es in weniger als 15 Minuten unter Windows Mac und Linux installiert werden. Es hat sogar einen seriellen Monitor.
quelle
Es gibt wirklich verschiedene Dinge, die Sie brauchen:
Die standardmäßige All-in-One-Arduino-IDE verfügt über einen wahnsinnig einfachen Editor, aus dem Sie schnell herauswachsen können. Ich empfehle, zuerst den Editor zu ersetzen, und weiterhin auf die Schritte 2 und 3 aus dem Basispaket zu antworten.
Unter http://playground.arduino.cc/Main/DevelopmentTools finden Sie Tools, die alle drei Hauptfunktionen übernehmen können.
quelle
Was Dan sagte (in einem Kommentar zu der Frage): Eclipse ist eine voll funktionsfähige IDE, die sehr gut mit Arduino zusammenarbeitet. (Seinen Setup-Kommentar allerdings auch unterstützend). Am einfachsten ist es jedoch, die funktionierende Installation eines anderen Benutzers auf Ihren Computer zu portieren, um eine funktionierende Konfiguration zu erhalten, und von dort aus mit der Optimierung zu beginnen.
quelle
Ich habe dieses Makefile benutzt . Es erledigt den größten Teil des Prozesses für Sie. Dann schreiben Sie einfach ein einfaches lokales Makefile, um brettspezifische Details bereitzustellen. Es gibt eine wirklich gute Dokumentation, wie man es benutzt. Dann benutze ich einfach meinen bevorzugten Texteditor, um Code in C oder C ++ zu schreiben und kompiliere ihn mit meinem einfachen lokalen Makefile. Das Hochladen wird auch von dem Makefile erledigt, das ich verlinkt habe: Rufe einfach "make upload" auf.
Dies ist eine gute Lösung, da Sie dann den gewünschten Texteditor verwenden können. Es ermöglicht Ihnen, alle Arduino-Bibliotheken sowie alle lokalen Bibliotheken, die Sie haben, einfach zu verknüpfen.
quelle
Dies ist eine alte Idee, die ich sehr schnell und flexibel gefunden habe. Es kann Arduinos und auch Arduino-Klone wie Paperduino oder tinyUSB programmieren. Sie können auch die USB- oder seriellen Anschlüsse überprüfen, Sicherungen und viele andere Dinge auf einfache Weise testen.
https://code.google.com/archive/p/avr-project-ide/
quelle