Frage

Was sind die Vorteile der Verwendung von ATmega32 als andere Mikrocontroller? Ist es besser als PIC , ARM und 8051 ?

War es hilfreich?

Lösung

Es hängt davon ab .. Zunächst müssen Sie wissen, was Sie von dem Mikroprozessor wollen.

Generell gilt:

PIC:

  • Alte Architektur. Dies bedeutet, es ist entweder teuer oder langsam
  • Ziele nur Low-End-Markt (
  • Es gibt eine Menge Code für sie geschrieben

ARM

  • Scalable
  • Fast / billig

Atmega ist irgendwo zwischen

Andere Tipps

Vorteile

  1. läuft immer noch auf 5 V, so Vermächtnis 5 V Sachen Schnittstellen Reiniger
  2. Auch wenn es 5 V-fähig, können neuere Teile bis 1,8 V. laufen Diese breite Palette sehr selten ist.
  3. Nizza Befehlssatz, sehr guter Befehlsdurchsatz im Vergleich zu anderen Prozessoren (HCS08, PIC12 / 16/18).
  4. Hohe Qualität GCC-Port (kein proprietärer crappy Compiler!)
  5. "PA" Varianten haben gute Schlafmodus-Funktionen, in Mikroampere.
  6. abgerundeter Peripheriesatz
  7. QTouch Fähigkeit

Nachteile

  1. Still 8-Bit. Ein ARM ist ein 16/32-Bit-Zugpferd, und wird eine gute Menge mehr Daten herumkommandierst, bei vielen höheren Taktraten als jeden 8-Bit.
  2. Kosten. Kann 8-Bit-Prozessoren im Vergleich zu HCS08 oder anderen Schnäppchen teuer sein.
  3. GCC-Toolchain hat Macken, wie das Split-Speichermodell und beschränkt 16-Bit-Zeiger.
  4. Atmel ist nicht der beste Anbieter auf dem Planeten (zumindest sind sie nicht Maxim ...)

Kurz gesagt, sie sind sehr sauber und einfach zu arbeiten mit einem 8-Bit-Mikrocontroller.

Ein 8051 ist Vermächtnis: die Werkzeuge sind befahrbar, die Architektur bizarr (IDATA xdata nichtablaufinvarianten Funktionen in den meisten Compiler standardmäßig??).

PIC vor PIC24 ist auch bizarr (Registerbank) und schlechte Uhr- > Befehlsdurchsatz. Es gibt keine First-Class-Open-Source-C-Compiler entweder.

PIC32 ist mit ARM7TDMI und ARM Cortex-M3 im Wettbewerb auf der Grundlage eines MIPS Kern angepasst ist, und hat einen GCC-Port (nicht ausgekleideten Haupt).

AVR32 mit Cortex-M3 im Wettbewerb und bietet einen ziemlich guten Wert, vor allem im unteren Leistungsbereich.

MSP430 ist der König für Ultra-Low-Power-Geräte und hat eine passable GCC-Port (wenn Sie nicht 430X-Targeting).

HCS08 ist sehr preiswert, aber schlechter Befehlsdurchsatz. Peripherals variieren ziemlich viel.

ARM verwendet, um einen höheren Kosten Einstiegspunkt zu sein, aber mit der Einführung des Cortex-M3-Architektur hat sich der Preis auf einem 8-Bit verglichen fallen zu lassen. Zum Beispiel ist die LPC13xx Serie in vielerlei Hinsicht zu einem ATmega32 vergleichbar. Luminary (TI) hat durchaus einen beeindruckenden Peripheriesatz.

ich die PIC-Familie finden (vor der MIPS-Version), um den peinlichsten Befehlssatz von allen zu haben, was bedeutet, Assembler die Sprache der Wahl ist, wenn Sie zu sparen Raum wollen, Leistung erhalten, Kontrolle, usw.

Der 8051 ist ein bisschen weniger schmerzhaft, mehr Register, nimmt aber immer noch eine Hand voll von Anweisungen, etwas Sinnvolles zu tun (was bedeutet, Sie diese nicht auf andere Chips von einem MHz Perspektive vergleichen). Ich mag AVR in vielerlei Hinsicht, umarmen sie die homebrew und Entwickler-Community, oder wenn nicht direkt gibt es eine viel bessere Familie der Entwickler da draußen im Vergleich zum Wettbewerb. Ich weiß nicht, wie der Befehlssatz, aber es ist Jahrzehnte vor dem PIC und 8051. Ich mag den MSP430-Befehlssatz ziemlich viel, es ist eine der besten Befehlssätze für den Unterricht Assembler ist, TI ist nicht als Entwickler aber freundlich, es kann ein Kampf sein. Die eZ430 war auf dem richtigen Weg, aber die goodfet ist besser als Sie es nicht haben versagt jede andere Kernel-Version zu arbeiten.

MSP430 und ARM haben die besten Befehlssätze, soweit ich betroffen bin was dazu führt, sowohl gute Assembler und gute Compiler-Tools. Sie können kommerzielle Werkzeuge für alle der oben genannten und sicherlich für 8051, MSP430 und ARM kostenlose Tools (MSP430 und ARM finden GCC verwenden, 8051 kann nicht, sucht SDCC ). Vorerst mspgcc4.sf.net und CodeSourcery sind der richtige Ort für GCC-basierte Tools für MSP430 und ARM. LLVM unterstützt beide, ich war in der Lage LLVM zu bekommen 27 die neueste GCC in a Dhrystone Test , aber das ist ein Test, LLVM Trails hinter der Leistung aber verbessert.

Was finden und die Schaffung von freien Cross-Compiler LLVM ich sehe schon, wie am einfachsten zu bekommen und zu verwenden und für die Zukunft wird es hoffentlich nur noch besser werden. Leider ist der MSP430-Port für LLVM war ein Blick, was ich an einem Nachmittag Powerpoint-Präsentation tun konnte und kein ernsthafter Hafen.

Meine Antwort ist, dass es hängt davon ab, was Sie tun, und ich empfehle Ihnen, alle von ihnen versuchen. In diesen Tagen die Evaluierungs-Boards sind in der Unter US $ 50 Bereich und einige in der Unter US $ 30 Bereich. Selbst innerhalb der ARM-Familie ( ST , Atmel, Stellaris, LPC, etc.) gibt es eine breite veriety von Funktionen und Macken, dass Sie nur finden, wenn Sie sie versuchen. Vermeiden Sie die LPCexpresso, mbed2 und STM32 Primer. Vermeiden Sie LPC im Allgemeinen und zur Vermeidung von Cortex-M3 in der Regel, bis Sie Ihre Zähne auf einem ARM7 geschnitten haben. Schauen Sie sich SparkFun für Olimex und anderen Boards. Obwohl es LPC wahrscheinlich die ARMmite PRO und Arduino Pro sind eine gute Wahl. Die eZ430 ist ein guter MSP430 Start, und ich erinnere mich nicht, wer 8051 Sachen macht, Renasys (sp?), 8051s sind nicht alle gleich, ändert sich die Registerraum von einem zum anderen und man muss dafür vorzubereiten. Ich würde wahrscheinlich für einen 8051-Simulator aussehen, wenn Sie mit den 8051 spielen wollen.

Ich sehe AVT und definitiv ARM zu dominieren weiterhin, würde Ich mag die MSP430 für Dinge verwendet werden, um zu sehen, andere als einfach super niedrige Leistung. Mit ARM, AVR und MSP430 können Sie verwenden und GCC-Tools gewöhnen jetzt und in der Zukunft, die viele Vorteile hat, auch wenn GCC nicht die beste Compiler in der Welt ist, ist es bei weitem der beste unterstützte Compiler. Ich möchte vermeiden, proprietäre Compiler und Tools. Ich würde für Geräte suchen, die nicht-proprietäre Programmierschnittstelle, die feldprogrammierbare sind, JTAG ist gut, aber zum Beispiel das neue SWD JTAG auf Cortex-M3 ist schlecht. TI MSP durch diese verletzt wurde, aber einige Hacking dies beschlossen hat, zumindest für jetzt. ich wirklich nicht viel gut über PIC zu sagen und nicht versuchen. eine große Sache zu suchen ist glue-Logik, tut das Teil oder die Familie hat die SPI oder I2C oder was auch immer Sie wollen, Bus zu verwenden, benötigen Sie einen internen Pull-up oder verdrahtet oder Eingabe?

Einige Chips haben einfach nicht diese Option, und Sie müssen externe Hardware hinzuzufügen. Sie benötigen einen Interrupt, mit Anlage? ARM neigt dazu zu gewinnen, weil es einen Kern von vielen, so dass jeder ARM-Anbieter stellt seine eigenen I / O da draußen so können Sie immer noch leben in der ARM-Welt und haben viele Möglichkeiten, AVR und MSP werden werden sehr begrenzt verwendet wird, ist durch Vergleich. Mit ARM die Werkzeuge werden Stand der Technik sein, ist ARM die am häufigsten verwendete Prozessor jetzt. AVR und MSP sind spezielles Projekt Addons, weniger breit abgestützte und zerbrechlich. Obwohl ARM Low-Power Intel im Vergleich befindet sich auf einem SBC oder Computer-Plattform, ist es wahrscheinlich, nicht als Low-Power als AVR oder MSP. Sie müssen wirklich an Ihrem Projekt suchen und den richtigen Prozessor für den Job wählen, würde ich nicht und halte mich nicht auf eine Familie beschränken. Mit so billig wie die Evaluation Boards sind, und können fast alle kostenlose Tools verwenden, ist es nur eine Frage der in in ein paar Nächte oder Wochenenden setzen jeweils zu lernen. Ich schlage vor, mehr als eine AVR Lernen und mehr als einen Mikroprozessor zu lernen.

An diesem Ende des Spektrums gibt es nur wirklich zwei Faktoren, die viel Unterschied machen. Zunächst wird in kleineren Mengen, die einzige Sache, die Dinge überhaupt ist die Architektur passt Ihre Entwicklung muss am besten. Wenn Sie mit PIC bereits vertraut sind, ist es nicht viel Sinn in das Lernen avr, oder umgekehrt. Wählen Sie eine Architektur, die Sie mögen, dann sortieren durch die Optionen auf dieser Architektur zu sehen, welches Modell ist bis auf Ihre Bedürfnisse.

Menge (etwa 20 oder mehr Einheiten), könnten Sie durch genau die richtige Plattform entschieden haben profitieren, dass genau Ihre Geräte den Bedürfnissen entspricht, wie möglich die Kosten so niedrig zu halten.

Generell Pic und avr-Plattformen sind gut für die einfache, einzelne Funktionsgeräte, in denen als Arm in Fällen verwendet wird, in dem Sie einen vollständigen OS-Stack wie QNX oder Linux müssen für Dinge wie TCP oder Echtzeit mit OS-Diensten.

Wenn Sie die größte Auswahl an Peripheriegeräten wollen, Leistung, Preis-Punkt, Software und Tool-Unterstützung und Lieferanten, es wäre schwer, einen ARM Cortex-M3-basierten Teil zu schlagen.

Aber Ihre Frage direkt den gesamten AVR Bereich Adressierung hat eine einheitliche Architektur und gemeinsamen Peripheriesatz vom Tiny zum Mega (nicht AVR32 aber das ist ganz anders). Dies ist der wesentliche Unterschied mit PIC, wo, wenn Sie den Bereich (PIC10, 12, 16, 18, 24, 32) nach oben bewegt, können Sie verschiedene Peripherie Designs, verschiedene Befehlssätze und Bedarf erhalten in verschiedenen Compilern und Debug Hardware zu investieren.

Der Befehlssatz für AVR wurde für eine effiziente C Codekompilierung entworfen (wiederum im Gegensatz zu PIC).

8051 ist eine Architektur, die ursprünglich von Intel vor Jahrzehnten eingeführt, aber jetzt als Kern für 8-Bit-Geräte von einer Reihe von Anbietern verwendet. Es hat einige clevere Tricks wie effiziente Multitasking-Kontext über seine 8 duplizierten Registerbanken schaltet, und einen Block von Bit-Speicher, hat aber eine schrullige Speicherarchitektur und begrenzten Adressbereich (wie die meisten 8-Bit-Geräte). Ideal für kleine und gezielt Geräte, aber nicht wirklich für allgemeine Zwecke.

ARM Cortex-M3 ersetzt im Wesentlichen ARM7TDMI und ist ein sauberes Design mit durchdachter Architektur. Es erfordert nur minimalen Assembler Start-up-Code und sogar ISRs und Vektortabellen können direkt ohne irgendwelche seltsamen Compiler Erweiterungen oder Assembler Entry / Exit-Code in C codiert werden. Seine bitbanding Technik erlaubt es, alle Speicher und Peripheriegeräte atomar bitadressierbar zu sein, die für eine schnelle I / O und sicher Multithreading nützlich ist. Grundsätzlich ist es konzipiert C oder C ++ Code auf der Systemebene, ohne Nicht-Standard-Compiler-Erweiterungen zu ermöglichen. Es ist natürlich eine 32-Bit-Architektur, so dass nicht die Ressource oder arithmetische Einschränkungen von 8-Bit-Geräten hat. Die Preise für Low-End-Teile konkurrieren mit höherer Leistung 8-Bit-Geräte und die meisten 16-Bit-Geräte blasen aus dem Wasser (16 Bit fast überflüssig machen).

Eine andere wichtige Sache zu erinnern ist, dass PIC und AVR von einzelnen Anbietern sind, während 8051 und ARM-Cores lizenziert sind. Jeder Lizenznehmer fügt ihre eigenen Peripheriesatz, so gibt es keine Gemeinsamkeit zwischen den Anbietern auf Peripheriegeräte, also Gerätetreibercode Bedürfnisse zu portieren, wenn Anbieter wechseln, und Sie müssen den Teil, um sicherzustellen, die Peripheriegeräte, die Sie benötigen. Wenn Sie Ihr Gerät Schicht gut entwickeln, ist dies selten ein großes Problem.

Nun, es ist nicht leicht zu beantworten. Es hängt vor allem davon ab, was vor Ihnen verwendet. Wenn Sie bereits AVR-Benutzer sind, dann ist es gut zu bedienen. Auf der anderen Seite können Sie PICs mit ähnlichen Fähigkeiten finden, so würde ich sagen, es ist vor allem persönliche Präferenz. Ich denke, dass die meisten Arme sind besser in der Lage als ATMega32 Serie. Wenn Sie gute Ratschläge möchten, sagen Sie uns, was Sie vorhaben, es zu benutzen für.

hat AVRs flaches Speichermodell und hat freie Entwicklungs-Tools und günstige Entwicklung Hardware ist für sie zur Verfügung.

Ich weiß nicht genug über 8051 Stellung zu nehmen.

Oh, und wenn Sie denken über den ursprünglichen ATmega32, würde ich sagen, es ist eine schlechte Idee. Es wird bald veraltet sein, so dass Sie neuere Modelle aus der ATmega32 Serie betrachten möchten.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top