Befehlszeile Arduino kompilieren und hochladen?
Wie kann ich kompilieren und hochladen Arduino Skizzen von der Befehlszeile aus auf Mac und Linux? Ich habe installiert die Arduino-Programmierumgebung. Dort sind einige Beispiel-makefiles überall?
- Diese Frage ist ähnlich zu der folgenden Frage auf Arduino StackExchange: arduino.stackexchange.com/questions/15893/...
Du musst angemeldet sein, um einen Kommentar abzugeben.
Kompilieren und hochladen von Skizzen (als adaptiert, um C/C++ - Quellen) auf der Kommandozeile (unter Windows, Mac und Linux) unterstützt wird, direkt über die Flaggen auf dem arduino ausführbare seit 1.5.0.
Einer ino kann kompiliert und hochgeladen mit
arduino --upload [sketch.ino]
Dokumentation
arduino.exe
heute?Es ist ein command-line Arduino-toolkit namens Ino. Es funktioniert einfach, die.
Dies ist mein Textvorschlag gnu make, gehören für AVR-Projekte, die Sie möglicherweise anpassen müssen, um einige davon an Ihre Umgebung anpassen. Es schafft Abhängigkeiten, hat eine Vielzahl von standard-gcc-Optionen, die ich nützlich finden oder zu optimieren, dass für die Größe, sowie eine Bibliothek mit dir, die ich verwende. Ich habe diese erfolgreich zu kompilieren arduino-software habe ich auch vorher gehackt PdePreprocessor in der arduino-editor zu starten von der Kommandozeile zu generieren, die alle voodoo:
https://github.com/wesen/mididuino/blob/master/app/src/processing/app/preproc/PdePreprocessor.java
Müssen Sie tatsächlich schaffen eine tragfähige cpp-Datei aus deinem arduino-sketch. Die arduino-Umgebung macht das für Sie automatisch. Ein trick, um diese Dateien zu öffnen, den arduino preferences.txt (es ist in ~/Library/Arduino an den mac, ich denke, in Ihrem Dokumente und Einstellungen oder Anwendungsdaten auf windows, weiß nicht mehr genau), und set zu bauen.verbose=true und hochladen.verbose=true. Start arduino, und kompilieren Sie Ihre Skizze (nicht hochladen). Die Konsole an der Unterseite wird Ihnen zeigen, welche Dateien kompiliert wurden. Gehen Sie jetzt in das Verzeichnis, das die cpp-Datei, und die kompilierten Objekt-Dateien für alle core-arduino-Objekte. Sie können kopieren Sie diese in Ihr Projekt und verwenden Sie die cpp-Datei, um Sie dann weiter zu hacken. Lassen Sie mich wissen, wenn Sie weitere Informationen über das Makefile kann ich Sie mit denen, die ich habe.
Können Sie biicode (es ist ein Projekt, das ich bin arbeiten) und das basiert auf CMake (aber braucht man eigentlich nicht zu schreiben cmake-Datei) und ist auch ein tool zum verwalten von Arduino-Bibliotheken
Es ist Hauptmerkmale sind:
Sehen Sie eine kurze demo hier und Lesen Sie mehr in der Dokumentation.
Wenn Sie können cmake dann gibt es einige links in der gleichen web (diese und diese zum Beispiel). GNU makefile ist ein bisschen anders von cmake, aber nichts kompliziertes. Google einfach ein wenig und finden Sie eine Menge von Makefile-Beispiele, wie zum kompilieren von AVR-code.
Können Sie tatsächlich nutzen die arduino-GUI zu kompilieren und zu laden, und setzen Sie den editor, um externe in den Einstellungen. Auf diese Weise können Sie Bearbeiten Sie das C++ (PDE) - Dateien von xcode, und haben arduino generieren die tatsächliche CPP und bauen den ganzen Kram.
Können Sie auch verwenden, XCode zu schreiben plain C++/C für den arduino, mit dem avr-gcc compiler.
Haben Sie einen Blick auf: https://stackoverflow.com/a/8192762/153835
Dann können Sie die Ebene avrdude-upload-tool zum Programmieren des arduino. Haben Sie einen Blick auf: http://www.ladyada.net/library/arduino/bootloader.html
Es verwendet werden, dass das Protokoll gesprochen von Arduino war eine Modifikation des STK500-Protokoll, und dass nur die avrdude im Bundle mit der arduino könnte es sprechen. Ich weiß nicht, ob die mainstream-avrdude aktualisiert wurde, oder wenn Sie noch zu greifen, um die avrdude innerhalb der Arduino-Ordner.
Ich habe eine makefile für Arduino, die verwendet werden können, um zu kompilieren und hochladen Arduino (oder reinem AVR C) Programme für Arduino.
Folgenden sind einige der wichtigsten features von diesem makefile
Dem arduino-team ist die Entwicklung eines cli client
https://github.com/arduino/arduino-cli
Ankündigung: https://blog.arduino.cc/2018/08/24/announcing-the-arduino-command-line-interface-cli/
Wenn Sie nicht darauf bestehen, es ist auch scons/sconstruct scons/sconstruct. Da dies im Grunde, das in Python geschrieben ist es viel einfacher zu optimieren als. Darüber hinaus kann es zu Debuggen mit Python-debugger.