Hallo Forum, bei mehreren Posts habe ich eine ziemlich negative Einstellung zu Arduino festgestellt. Da ich mich gerade in diese Thematik einbeite, würden mich die Gründe interessieren. Sagt doch mal bitte, warum ihr den Arduino meidet. Aber bitte kein Anti-Arduino-Shitstorm, sondern die Erfahrungen, die ihr damit gemacht habt und vielleicht bessere Alternativen. Vielleicht wechsele ich dann noch mal. Viele Grüße Belo
:
Bearbeitet durch Admin
Gibt im Grunde keine objektiven Nachteile. Es gibt Anwendungszwecke wo ein anderes Board sinnvoller wäre oder kein Board.
Was mich persoenlich an "Arduino" stoert: 1. Es sind nicht alle Pins nach aussen gefuehrt (z.B. beim Mega2560 oder Due). Fuer was bezahle ich denn da 35 - 40 Teuronen? (Frueher sogar 50!) Finde ich echt aergerlich. 2. Diese verschissene Luecke von 1.27mm statt 2.54mm zwischen den beiden oberen Pinleisten auf der rechten Seite (wenn USB-Buchse nach vorne zeigt). Damit kann man praktisch keine einfache Lochraster nutzen, wenn man die Pins ganz oben rechts braucht. Waere ja auch zu einfach, wenn man sich selbst mal eben schnell ein "Shield" basteln koennte. 3. Das Arduino-Framework ist, was die Performance angeht, schlicht scheisse. Das fuehrt dazu, dass einige der Meinung sind einen i7 mit droelf Gigabyte RAM zu brauchen, wo es auch der normale AVR tut, wenn man den denn vernueftig programmieren wuerde. 4. Die Arduino "IDE" ist sehr schlecht. Da haetten die mal lieber einen guten Texteditor wie Notepad++, oder eine IDE wie QtCreator oder Eclipse nehmen und dafuer dann ein Plugin schreiben sollen. 5. Es gibt sehr viele, teilweise ueberfluessige Fragen, weil sich die Leute nicht mit dem Datenblatt des Controllers beschaeftigen wollen. Dazu wollen sich viele nicht mal mit C oder C++ beschaeftigen. 6. Der falsche Gebrauch des Wortes "Library" im Arduinoumfeld. Eine Lib ist eine Lib, und Header + Code sind halt Header + Code.
Belo L. schrieb: > bei mehreren Posts habe ich eine ziemlich negative Einstellung zu > Arduino festgestellt. Da ich mich gerade in diese Thematik einbeite, > würden mich die Gründe interessieren. Die Arduinos sind sehr leicht zu benutzen, und deshalb gerade auch bei unerfahrenen Nutzern weit verbreitet. Das führt dazu, dass Fragen, die mit Arduino zusammenhängen, oft ein sehr niedriges Niveau haben.
Man sollte auch zwischen Arduino Hardware und der Arduino IDE unterscheiden. Meines Erachtens hat die Hardware den entscheidenden Vorteil, dass sie im Großen und Ganzen untereinander austauschbar und kompatibel ist. (Korrigiert mich wenn ich falsch liege.) Vor allem für Programmierer, die sich nicht mit den elektronischen Problemen des Hardwaredesigns herumschlagen wollen, ein entscheidender Vorteil. Ich selber hab die Hardware nie verwendet. Für meine Anwendungen waren die Platinen von den Ausmaßen zu groß oder waren zu stromhungrig. Vor allem brauch ich zum Teil andere Taktraten oder andere ICs als Angeboten wird. Zur IDE: Aus Sicht eines Entwicklers sind mir einige Negativpunkte aufgefallen: - Keine Unterstützung einiger ATMEL Prommer (Debugger) - Generell keine Debugmöglichkeit (und Simulation) mittels Breakpoints - Funktionen wie "Rename" "Refactoring" und "Go to reference" fehlen. - Nur bedingte Möglichkeit aus der IDE hinter den Kulissen der Libraries zu sehen Zu den Libraries selber kann ich nichts schlechtes Sagen, das ewige Argument, dass ein Pin schalten 100 Takte dauert zählt auch nicht wirklich, da man ein Pin auch noch auf Hardware-Ebene bedienen kann, wenn man wirklich die Zeit optimieren muss. Zum Beispiel finde ich die serielle Schnittstelle von Arduino sehr gut umgesetzt. Jedoch stört mich bei den Libraries die grundsätzliche Benutzung der Hardware-Timer, ohne die Teile der Libraries nicht laufen. Ich selber will die Timer und die Interrupts selbst verwalten und sehe darin mehr eine Einschränkung als Erleichterung. Für Einsteiger ist dies jedoch ein Segen. Wer will schon seitenweise Datenblätter durchsuchen, wie man ein Timer einstellt, oder den Analog Digial Konverter bedient, wenn es mit einem einfachen Befehl in der Arduino IDE geht.
Kaj schrieb: > 1. Es sind nicht alle Pins nach aussen gefuehrt (z.B. beim Mega2560 oder > Due). Fuer was bezahle ich denn da 35 - 40 Teuronen? (Frueher sogar 50!) > Finde ich echt aergerlich. China: DUE ~16€ incl. Versand > 2. Diese verschissene Luecke von 1.27mm statt 2.54mm zwischen den beiden > oberen Pinleisten auf der rechten Seite (wenn USB-Buchse nach vorne > zeigt). Damit kann man praktisch keine einfache Lochraster nutzen, wenn > man die Pins ganz oben rechts braucht. Waere ja auch zu einfach, wenn > man sich selbst mal eben schnell ein "Shield" basteln koennte. Stimmt. Da kann man nix gegen sagen. Was empfiehlst' als Alternative? > > 3. Das Arduino-Framework ist, was die Performance angeht, schlicht > scheisse. Das fuehrt dazu, dass einige der Meinung sind einen i7 mit > droelf Gigabyte RAM zu brauchen, wo es auch der normale AVR tut, wenn > man den denn vernueftig programmieren wuerde. Naja - dafür ist es einfach. Manchem zu einfach - für andere ist das gut. Ich freue mich über die vielen Beispiele und Bibliotheken. > > 4. Die Arduino "IDE" ist sehr schlecht. Da haetten die mal lieber einen > guten Texteditor wie Notepad++, oder eine IDE wie QtCreator oder Eclipse > nehmen und dafuer dann ein Plugin schreiben sollen. Das kannste ja auch einfach haben. Es gibt einige komplett eigene IDE's die Arduino-kompatibel sind. Am Ende ist die Hardware auch nur ein µC mit einem Bootloader (früher ein AVR - aber inzwischen gibts ja alles mögliche) > > 5. Es gibt sehr viele, teilweise ueberfluessige Fragen, weil sich die > Leute nicht mit dem Datenblatt des Controllers beschaeftigen wollen. > Dazu wollen sich viele nicht mal mit C oder C++ beschaeftigen. Tja - leider. Das ist eben so weil es eine Platform mit sehr niedriger Einstiegshürde ist. > > 6. Der falsche Gebrauch des Wortes "Library" im Arduinoumfeld. Eine Lib > ist eine Lib, und Header + Code sind halt Header + Code. Ja, ok. Was kümmert es die stolze Eiche, wenn sich eine Wildsau an ihr reibt? Einfach nicht genau hingucken. Ein Diplom bekommt man dafür eh nicht und ich zumindest benutze es fürs Hobby - das ist Amateur und da darf es etwas "unscharf" sein...
Wirkungsgrad schrieb: >> 2. Diese verschissene Luecke von 1.27mm statt 2.54mm zwischen den beiden >> oberen Pinleisten auf der rechten Seite (wenn USB-Buchse nach vorne >> zeigt). Damit kann man praktisch keine einfache Lochraster nutzen, wenn >> man die Pins ganz oben rechts braucht. Waere ja auch zu einfach, wenn >> man sich selbst mal eben schnell ein "Shield" basteln koennte. > > Stimmt. Da kann man nix gegen sagen. Was empfiehlst' als Alternative? Nano, Pro Mini, Mega Core, D1 Mini, Teensy, ... ;-)
Na das sind ja auch alles Varianten von Arduinos. Ich meinte jetzt eher - gibt es denn preislich konkurrenzfähige Protoboards mit besserem Raster und allen Pins herausgeführt? Ich brauche meist die Pins nicht und habe sowohl die Arduino Pro Micro mit HardwareUSB als auch die Wemos D1 mini mit ESP-WLAN im Einsatz. Beides prima zum Basteln...
Manchmal beschleicht mich persönlich der Eindruck, als ob der eine oder andere (unterbewusst?) auch deshalb ein Problem mit den Arduinos hat, weil es die Hürde für den Einstieg in die Mikrocontroller-Welt definitiv stark herabgesetzt hat. Früher stand die Mikrocontroller-Welt nur einem kleineren, vglw. elitären Zirkel von Eingeweihten offen, man brauchte zumindest ein Grundwissen in ein paar Bereichen, musste sich hier und da einlesen, Datenblätter studieren, sich oftmals mit Assembler herumgequälen etc. Heute mit den Arduinos hingegen kann im Grunde "jeder Depp" ohne die geringsten Kenntnisse von Elektronik etc. mit Hilfe eines kurzen Internet-Tutorials binnen Minuten die ersten Erfolgserlebnisse haben.
Früher gab es mal die Vision der "Code Reusability". Damit war die Idee gemeint, Code wieder verwenden zu können. Bei Arduino ist das mittlerweile mit den Plug-In Libraries gelöst. In jeder Library steckt so viel Know-How, dass es für einen Programmierer sehr aufwändig wäre, alles selbst zu programmieren. Bei Arduino kein Problem: Library laden, fertig. Braucht man z.b. einen Treiber für den neuen TOF Abstandssensor VL53L0x: https://github.com/pololu/vl53l0x-arduino Arduino ist mittlerweile die Rapid-Prototyping Platform für die es fast alles gibt. Und was die leidige Diskussion von C++ auf Microcontroller anbelangt: Viele der Arduino Libraries sind in C++ geschrieben und die Libraries lassen sich erstaunlich gut in das System importieren.
chris_ schrieb: > . Bei Arduino kein Problem: Library laden, fertig. Das Problem hierbei nur ist, daß das, was beim Arduino "Library" genannt wird, eben keine Library ist. Was eine Library ist, ist im Umfeld Compiler - Assembler - Linker klar und eineindeutig definiert, nämlich compilierter Code in einem speziellen Library-Format (*.a bzw. *.lib bei den meisten Compilern). Eine Arduino-"Library" ist hingegen Quelltext. Und das ist der Grund, warum viele, die mit dem Arduino anfangen, erstmal sehr gründlich scheitern, wenn sie mit einer normalen C-/C++-Entwicklungsumgebung konfrontiert werden, die den Begriff "Library" im korrekten Sinne verwendet. Für diesen Missbrauch des Worts "Library" gehören die Arduino-Schöpfer verprügelt. Da sie sonst für jeden Furz alternative Begriffe eingeführt haben - "Sketch", "Shield" etc., hätten sie das für ihre "Libraries" auch machen können.
Rufus Τ. F. schrieb: > Für diesen Missbrauch des Worts "Library" gehören die Arduino-Schöpfer > verprügelt. Da sie sonst für jeden Furz alternative Begriffe eingeführt > haben - "Sketch", "Shield" etc., hätten sie das für ihre "Libraries" > auch machen können. Ja, das hätten sie wohl mal besser machen sollen. Aber der Fakt ist doch nun bekannt und wenn man von Arduino zur "echten" IDE umsteigt weil einem die Arduino-Welt zu eng wird ist man sowieso bereit dazu zu lernen...
Belo L. schrieb: > bei mehreren Posts habe ich eine ziemlich negative Einstellung zu > Arduino festgestellt. Da ich mich gerade in diese Thematik einbeite, > würden mich die Gründe interessieren. Sagt doch mal bitte, warum ihr den > Arduino meidet. Aber bitte kein Anti-Arduino-Shitstorm ... Die HW-Programmierer sind sehr emotionale Menschen, daher oft diese überzogene Reaktion.
Ich bin mit dem AVR Studio groß geworden. Vorteil ist hier einfach die deutlich besseren Debug-Möglichkeiten. Also per Debug Wire oder JTAG direkt in die Register reingucken, Hardware Breakpoints nutzen usw. Auch das Arbeiten mit großen Projekten geht meiner Meinung nach besser. Die Arduino IDE habe ich lediglich einmal genutzt um auf einen ATMega eine fertige Firmware zu laden (Repetier Firmware, 3D Druck) Die Boards nutze ich als Prototyping Plattform. Allerdings mit anderem Bootloader (Peter D. Fastboot). Und da stoße ich recht häufig auf kleine Problemchen. - 5V Arduino mit 3,3V ICs - unnötiger Stromverbrauch durch USB/Serial-Wandler - Baugröße - Teilweise nicht der komplette Port rausgeführt Arduino-Fanboys werden nun sagen es gibt doch 3,3V Typen, welche ohne USB/Seriell Wandler, welche mit drölfzig Pins ... Aber, Beispiel 3,3V: Da habe ich einen Arduino pro Mini rumfliegen. Warum auch immer sind die I2C Pins irgendwo auf der Platine angeordnet. Das stört mich ungemein an dem Ding. Oder warum einen 5V µC mit Pegelwandler für 3,3V nutzen, wenn ich direkt das ganze System auf 3,3V einstellen kann. Daher für die ersten Codezeilen kommt der Arduino auf den Tisch, danach gehts gezielt mit einem anderen AVR (Tiny, Mega, XMega) auf dem Steckboard weiter. Ich nutze gerne einen µC der so klein wie möglich und groß wie nötig ist. Eine 7-Segment Uhr lässt sich sehr gut mit nem Tiny 861 aufbauen.
Rufus Τ. F. schrieb: > Was eine Library ist, ist im Umfeld Compiler - Assembler - Linker klar > und eineindeutig definiert, nämlich compilierter Code in einem > speziellen Library-Format (*.a bzw. *.lib bei den meisten Compilern). Da moechte ich dir Widersprechen. "Suche FAT32-Bibliothek" ist sicherlich eine korrekte Ausdrucksweise und heisst nicht, dass es nur um eine .lib-Datei gehen soll. Natuerlich kann der Begriff Library auch enger gefasst werden, und dennoch ist er im weiteren Sinne genauso legitim. Selbst in der Fachsprache haben nicht alle Begriffe nur eine Bedeutung oder liesen sich in eine DIN pressen. > Und das ist der Grund, warum viele, die mit dem Arduino anfangen, > erstmal sehr gründlich scheitern, wenn sie mit einer normalen > C-/C++-Entwicklungsumgebung konfrontiert werden Den Grund des unterstellten Scheiterns wuerde ich eher in mangelndem Wissen und Erfahrung vermuten~
Wer sich quälen will und unbedingt Eclipse dazu braucht: http://playground.arduino.cc/Code/Eclipse Der 1.27 Versatz beim Uno hat einen einfachen Grund: Man kann das shield nicht versehentlich versetzt falsch einstecken. Den Mini Pro (< 3 EUR) z.B. kann man direkt ins Lochraster oder Breadboard stecken. In Anbetracht der kostenfreien und z.T wirklich hochwertigen Software, die leicht eingebunden werden kann (z.B. RFID, RF24, MPU650..) stört mich die falsche Verwendung des Begriffs Bücherei nicht weiter.
:
Bearbeitet durch User
Tommi schrieb: > Da moechte ich dir Widersprechen. Das ist dann Deine Arduino-geprägte Sichtweise. Im Umfeld eines C-/C++-Compilers resp. Linkers ist das eindeutig definiert, was eine Library ist. Und in diesem Umfeld --und darum geht es hier-- eine konträre andere Bedeutung einzuführen, ist schlichtweg kontraproduktiv und sorgt ständig für Irritationen und Frustrationen. Man muss hier noch nicht mal besonders gründlich mitlesen, um dieses ständig wiederkehrende Thema mitbekommen zu haben.
Rufus Τ. F. schrieb: > Tommi schrieb: >> Da moechte ich dir Widersprechen. > > Das ist dann Deine Arduino-geprägte Sichtweise. Im Umfeld eines > C-/C++-Compilers resp. Linkers ist das eindeutig definiert, was eine > Library ist. Andererseits könnte man argumentieren, dass das halt nur in besagtem Umfeld so eng definiert ist, und beispielsweise Wikipedia eine viel allgemeinere Definition von "Library" bzw. "Programmbibliothek" angibt, die auch problemlos auf die Arduino-"Libraries" passt. > Man muss hier noch nicht mal besonders gründlich mitlesen, um dieses > ständig wiederkehrende Thema mitbekommen zu haben. Ich lese hier im Forum mittlerweile sehr regelmässig mit, habe dieses Thema aber tatsächlich noch nie (bewusst) mitbekommen. Aber anyway, was mich eigentlich interessiert: Welchen Begriff würdest Du stattdessen für die Arduino-"Libraries" vorschlagen/für besser passend halten?
Wo wir gerade bei den Begrifflichkeiten sind: Ein viel größeres Problem als in der falschen Verwendung des Begriffs "Library" sehe ich darin, dass die Makros min, max, abs, constrain und round in der Dokumentation "Functions" gelistet sind. Das altbekannte Problem von Makros, deren Argumente mehrfach expandiert werden, wird bei Arduino damit einfach unter den Teppich gekehrt. Natürlich möchte man den Arduino-User, der noch nie ein C- oder gar C++-Buch in der Hand hatte, nicht mit solchen Spezialitäten verwirren. Aber warum hat man dann die o.g. Makros nicht einfach als echte Funktionen, oder – um ihre Generizität beizubehalten – als Template- Funktionen implementiert? Stattdessen lässt man den unbedarften Anfänger in die Falle tappen, aus der er sich mit eigener Kraft nicht wieder befreien kann. Selbst der Fortgeschrittene findet den einzigen Hinweis darauf, dass diese "Functions" in Wirklichkeit Makros sind, im Quellcode des Arduino- Frameworks. Das Thema wurde schon vor Jahren im Arduino-Forum diskutiert, aber geändert hat sich seither nichts. Ich finde generell die Entscheidung, C++ als Arduino-Sprache zu verwenden, sehr unglücklich, da C++ nun einmal keine Sprache für Anfänger ist. Sie wird auch nicht dadurch leichter, dass .ino statt .cpp als File-Extension verwendet und nur ein Subset davon dokumentiert wird. Spätestens, wenn der Compiler bei einem Syntaxfehler plötzlich ganz seltsame Fehlermeldungen ausgibt, wird man mit dem vollen Sprachumfang konfrontiert :)
Joachim S. schrieb: > Andererseits könnte man argumentieren, dass das halt nur in besagtem > Umfeld so eng definiert ist, ...wobei ich auch "besagtes Umfeld" in Frage stellen würde - ich denke eher, der Standard-Arduino-Nutzer hat keine Ahnung, dass er einem "C++-Umfeld" zuzuordnen ist. Diese Idee wird m.E. auch offiziell nicht besonders in den Vordergrund gestellt. Und ehrlich gesagt verstehe ich auch nicht, wieso ausgerechnet der Begriff der "Libraries" ein solches Problem darstellen soll. Bin eher ein Wald-und-Wiesen-Gelegenheits-Gebrauchsprogrammierer, und es ist mir doch völlig schnurz, wie "Libraries" nun beim Arduino heissen, ob die Perl-Libs nun Sourcecode oder Binaries sind, ob's bei PHP nun PECL oder PEAR ist, oder analoger Kram bei Puppet als "Classes" verkauft wird. Sollte ich jedenfalls auch mal mit "echtem C++" samt Umgebung zu tun haben müssen, käme ich jedenfalls nicht auf die Idee, mich zu beschweren, dass die Dinger dort dann "Libs" heissen, aber sich nicht an "Arduino-Konventionen" halten... ;-) Ich würde jedenfalls mit einer "neuen Lernkurve" rechnen.
Paul A. schrieb: > Gibt im Grunde keine objektiven Nachteile. Ähm, hast du schon je einen benutzt ? Arduino hat viele Vorteile: Einfach per USB programmierbar, einfach verständliche vorgefertigte Funktionen aus hohem Niveau, so z.B. Infrarotempfang mit automatischer Formatdecodierung, und die Übertragung des Programms aus der IDE zum per USB angeschlossenen Prozessor ist einfach integriert. Die Einstiegshürde ist also sehr niedrig, ideal für Anfänger. Arduino hat aber auch viele Nachteile: Die Platine braucht deutlich mehr Strom als der nackte Prozessor, batteriebetriebene Anwendungen sind damit eher nicht zu bauen, viele I/O Anschlüsse sind bereits belegt. Die tollen Funktionen sind schnarchlangsam, schon das Bedienen eines Ausgangspins dauert 1000 mal länger als wenn man den AVR direkt programmiert. Die IDE, also Software-Erstellungsumgebung, ist auf Kindergartenstand, weit entfernt vom Komfort eines Eclipse/AVRStudio. Das macht sie anfänglich leicht verständlich, aber schnell auch unbequem. Gerade daß der Simulator fehlt mit dem man einzelschrittweise sieht was der Prozessor macht und Instruktionen zählt, ist für Anfänger eher doof. Die Doku ist ebenfalls unterirdisch, oberflächlich werden die Funktionen beschrieben, aber z.B. herauszufinden welche Zahlenwerte HIGH und LOW haben ist versteckt. Tieferes Verständnis wird also behindert, auch eher doof für Anfänger. Die Microchip IDE für PIC Prozessoren konnte als das, und wenn man den teuren Programmer kaufte war sie besser integriert. Sie war halt nicht kostenlos.
Vielen Dank für die zahlreichen Antworten. Ist wirklich interessant und ich kann den Arduino jetzt besser einordnen. Als vorläufiges Resumee nehme ich mit, dass der Arduino für den Anfang ganz in Ordnung ist, um sich erst einmal in das Thema einzuarbeiten. Und wenn man die ersten Hürden überwunden hat, sollte man dann doch überlegen, sich den "echten" Microcomputern zuzuwenden. Insbesondere, wenn es ein bisschen schneller sein muss oder wenn man den Prozess batteriebetrieben steuern möchte. Vielen, vielen Dank
Ich konnte Arduino (clones) HW und SW erfolgreich einsetzten und Anderen "unterjubeln"... ...solange Erfolg gemessen wird an Ansprüche, welche in der selben Schublade angesiedelt sind wie z.B. für Lego Technic/Fischer Technik/Meccano/Stockis/u.A. Das ist jetzt ernst positiv gemeint. Die niedrige Schwelle um Einsteiger überhaupt mal an die Sachen Programmierung und mit HW heranzuführen passt hervorragend, ungeachtet der Limitierungen. Natürlich gibt's weder bei Meccano noch den Anderen Linksgewinde, Schrägverzahnung noch geschliffene Stahlachsen mit ø12mm, der Modul der Zahnräder ist auch nicht frei wählbar so wie auch nicht die Breite der Zahnräder um den Drehmomente angepasst zu sein, schmieren kann man auch nicht weil zu kleine Laufflächen. Schon der simple Versuch damit ein Fahrrad zum selber draufsitzen zu bauen scheitert, von Unimog oder Rennauto sprechtn wir schon gar nicht. Natürlich gibt es immer und zu Allem Meckerer: auch dieses Forum hat nicht so klare Regeln wie "Mensch ärgere Dich nicht", manche geben von selbst auf und andere werden rausgeschmissen... Arduino hat es also geschafft, anders als z.B. Microprofessor, LEMPS, BasicStamp, MEVM, CControl und wie die schon vergessenen alle heissen, global und über ein Jahrzehnt nicht bloß zu überleben sonder sich -nicht zuletzt dank voller Offenheit- so zu etablieren dass vom beschaulichen 8-bitter bis rüber zu den komplexen 32-bitter (SAM21, Kinetis, STM32, ESPxxx) alles besteht. Als Krönung betrachte ich 2 Fakten: - Arduino ist möglich auf "nicht originären" Plattformen - Peripherie Hersteller/Lieferanten geben Beispiele zu Arduino mit
Rufus Τ. F. schrieb: > Tommi schrieb: >> Da moechte ich dir Widersprechen. > Das ist dann Deine Arduino-geprägte Sichtweise. Jetzt schiesst du aber uebers Ziel hinaus. Mit Arduino hab ich noch nie was gemacht. Allerdings stamme ich auch nicht aus dem C-Lager. > Im Umfeld eines > C-/C++-Compilers resp. Linkers ist das eindeutig definiert, was eine > Library ist. Das kann ja sein, aber das begruendet keinerlei Alleinverwendungsrechte. Den Begriff Bibliothek gibts eben nicht nur im C-/C++-Umfeld. Mir ist das aber ehrlich gesagt nicht so wichtig, nur wollte ich das nicht unwiedersprochen lassen.
Autor: Katatafisch (Gast) Datum: 08.03.2017 10:36 >Ich bin mit dem AVR Studio groß geworden. >Vorteil ist hier einfach die deutlich besseren Debug-Möglichkeiten. Importing Arduino Sketches Into Atmel Studio 7: https://www.youtube.com/watch?v=7WnOe00dVu0
Belo L. schrieb: > Als vorläufiges Resumee nehme ich mit, dass der Arduino für den Anfang > ganz in Ordnung ist, um sich erst einmal in das Thema einzuarbeiten. Und > wenn man die ersten Hürden überwunden hat, sollte man dann doch > überlegen, sich den "echten" Microcomputern zuzuwenden. Alternativ - wenn du die ersten Hürden mal überwunden hast und dich mit der Plattform auskennst, sollte es auch kein Problem mehr sein, die meisten der angesprochenen Makel/Probleme zu lösen oder zu umgehen. Sie es durch direktes Ansprechen der HW, sei es durch Einsatz alternativer Libs - und dann dauert das "am Pin klingeln" eben nicht mehr 1000 Takte. Auch die IDE ist vermeidbar - es wurden bereits Möglichkeiten genannt, ich würde auch mal "platformio.org" erwähnen...
Belo L. schrieb: > Als vorläufiges Resumee nehme ich mit, dass der Arduino für den Anfang > ganz in Ordnung ist, um sich erst einmal in das Thema einzuarbeiten. Und > wenn man die ersten Hürden überwunden hat, sollte man dann doch > überlegen, sich den "echten" Microcomputern zuzuwenden. Insbesondere, > wenn es ein bisschen schneller sein muss oder wenn man den Prozess > batteriebetrieben steuern möchte. Jain Wenn du von Anfang an weißt wo du hin möchtest, z.B. hardwarenahe Programmierung, dann gibt es vielleicht geeignetere Starthilfen, als das Arduino Universum. Wenn du aber einfache Möglichkeiten eines µC ausschöpfen möchtest, um dir einen Roboterarm, oder einen Kamera-Slider zu bauen, wäre es vielleicht etwas abschreckend dafür erst einmal Assembler zu lernen.
Rufus Τ. F. schrieb: > Im Umfeld eines C-/C++-Compilers resp. Linkers ist das *eindeutig* > definiert, was eine Library ist. Bitte schnell die "C++ Standard Template Library" und andere, äh, Dinger umbenennen.
Unwissender schrieb: > Bitte schnell die "C++ Standard Template Library" und andere, äh, Dinger > umbenennen. Korrektur: Es heißt inzwischen sogar einfach "C++ Standard Library" (incl. dem, was vorher STL genannt wurde).
Man kann sogar in der Arduino IDE ohne die Arduino Funktionen programmieren. Definiert man im sketch statt setup() und loop()
1 | int main(void) |
2 | {
|
3 | }
|
Kann man richtig "bare bone" programmieren. Will man die Arduino-Funktionen trotzdem benutzen, muss man sie mit include "Arduino.h" einbinden.
"Wenn du von Anfang an weißt wo du hin möchtest, z.B. hardwarenahe Programmierung, dann gibt es vielleicht geeignetere Starthilfen, als das Arduino Universum." Ich weiß noch nicht genau, ob ich dahin möchte. Welche Starthilfen gibt es denn da ? Vor Assembler habe ich eigentlich nicht die große Schwellenangst, eher vor der Hardware. BTW. Wie zietiert man hier eigentlich ? Ich mache das immer in Anführungsstrichen, aber es geht doch auch irgendwie anders.
:
Bearbeitet durch User
Belo L. schrieb: > BTW. Wie zietiert man hier eigentlich ? Ich mache das immer in > Anführungsstrichen, aber es geht doch auch irgendwie anders. Zu zitierenden Text markieren, dann auf den Link "Markierten Text zitieren" klicken.
Michael B. schrieb: > Funktionen sind schnarchlangsam, schon das Bedienen eines > Ausgangspins dauert 1000 mal länger als wenn man den AVR direkt > programmiert. Das ist meiner Lötkolbenregelung, meinem Ladegerätetimer und meiner Akkuüberwachung vollkommen Wurst. > Die IDE, also Software-Erstellungsumgebung, ist auf > Kindergartenstand Erstaml ist der Editor schon eine glatte Frechheit! Nach etwas Sucherei habe ich eine Erweiterung des Notepad++ für Arduino gefunden, damit ist zumindest das Editieren vernünftig machbar. Belo L. schrieb: >> Wenn du von Anfang an weißt wo du hin möchtest, >> z.B. hardwarenahe Programmierung, dann gibt es vielleicht >> geeignetere Starthilfen, als das Arduino Universum." > Ich weiß noch nicht genau, ob ich dahin möchte. Du musst definieren, was Du benötigst. Wenn Du es nicht weißt: Arduino + Lehrbuch kaufen und los. Entweder bist Du glücklich oder merkst, dass Du Ideen hast, die damit nicht gehen. Ich erwarte ersteres. > Welche Starthilfen gibt es denn da? Da hat er bestimmt an Entwicklerboards und die gerne zitierten Tutorials gedacht, wobei letztere mich wenig faszinieren. > Vor Assembler habe ich eigentlich nicht die große Schwellenangst, Ich habe vor gut 30 Jahren in Assembler programmiert, das war recht zeitaufwendig, da reinzukommen. Ich habe dann lange Zeit nichts mehr mit Prozessoren gemacht und dann privat Bedarf verspürt, also mal den Arduino angeguckt. Die viel zitierten Geschwindigkeitsnachteile mögen vorhanden sein, aber welche Anwnedungen betrifft das wirklich? > eher vor der Hardware. Da hasr Du akuten Lernbedarf, ohne Grundlagen selbiger bekommst DU kein Gerät zur Funktion!
Belo L. schrieb: > Als vorläufiges Resumee nehme ich mit, dass der Arduino für den Anfang > ganz in Ordnung ist Arduino wurde entwickelt mit dem Hintergedanken auch technisch nicht versierten Usern einen einfachen Zugang zur Elektronik zu ermoeglichen.Das ist etwas was die meisten hier ignorieren und nur davon quasseln wie schlecht Arduino sei.Die IDE ist BEWUSST spartanisch gehalten und fuer Anfaenger von ueberfluessigem Mist befreit. Mit dem NANO fuer gerademal 2€ (China-Clone)hat man hardwaremaessig alles um sofort(und ich meine sofort...) loszulegen. Investier 2€ - leg gleich los und einer Woche hast du wahrscheinlich schon mehrere Mini-Programme geschrieben und dich auch mit mehreren Webseiten beschaeftigt die dir mit Rat und Tat fuer neue Projekte beistehen. Eines duerfte jetzt schon sicher sein:Es macht Spass rasche Erfolge zu haben und sich so zu mehr befluegeln lassen..... So nebenbei: Was ich z.B. schlecht finde ist Lego.Was soll das? Kindern Plastikkloetze in die Hand druecken um damit Tuermchen zu bauen.Reine Zeitverschwendung.Die sollten sofort mit Zement,Beton,Hammer,Meissel etc konfrontiert werden und "Trump Tower" bauen.Gleich richtig loslegen - wird schon werden,auch wenn's am Ende so aussieht wie der schiefe Turm vom Pisa....?
Man wächst ja auch mit seinen Aufgaben.. Ich habe als Facharbeiter in der Elektronik und jahrelanger Hobbyprogrammiererei in Java,php,android sowie anderen einfachen Sprachen zum Arduino gefunden. Mitlerweile komme ich ganz gut mit C/C++ klar das ich auch kleine tools in Linux umsetzen kann, auf den Atmega,sein Datasheet, die Referenzen bin ich dann auch gekommen und trage mitlerweile selbst Libs, Tips&Tricks bei.. wobei ich dafür auch nur Notepad++ benutze, erstelle eigene Customisierte Boards mit Custom Bootloader.. Die Negativen äußerungen hier kommen einfach von Leuten die Äpfel mit Birnen vergleichen wollen um sich Luft zu machen das es andere viel einfacher zum gleichen Ziel schaffen... Zum thema Libs sag ich immer, ein echter Programmierer schreibt nur wiederverwendbaren Code (ich nicht :D), niemand der den versteht und für sich nutzt ist dadurch schlechter.
Arduino ist hervorragend für unser technisch versierten Künstler gedacht. Die benötigen nur wenige Kenntnisse in "C, C++". Die können sich voll ihren künstlerischen Projekten hingeben. Alle anderen nehmen andere Hardware.
Für mich auch ein interessantes Thema. Viel möchte ich hier nicht hinzufügen. Aber wem es interessiert: Als Hardware Interessierter sind mir die erwähnten Mängel bewußt. Da für mich reine Arduino Interoperability nicht unbedingt auschlaggebend ist, habe ich angefangen eine etwas abgewandelte Infrastruktur zu schaffen die sich auch noch mit dem IDE und BL. programmieren läßt sonst aber in jeder Hinsicht abgewandelt ist. Damit können andere Programmierumgebungen mit verwendet werden. Im Augenblick arbeite ich an einigen neuen Bords. Wenn alles fertig und geprüft ist, wandert alles als Open Source Design nach Github mit allen Unterlagen. Merkmale: Keine physische Shield Kompatibilität. Alle Bords verwenden ähnliche Formgebung wie der Nano, Teensy. Da es mir nicht um Plug and Play geht ist es für mich nicht sehr wichtig und würde dann einen handelsüblichen Arduino nehmen. Die Schaltung ist so konzipiert, daß gewisse Unterschaltungen wie Regler, Spannungsreferenz durch Lötbrücken zum Zweck niedrigstem Stromverbrauchs vom uC entfernt werden können. LEDs lassen sich gleichfalls entkoppeln. Pinouts sind etwas angepasst um SPI, I2C Pins zusammen zu fassen. Die DIL Abstände sind 0.8" anstatt 0.6 um mehr Platz zu haben. Auch mit diesen Abständen passen sie noch auf Steckbrettern. Die erste neue Bord hat einen 1284P drauf um mehr Resourcen zu haben. Ein SD FAT auf einem 328P finde ich mehr als sportlich. Da hat man auf dem 1284 jedenfalls viel mehr Platz für das eigentliche Anwendungsprogramm. Eine Externe Spannungsreferenz um bessere Temperaturstabilität zur Verfügung zu haben. Einen 3.3 Volt uP LDO für externe Baugruppen wie Funkbords. Alle IO Pins sind auf dem 2x20 Pin Header zugänglich, also 32 IO Pins. Der zweite UART ist auch sehr nützlich. Kein USB Wandler weil man die als einsteckbare Version sowieso leicht verwenden kann. Die zweite Bord verwendet einen 328PB wegen zweitem UART und SPI, I2C und hat 30 Pins. Schaffung einer Breakout Bord mit 3.3 oder 5V Schaltregler mit 2A. Auf dieser Breakout Bord passen alle Pro-Minis, NANO und die beiden neuen Bords. Alle Pins sind in Standard Pinouts sowohl auf Wannenstecker wie auch Kontaktleisten oder Schrauben Leisten im 2.54mm Raster zugänglich. Die 5x2 Wannenstecker haben jeweils 8 IO Pins und Vcc/Masse. Diese Steckverbindungen sind für mehr permanente Erweiterungen gedacht. Die Analog Eingänge haben zusätzlich SMD Plätze für Filterkondensatoren. Alle IO Pins haben Serienwiderstände um den uC etwas zu schützen und auch aus anderen Gründen. Es gibt auch noch andere Schutz Vorrichtungen. Dazu kommen später noch sogenannte Peripheralpacks die gewisse Zusatzschaltungen wie RTC, Sensoren enthalten werden. Zum Experimentieren kommt noch eine weitere Zusatzplatine die feste Anschlüsse für LCD, Keypad, status LEDs, EEPROM, etz. Haben werden. Diese Platine braucht als Resourcen nur einen I2C Port, einen ext, Interrupt und Spannung um die IO-Pins zu erhalten. Damit kann man schon mal viel machen. Für Peripherie Erweiterungen wähle ich grundsätzlich nur I2C oder SPI um die übrigen IO Pins für die alternativen Funktionen frei zur Verfügung zu haben. Mit den gängigen Port Expandern kann man gut arbeiten. LCD Module steuere ich grundsätzlich nur mit I2C und eigenem Treiber an. Das hat sich schon gut bewährt. Arduino Bibliotheken verwende ich nur wo es sich wegen der Konplexität nicht lohnt das Rad wieder neu zu erfinden. Alles sonstige wird in üblicher Weise direkt mit SFRs angesprochen. Da spart man FLASH und gewinnt oft höhere Geschwindigkeit. Ich habe auch schon Teile von Arduino Bibs in normale direkt vewendbare C Funktionalität verwandelt und zum Teil auch auf andere uC wie PIC, 8051 geportet. Als Entwicklungsumgebung arbeite ich meist mit AVR Studio, CodeVision AVR und natürlich geht es auch mit der Arduino IDE;-) Damit hat man ziemlich viel Spielraum. Grüsse, Gerhard
:
Bearbeitet durch User
Die Arbeitsweise von Arduino ist heute .. "Stand der Technik". Bei anderen Controllerfamilien, z.Bsp. Texas Instruments, nennt sich das dann "Harddware Abstrakrion Layer" - kurz auch HAL genannt. Der Programmierer kann sich um das Wesentliche kümmern, seine Anwendung .. muss nicht jedes Detail seiner Hardware kennen. Arbeitsteilung nennt sich das dann. Wer gerne programmiert und nicht jedes Detail seiner Hardware kennt, oder kennen möchte, setzt gerne auf vorgefertigte Programmteile (HAL). So ist man schneller am Markt und erzielt schneller Ergebnisse. Ich persönlich verwende nur in Ausnahmefällen hardwarenahe Befehle (Assembler). Ganz einfach deshalb, damit der Quellcode besser portierbar ist. Ja gut, die IDE vom Arduino läd nicht umbedingt zum programmieren ein. Den Editor muss man nicht nehmen. Ich verwende die IDE nur zum flashen des µC.
Michael B. schrieb: > Funktionen sind schnarchlangsam, schon das Bedienen eines > Ausgangspins dauert 1000 mal länger als wenn man den AVR direkt > programmiert. Der erfahrene Arduino-User weiß aber, dass für fast jedes Problem eine Library zu finden ist: https://github.com/Looooong/FastPin
Autor: Jens Grabner (jensg) >Die Arbeitsweise von Arduino ist heute .. "Stand der Technik". >Bei anderen Controllerfamilien, z.Bsp. Texas Instruments, nennt sich das >dann "Harddware Abstrakrion Layer" - kurz auch HAL genannt. Der >Programmierer kann sich um das Wesentliche kümmern, seine Anwendung .. >muss nicht jedes Detail seiner Hardware kennen. Arbeitsteilung nennt >sich das dann. Full Ack ... genau so ist es. Aber ziemlich viele MC-Net User sind halt noch nicht auf dem Stand der Technik und sind eher mit Detailprogrammierung aufgewachsen, wie sie mal vor 20 Jahren üblich war. Es geht immer eine ganze Weile bis sich neue Techniken durchsetzen und es alle kapiert haben.
Die Nutzungsweise kann wohl hier sehr auseinander gehen. Ich zum Beispiel habe nie einen Arduino besessen, arbeite aber nur noch mit der Arduino IDE. Ich habe meist konkrete Projekte und baue deshalb immer auch angepasste Platinen dafür. Da meine Projekte aber meist auch aus Design oder anderen Anteilen bestehen, ist mir der Aufwand zu hoch alles extrem Hardwarenah zu programmieren. Da ich eher weniger Zeitkritische Anwendungen habe, sind mir auch 1000 Takte mehr relativ egal. Natürlich gibt es auch genug Anwendungsfälle wo sich der Mehraufwand lohnt. Beispiele wie Batteriebetrieben, Zeitkritische Anwendungen usw. wurden ja schon genannt. Für die meisten Fälle ist es aber relativ egal und viele werden nie an solche Punkte gelangen, egal ob mit oder ohne Arduino. Auch wenn man nicht so regelmäßig bastelt ist der Aufwand einfach viel geringer, weil man nicht wieder von Vorne anfangen muss (manche Menschen vergessen sehr schnell).
Hallo, ich beschäftige mich schon eine längere Zeit mit µC CDP1802 von RCA (ältere werden die Firma kennen). In der Folge dann mit 6502, Z80, 6800 und mit einigen Atmel Bausteinen. Jetzt nutze ich µC nur noch als Freizeitbeschäftigung. Bei aller Kritik finde ich die Arduino-Plattform einfach toll. Ohne großen zeitlichen Aufwand kommt man zu brauchbaren Ergebnissen und damit zu Erfolgserlebnissen. Man kann sich so mit seinem Problem beschäftigen ohne sich in Datenblättern zu verlieren. Die Erwartungen an eine µC-Anwendung sind inzwischen auch gestiegen und ohne die Nutzung von Library's sind kaum "zeitgemäße" Lösungen in überschaubarer Zeit realisierbar. Gut, vor 30 Jahren war ich ein Genie weil ich eine LED mit einem Controller einschalten konnte und heute kann das jeder nach einem Tag. Und das ist gut so. Mit Verlaub, mir gehen diese akademischen Meckereien auf den Geist ob jetzt Adruino C++ oder nur eine Untermenge davon nutzt, oder Arduino eine richtige Library hat oder nicht. Freuen wir uns auf viele neue Arduino-Anwender und deren neuen Anwendungen. Und wer Spass an µC-Lösungen wird dann vielleicht auch den Weg zu einer "richtigen", was immer das auch sein mag, IDE finden.
Elmar M. schrieb: > Mit Verlaub, mir gehen diese akademischen Meckereien auf den Geist ob > jetzt Adruino C++ oder nur eine Untermenge davon nutzt, oder Arduino > eine richtige Library hat oder nicht. Freuen wir uns auf viele neue > Arduino-Anwender und deren neuen Anwendungen. > Und wer Spass an µC-Lösungen wird dann vielleicht auch den Weg zu einer > "richtigen", was immer das auch sein mag, IDE finden. Einfach Super - mit Arduino gelingt der Einstieg in die µC-Programmierung. An die Langsamkeit bei den I/O-Ports habe ich mich gewöhnt und Lösungen um das Thema herum programmiert. Man darf nicht vergessen - die Community (Gemeinschaft vieler Programmierer) hat Arduino erst möglich gemacht. Je mehr am System arbeiten um so besser wird es (Fehlerfreiheit).
Ich finde Arduino toll!Man kommt schnell zu Ergebnissen und muss nicht den Mikrocontroller bis in jedes Register kennen. Ich denke mal viele User im Forum stört es das ihr "Spezialwissen" inzwischen von sehr vielen Leuten angewendet werden kann und das der Arduino Nutzer meist schneller zu Ergebnissen kommt wie der "alte Hase".
Hi >Man darf nicht >vergessen - die Community (Gemeinschaft vieler Programmierer) hat >Arduino erst möglich gemacht. Sollte wohl eher 'Man darf nicht vergessen - die Community (Gemeinschaft vieler billiger Chinesen) hat Arduino erst möglich gemacht.' heißen. >Je mehr am System arbeiten um so besser wird es (Fehlerfreiheit). Nach dem Motto 'Viele Köche verderben den Brei'? Allerdings taucht z.B. hier im Forum unter der Rubrik 'Projekte & Code' (knapp über 30 Beiträge seit 2011) kein einziger wirklicher 'Koch' auf. Da scheint also das überwiegende Gros der 'Community' nur per C&P zu nassauern und nichts eigenes beitragen. MfG Spess
>>Je mehr am System arbeiten um so besser wird es (Fehlerfreiheit). > > Nach dem Motto 'Viele Köche verderben den Brei'? > Linux ist ein Beispiel für die Richtigkeit meiner Behauptung.
Hi
>Linux ist ein Beispiel für die Richtigkeit meiner Behauptung.
Der Satz stimmt nur im Wort 'Behauptung'. Und solange du keine
belastbaren Zahlen zu Nutzern und Entwicklern bereitstellst wird es das
bleiben: Behauptung.
MfG Spess
ich finde arduinos überwiegend gut, weil sie eben fertig aufgebaut sind, und mit einer einfach funktionierenden IDE kommen. nachteil: die IDE vermisst einige features die ich beim programmieren gerne hätte. es sind auf den bords nicht alle pins verfügbar - ärgerlich wenn z.b. auf dem "pro micro" mit atmega32u4 ein port mit 8 pins vorhanden ist, ich die aber nicht einfach nutzen kann weil 2 für dämliche LED's auf dem borad "genutzt" werden. vorteil: einfach zusammenstecken, IDE auspacken, läuft - einfacher gehts nicht. die dämlichen anfängerfragen hat auch schon ein anderer dämlicher anfänger gefragt, also brauchst du nicht selbst dämlich fragen sondern kannst dämlich googeln ;-) der preis! über ebay aus china habe ich z.b. zwei mega2560 bords für zusammen <22€ bekommen (wichtig wg zoll). einziger nachteil dabei ist die schneckenpost aus fernost.
Elmar M. schrieb: > ich beschäftige mich schon eine längere Zeit mit µC CDP1802 von RCA > (ältere werden die Firma kennen). In der Folge dann mit 6502, Z80, 6800 > und mit einigen Atmel Bausteinen. Hier waren es nur 6504 / 6502 und danach 68HCxxx-Controller. Eine Europakarte mit 6502 habe ich sogar noch als Handlayout geklebt. > Jetzt nutze ich µC nur noch als Freizeitbeschäftigung. Ebenso! > Bei aller Kritik finde ich die Arduino-Plattform einfach toll. Sie ist in weiten Teilen fertige Arbeit. > Gut, vor 30 Jahren war ich ein Genie weil ich eine LED mit einem > Controller einschalten konnte ... wozu ich mehrere Tage intensiver Beschäftigung brauchte. > und heute kann das jeder nach einem Tag. Das muss schneller gehen :-) > Mit Verlaub, mir gehen diese akademischen Meckereien auf den Geist ob > jetzt Adruino C++ oder nur eine Untermenge davon nutzt, oder Arduino > eine richtige Library hat oder nicht. Es liegt genug Hintergrundwissen vor, den benötigten Leistungsumfang ehrlich abzuschätzen. Wie mit dem High-End-PC, ist doch geil, wieviel schneller ein x-GHz Achtkerner warten kann. Im Grunde hast Du meine Gedanken formuliert, aber Viele hier können das leider nicht akzeptieren.
spess53 schrieb: > Allerdings taucht z.B. hier im Forum unter der Rubrik 'Projekte & Code' > (knapp über 30 Beiträge seit 2011) kein einziger wirklicher 'Koch' auf. Ich finde nur 18 https://www.mikrocontroller.net/search?query=.ino&forums%5B%5D=4&sort_by_date=1
Markus Simon schrieb: > Ich finde Arduino toll!Man kommt schnell zu Ergebnissen Auch Arduino ist nicht massentauglich. Z.B. bei parallel laufenden Prozessen muss man sich programmiererische Gedanken machen, z.B. wenn man eine LED blinken lassen und sich mit anderen Dingen beschäftigen möchte. Sowas wie digitalWrite(ledPin, 200ms_HIGH, 500ms_LOW, 20_times) gibt es immer noch nicht.
Georg M. schrieb: > Sowas wie digitalWrite(ledPin, 200ms_HIGH, 500ms_LOW, 20_times) gibt es > immer noch nicht. Da haste ja nun wirklich einen massiven Nachteil der Arduino Umgebung aufgedeckt! Georg M. schrieb: > z.B. bei parallel laufenden Prozessen muss man sich programmiererische > Gedanken machen, Ja, auch da hast du voll kommen recht! Die beiden Argumente sind unschlagbar.
>spess53 schrieb: >> Allerdings taucht z.B. hier im Forum unter der Rubrik 'Projekte & Code' >> (knapp über 30 Beiträge seit 2011) kein einziger wirklicher 'Koch' auf. >Ich finde nur 18 >https://www.mikrocontroller.net/search?query=.ino&... Wie mir ein ein Freund, der in verschiedenen Hackerspaces weltweit Workshops gibt, wird meine Firmware relativ viel in Asien eingesetzt. Als jemand der relativ viel Open-Source Software für Arduinos gemacht hat, kann ich Dir sagen, dass das es einen Grund gibt, warum hier kein richtiger Koch Code posted: Es gibt hier schlicht zu viele Nörgler und Besserwisser. Das war früher noch schlimmer und mag sich langsam ändern, jetzt wo Arduino sogar hier im MC-Netz zum MainStream wird. Aber die Historie prägt eben doch.
> Sowas wie digitalWrite(ledPin, 200ms_HIGH, 500ms_LOW, 20_times) gibt es > immer noch nicht. Stimmt, gibt es nicht . Aber es gibt FreeRTOS und jede Menge andere Lösungen für dieses Problem. Vielleicht sich mal mit der "Spiel-IDE Arduino" beschäftigen damit man diese Umgebung besser einordnen kann. Nachdenken beim Programmieren hat eigentlich noch nie geschadet und ist unabhängig von der Umgebung.
Ich betrachte solche Sachen meist pragmatisch. Das Teil kann was es kann und nicht was ich gerne möchte. Der Kern ist schon ein paar Jahre alt. Also nicht die dicken Megabytes Flash und Speicher. Nicht hunderte Megahertz Tick-Tack. Nicht hunderte freie Anschlüsse. Keine Schaltleitung im oberen Watt-Bereich. Geht es aber um eine einfache Anwendung, die einen einfachen Steuerrechner benötigt, so spare ich mir dessen Entwurf, kopiere zwei Sil's in mein Layout und bin das ganze Gehopse los. Ich kann sogar "unter" dem Teil noch 'ne Party feiern. Brauche ich würglich 40 freie Anschlüsse, so ist das Teil schlicht und einfach ungeeignet - so einfach ist das. Übrigens, an alle die gleich nach Himbeeren rufen: Muss man unter einer Umgebung wie Linux einen Pin mal kurz ein- bzw. ausschalten, so bleiben von den vielen Megahertz nicht mehr viele über. Es kann sogar sein, dass der Atmel das schneller kann. Begebe ich mich aber auf das Niveau des Device Dirver hinab, so sieht das natürlich schon ganz anders aus. Das kann aber nicht jeder.
Das Gute an Arduino ist, das jeder für sich bestimmen kann, wie viel Arduino er verwenden will. Der Eine kann programmieren, hat aber keine Ahnung von Hardware - er macht einen Bogen um die IDE und benutzt Shields. Beim nächsten ist es genau andersrum - er nutzt die IDE, aber ihm sind die Shields zu unflexibel und er benutzt das Steckbrett. Der Nächste nimmt den Uno fürs Prototyping und einen Nano und eine Lochrasterplatine mit der restlichen Hardware drumherum. Bei einem anderen Projekt wird auf dem Uno der Code getestet und dann eine eigene Leiterplatte designt und bestückt. Der Eine gibt sich mit den Fertigboards zufrieden, beim Nächsten hat die boards.txt und der Lib Ordner den Umfang vom Brockhaus :-)
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.