Zitat von
HaWe
war das ein Vertipper oder meintest du tatsächlich, dass Teensys "Arduino-kompatibler" sind als Arduino Zero/M0 oder Arduino Due?
Nein, da ist der Teensy wirklich besser. Und damit meine ich nicht Dinge wie tone(), die auf dem Due einfach fehlen.
Paul hat einiges Hirnschmalz inverstiert. Beispiel, ein etwas umgebautes Blink-Beispiel
Code:
void setup() {
pinMode(13, OUTPUT);
}
void loop() {
PORTB |= 0b00100000;
delay(1000);
PORTB &= 0b11011111;
delay(1000);
}
Hier habe ich mal das digitalWrite() rausgetan und arbeite direkt mit dem Register des Atmega328.
Auf einem Uno blinkt das Programm genauso wie das normale Blinky. Für den Due z.B. lässt es sich nicht übersetzen, der hat kein PORTB Register.
Der Teensy hat auch kein solches Register. Was passiert beim Übersetzen ? Das Programm wird anstandlos übersetzt und die LED blinkt.
Der Teensy Core kann Teile eines AVR emulieren. PORTB ist beim Teensy eine Klasse, ähnlich wie Serial. Damit laufen manche Programme und Libs zumindest in einer Art "Notbetrieb".
Das nur als Beispiel. Es gibt auch andere Dinge. Paul ist anscheinend einer der größten externen Arduino Contributors. Von ihm stammt z.B. das F()-Makro. Auch wären Arduino Leonardo, Micro und Co. wohl ohne die Vorarbeit von Teensy 1.x, 2.x so nie entstanden.
Zitat von
HaWe
Und gibt es Teensy-Features, die sich nicht mit der Arduino-IDE nutzen lassen, im Gegensatz zu nativen ARM C++ Compilern?
Also Arduino ist schon die normale Entwicklungsumgebung des Teensy. Viele Teensy Libraries sind Obermengen der Arduino Libs (Serial, I2C, usw.). D.h. sie haben alles was die Arduino Libs haben, aber noch andere Erweitungen dazu.
Wichtig ist aber zu wissen: Der Teensy wird nicht seriell programmiert, sondern als USB Raw HID. Unter Windows startet die Arduino IDE beim Programmieren den Teensy Loader (Teensy.exe), der dann die Daten überträgt. Unter Linux und Mac geht das etwas anders, mache ich zu wenig um das jetzt zusammenzukriegen. Steht aber in der Doku, Linux dürften sowieso die meisten hardcore Teensy Freaks verwenden. Insoweit kein Problem, geht halt nur anders als bei Arduino.
Teensy wird auch nicht über den Boardverwalter installiert, sondern über ein eigenes Installationsprogramm. Läuft in der Regel nur mit fünf ausgewählten Versionen der Arduino IDE.
Lesezeichen