So ein kleines Update: Mit platformio funktioniert das besser als mit der Arduino-IDE.
Kurzanleitung:
- platformio nach Anleitung installieren.
- Kommandozeile öffnen und einmalig dies ausführen, damit die Tools für den Due installiert werden:
platformio platforms install atmelsam
- Ein Verzeichnis für das Projekt anlegen, hier als Beispiel DueCpp
- Auf der Kommandozeile in das Verzeichnis wechseln und dort eingeben
platformio init -b due
Die erste Frage mit no, die zweite mit yes beantworten.
Jetzt gibt es im Verzeichnis eine platformio.ini Datei, darin findet sich dieser Eintrag
Code:
[env:due]
platform = atmelsam
framework = arduino
board = due
der wird ergänzt zu
Code:
[env:due]
platform = atmelsam
framework = arduino
board = due
build_flags = -std=c++11
Jetzt in das src Unterverzeichnis wechsel. Dort eine DueCpp.ino Datei für den Sketch anlegen.
Hier zum Test mit diesem Inhalt, quasi ein mit C++11 gepimptes Blink
Code:
#include <string>
int counter = 0;
constexpr uint8_t led = 13;
void setup() {
Serial.begin(9600);
pinMode(led, OUTPUT);
digitalWrite(led, LOW);
}
auto switch_on = [](){ digitalWrite(led, HIGH); };
auto switch_off = [](){ digitalWrite(led, LOW); };
void loop() {
std::string s("Test");
Serial.println(s.c_str());
switch_on();
delay(1000);
switch_off();
delay(1000);
}
Jetzt wieder ins Projektverzeichnis wechsel und checken mit
platformio run
Wenn man keine Fehler hat, kann man es jetzt auf den Due schicken
platformio run -t upload
Normalerweise findet er den passenden COM-Port selber.
That's it.
Lesezeichen