Da Sie anscheinend eine Meinungsumfrage durchführen, sind hier meine $ .02. Ob ich an einem ARM oder einem AVR arbeite, spielt eine Rolle (und darum ist es mir auch wichtig), hauptsächlich basierend auf dem, was ich versuche. Es gibt Anwendungsfälle, in denen ein AVR Sinn macht, und solche, in denen ein ARM Sinn macht. Im Allgemeinen gibt es auch einen Kompromiss zwischen beispielsweise AVR und PIC.
Zunächst einmal, während ich wahrscheinlich in Schwierigkeiten gerate, weil ich das sage, ist das "starke Kontingent in der Arduino-Familie" so etwas wie eine stimmliche Minderheit. Die meisten Arduino-Leute (Benutzer), denen ich begegnet bin, sind solche, die ihre Hardware eher so behandeln, als würden sie ein Python-Skript erstellen, um etwas Amüsantes zu tun, oft mit einem geringeren Verständnis der damit verbundenen Komplikationen als sie hätte, wenn sie tun würden "aus numpy import foo". Während die Art und Weise, wie Arduino Dinge tut, einige Vorzüge hat, gibt es auch viel Raum für Kritik.
Ich denke, es lohnt sich, die AVRs neben dem Arduino-Ökosystem zu betrachten. Das Arduino-Kontingent hat auch stark von den Gründen profitiert, die den AVR zu einem Defacto-Standard für Bastler gemacht haben - ein Mantel, den er zunehmend von PIC übernommen hat, noch bevor Arduino auf den Markt kam. Die direkten Konkurrenten des AVR wären der PIC und bis zu einem gewissen Grad der MSP430, der vor allem aufgrund des starken Marketingschubs von TI in Verbindung mit seinen Subventionsinstrumenten an Fahrt gewinnt.
Ökosystem
Wie bereits in anderen Antworten erwähnt, ist der AVR die einzige Familie, die eine saubere, standardisierte Möglichkeit hat, mit kostenlosen Tools von Null auf Hallo Welt zu gelangen. Der avr-gcc-Port, die Bestandteile der winavr-Toolchain, eine Vielzahl von Programmierschemata mit unterschiedlicher Komplexität und Funktionalität, die jedoch immer noch an die Autorität gebunden sind, die sich aus der Unterstützung durch avrdude ergibt, machen die Arbeit mit der Toolchain wesentlich einfacher.
Das Ökosystem des PIC ist ein Albtraum mit einer beliebigen Anzahl von Compilern, Programmierwerkzeugen und Assemblern. Viele von ihnen sind nicht miteinander kompatibel. Die meisten von ihnen sind bezahlt. Nicht alle von ihnen sind gut. Noch wichtiger ist, dass es keinen Defacto-Standard gibt. Die Free / Open-Source-Alternativen (z. B. SDCC) lassen zu wünschen übrig, haben jedoch nicht den Status eines Defacto-Standards wie avr-gcc und company erreicht. Selbst wenn die Software-Toolchain funktioniert hätte, müssten Sie zumindest in einen Programmierer investieren. Das PICkit kostet vielleicht nur 20 $ oder so, aber wenn Sie herausfinden müssen, wie Sie es online kaufen können (Kreditkarten, internationaler Versand, Devisenprobleme), kann es für Bastler ein Deal Breaker sein. Es gibt kein gutes,
MSP430 ist geringfügig besser, vor allem, weil es neuer ist (zumindest in Bezug auf die Popularität). TI liefert Ihnen IC-Muster mit Effizienz, die ich sonst nirgendwo gesehen habe. mspgcc ist in Ordnung und es gibt sogar eine Open-Source-Debugging-Software, die nicht schwer zu finden oder einzurichten ist. Das Problem ist jedoch, dass es nicht so hobbyfreundlich ist wie der AVR. Sie haben immer noch das Problem des Programmierers, das teurer ist als das, was Sie für einen PIC kaufen müssten. Die 3,3-V-Versorgung stellt eine wahrgenommene Barriere für Menschen dar, die an 5-V-Logik gewöhnt sind. Und es skaliert nicht im DIP - Es gibt Low-End-Chips, aber nicht, wenn Sie die besser ausgearbeiteten Chips erreichen.
Benutzerfreundlichkeit
DIP vs SMD, denke ich, ist eine wichtigere Unterscheidung, als es oft behauptet wird. Ein DIP-IC kann auf Steckplatinen, Allzweckplatinen, wie auch immer sie heißen, wo Sie leben, und so weiter verwendet werden. Ein SMD-IC erfordert zwangsläufig einen Fertigungslauf oder den Kauf von Adapterplatinen, die in der gewünschten Größe oder Form nicht immer leicht zu beschaffen sind.
Auch die Datenblattqualität, die Anwendungshinweise und deren Lesbarkeit machen einen Unterschied. Atmel scheint dabei einen geringfügig besseren Job zu machen. Das ist natürlich eine sehr subjektive Einschätzung.
AVRs können einen internen RC verwenden, PICs oft nicht. Sie benötigen einen Kristall, der in Kombination mit einem Mangel an Selbstbewusstsein ein wenig zerbrechlich ist.
AVRs schienen im Vergleich zu PICs vor ein paar Jahren auch mit In-System-Programmierung freundlicher zu sein, obwohl ich dort sehr leicht falsch liegen könnte.
AVR gegen ARM
Ihre Frage hatte jedoch mit AVR vs ARM zu tun. Wie ich zu Beginn sagte, besetzen AVR und ARM unterschiedliche Bereiche im Spektrum. Wenn Sie etwas haben, das Sie mit einem AVR tun können, warum sollten Sie es dann mit einem ARM tun? ARMs sind teurer, erfordern eine höhere Anzahl von Teilen, verbrauchen mehr Energie, komplizieren Code und erfordern teurere Herstellungsprozesse. Das Löten eines 100-poligen TQFP ist teurer als das Löten eines 40-poligen DIP / SOIC, je nachdem, wie Sie die Kosten messen. Dies gilt möglicherweise nicht, wenn Sie in großen Stückzahlen produzieren und die damit verbundenen Produktionstechniken anwenden. Wenn Sie dies jedoch tun, wird der Preisunterschied für die billigere Lösung noch zwingender.
Als Anlaufstelle für das allgemeine Hacken im Haus oder bei Ihnen würde ich sagen, dass AVR einfacher zu verwenden ist, weil: - Aus Hobby-Sicht standardisierter, mehr Code aus dem Internet wiederverwendbar ist, weil es nicht so viele gibt Compiler-Variationen und Variationen zwischen Registernamen und API unter Familienmitgliedern. (Versuchen Sie, LPC ARM-Code auf ATMEL ARM-Hardware zu portieren. Sie werden sehen, was ich meine.) - Code wird von Natur aus komplizierter. - Das Einrichten der Toolchain erfordert zusätzlichen Arbeitsaufwand. - Erleichtert das Anschließen etwas. ARMs würden Sie im Allgemeinen auf 3v3- oder 1v8-Logik bringen, was die Anbindung an andere Spielzeuge etwas problematisch macht. - Billiger - Einen ARM-Chip im örtlichen Baumarkt zu bekommen, ist für mich keine Option, wo ich wohne, sondern ein AVR.