MöchteGernProgrammierer

Hallo,
ich hole das mal aus diesem Thread hoch:

“Es gibt einiges an Sachen bei denen man von den Arduino-Mittel loskommen muss. Der ADC ist auch so ein Fall. Der hat zig mal mehr Funktionen als die Arduino IDE unterstützt. Und dann natürlich Timer.”

So langsam komme ich dahinter.
Der Arduino Mega und die Arduino IDE sind dazu “gedacht” eben mal schnell zu
einem bestimmten Ergebnis zu kommen. Die Kombination ist für den “normalen”
möchtegernProgrammierer vollkommen ausreichend, nutzt aber die “Macht” des
z. B. Mega 2560 nicht voll aus.
Wenn ich also an noch unbestimmte Grenzen stoße, dann orientiere ich mich
an der Dokumentaion des ATmega2560 von Atmel. Benutze dann aber C++ mit der
Arduino IDE. Wenn das immer noch nicht reicht, dann auch einen anderen Compiler.
Gruß und Dank
Andreas

Was willst du uns mit dem neuen Thread sagen? Und wenn du jemanden zitierst, dann bitte richtig : quote-Tags und Autor sind wohl das Mindeste, was man verlangen kann.

[edit aus gegebenen Anlass ;)]

Das Mindeste:

Serenifly: Es gibt einiges an Sachen bei denen man von den Arduino-Mittel loskommen muss. Der ADC ist auch so ein Fall. Der hat zig mal mehr Funktionen als die Arduino IDE unterstützt. Und dann natürlich Timer.

Das Meiste:

Serenifly: Es gibt einiges an Sachen bei denen man von den Arduino-Mittel loskommen muss. Der ADC ist auch so ein Fall. Der hat zig mal mehr Funktionen als die Arduino IDE unterstützt. Und dann natürlich Timer.

Der Compiler ist in Ordnung, abgesehen davon das es eine sehr alte Version ist, die hier und da ein paar Bugs hat. Es gibt auch eine Anleitung um da ein Update zu machen, aber die funktioniert anscheinend nur auf dem UNO. Auf dem Mega kommen dann Fehler. Und wahrscheinlich wird man auf Grund der Abwärtskompatibilität auf ein offizielles Update verzichten :frowning:

Die Arduino Konstrukture sind halt für Anfänger gedacht. Und es ist schön dass man sehr schnell zu Ergebnissen kommt. Aber sie sind oft nicht performant und sie decken bestimmte Funktionen nicht ab. Und wenn man sich das Forum durchliest, merkt man dass Leute immer wieder über die gleichen Probleme stolpern wenn sie mal etwas weiter sind. Das geht ganz schnell. Die ganze String Behandlungs Geschichte ist auch so ne Sache, da die Arduino Macher string.h und auch die ganze AVR libc verstecken wollen. Einiges geht einfacher damit.
Meiner Meinung nach wäre da etwas mehr Balance möglich. Das man auf Anfänger abzielt ist völlig ok, aber man müsste den Rest auch nicht ganz so verstecken, da man Teile davon irgendwann so oder so braucht.

Oder was irgendwann auch mehr ein Krampf als nützlich ist print(). Einfach da man keine Teil-Strings konkatenieren kann (ohne die String-Klasse, die selbst Krampf ist), was den Code in grauenhafterweise aufbläht und unleserlich macht. Da gibt es glückerlicherweise Libs mit Stream Operatoren wie Streaming.h oder sdFat.

Es kommt drauf an was man machen will. Wenn es nur was langsames sein soll, reichen die Arduino Mittel völlig. Auch analogRead() reicht für sehr vieles und es ist gut, dass es das gibt. Aber wenn man sehr schnell sein muss, bekommt man Probleme. Auch bei manchen Anwendung die erst mal trivial erscheinen. 16MHz ist nun mal nicht besonders viel. Und dadurch dass alles gekapselt ist, wissen Leute nicht was da eigentlich gemacht wird und verstehen nicht wieso etwas nicht so geht wie gewollt.

Man muss auch nicht gleich komplett auf AVR C umsteigen. Das lässt sich schön kombinieren, je nachdem was man braucht.

sth77: Wenn du jemanden zitierst, dann bitte richtig : quote-Tags und Autor sind wohl das Mindeste, was man verlangen kann.

Das ist das meiste was man kriegen kann, nicht das Mindeste ... " " ist ja schonmal zum Zitieren gedacht. Dann hat Andreas auch noch einen Link gepostet. Dafür geb ich noch kein Karma, ist aber auch gut.

@Andreas: Ja, du hast Recht. Die IDE mit ihren "Sketchen", das Platinchen mit aufsteckbaren "Shields" und das ganze OpenSource System, haben etwas bewegt, was in dieser Dynamik schon äusserst erstaunlich ist. (Na gut, wikipedia hat die ganze Welt verändert, wir hier sind nur ein paar Spielfritzen ) Und dass sie keinen Java-Interpreter erfunden haben, sondern den avr-gcc Compiler genommen haben, und dadurch offen für alles weitere sind, ist das beste daran.

"Einen anderen Compiler" nehmen übrigens nur bornierte Assembler-Programmierer. Was du meinst ist eine andere Programmier-Umgebung (IDE), die Zugriff auf alle möglichen Einstellungen am Compiler erlaubt, und/oder sonst bessere Unterstützung bietet.