Vorteile der atmega32
Was sind die Vorteile der Verwendung von ATmega32 als andere mikrocontroller?
Ist es besser als PIC, ARM, und Acht tausend eins und fünfzig?
- Die AVR-Familie hat ein GCC-basierte IDE, die frei für die ganze Reihe Ihrer Prozessoren. Vom kleinsten zum größten, ein code, Sie alle zu beherrschen. AVR ist eine 8-bit CPU auf dem gleichen Takt, es ist 4 mal schneller als 8-bit-PIC-und 12-mal schneller, dann 8051. ARM 32-bit, stärker und viel mehr macht hungrig. Es wird Sie Essen die Batterie schnell beim AVR laufen für Wochen oder Monate. Sie sind nicht in der gleichen Größenordnung, und nicht für die gleichen Aufgaben. Es wäre wie der Vergleich 4GHz-quad-core-blentium PC auf kleinen ARM, läuft Ihr Handy.
- "ein code, Sie alle zu Knechten"... ist nicht 100% genau. register/pin/timer und ISR Unterschiede bestehen, neben paar anderen unterschieden. Ja, Sie bekommen von der Verwendung von regulären gnu C (C99) compiler und die IDE ist üblich.
InformationsquelleAutor Komal | 2010-05-10
Schreibe einen Kommentar Antworten abbrechen
Du musst angemeldet sein, um einen Kommentar abzugeben.
Es hängt davon ab.. Erstens müssen Sie wissen, was Sie wollen aus dem Mikroprozessor.
Im Allgemeinen:
PIC:
ARM
Atmega ist irgendwo zwischen
Vorteile
Nachteile
Kurz, Sie sind eine sehr saubere und einfach zu arbeiten mit einem 8-bit-mikrocontroller.
Einem 8051 ist Vermächtnis: die Instrumente sind passabel, die Architektur ist Bizarr (idata? xdata? non-reentrant-Funktionen in den meisten Compiler standardmäßig?).
PIC vor PIC24 ist auch bizarren (register, Banken) und die schlechte Uhr->befehlsdurchsatz. Es gibt keine first-class-open-source-C-compiler entweder.
PIC32 in Konkurrenz mit der ARM7TDMI und ARM Cortex-M3, basierend auf einem angepassten MIPS-Kern und hat einen GCC-port (nicht main-gefüttert).
AVR32 ist im Wettbewerb mit Cortex-M3, und bietet einen ziemlich guten Wert, vor allem in den low-power-Bereich.
MSP430 ist der König für ultra-low-power-Geräte, und hat eine passable GCC-port (wenn Sie nicht die Ausrichtung 430X).
HCS08 ist sehr preiswert, aber schwache befehlsdurchsatz. Peripherie je ein wenig Recht.
ARM verwendet werden, um eine höhere Kosten-Einstieg, aber mit der Einführung des Cortex-M3-Architektur wurde der Preis fallen im Vergleich zu einem 8-bit. Zum Beispiel, die LPC13xx-Serie ist vergleichbar mit einem ATmega32 in vielerlei Hinsicht. Luminary (TI) hat eine beeindruckende Peripherie.
Ich finde die PIC-Familie (bevor die MIPS-version) zu haben, die meisten schmerzhaft-Befehlssatz von allen, was bedeutet, assembler ist die Sprache der Wahl, wenn Sie wollen, um Platz zu sparen, Holen Sie sich die Leistung, Kontrolle haben, etc.
Den 8051 ist ein bisschen weniger schmerzhaft, mehr Register, aber dauert noch eine Handvoll Anweisungen, etwas nützliches zu tun (d.h. man kann nicht vergleichen Sie diese mit anderen chips aus einem MHz-Perspektive). Ich mag die AVR in vielerlei Hinsicht, umarmen Sie die homebrew-und Entwickler-community, oder, wenn auch nicht direkt, es ist eine viel bessere Familie der Entwickler im Vergleich zur Konkurrenz. Ich weiß nicht, wie der Befehlssatz, aber es ist Jahrzehnte vor den PIC-und 8051. Ich mag die MSP430-Befehlssatz ein bisschen, es ist eines der besten sets von Anweisungen für die Lehre assembler, TI ist nicht so Entwickler-freundlich obwohl, es kann ein Kampf sein. Die eZ430 auf dem richtigen Weg war, aber die goodfet ist besser als Sie nicht haben, es versäumt zu arbeiten, alle anderen kernel-version.
MSP430 und ARM haben die besten Anleitungen-sets soweit ich bin besorgt, die dazu führt, sowohl gute als assembler und guter compiler tools. Finden Sie kommerzielle tools für alle der oben genannten und sicherlich für 8051, MSP430, ARM-und Kostenlose tools (MSP430 und ARM verwenden kann, GCC, 8051 nicht, suchen Sie nach SDCC). Für jetzt mspgcc4.sf.net und CodeSourcery sind der Ort für die GCC-basierten tools für MSP430 und ARM. LLVM unterstützt, ich war in der Lage, LLVM 27, schlagen die neueste GCC in einer dhrystone-test, aber das ist ein test, LLVM Wege hinter in der Leistung, sondern verbessert.
So weit wie der Suche nach und die Schaffung von frei-cross-Compiler, die ich sehen LLVM bereits als die am einfachsten zu bekommen und zu nutzen und vorwärts gehen wird es hoffentlich nur besser werden. Leider ist der MSP430-port für LLVM war zu sehen, was ich tun könnte, an einem Nachmittag PowerPoint-Präsentation und nicht eine ernsthafte port.
Meine Antwort ist, dass es hängt davon ab, was Sie tun, und ich empfehle, dass Sie versuchen, alle von Ihnen. In diesen Tagen werden die Evaluierungs-boards sind in der sub - $50-Reihe und einige in der sub-US$30-Bereich. Auch innerhalb der ARM-Familie (ST, Atmel, Stellaris, LPC, etc.) es gibt ein breites veriety von features und Macken, die Sie nur finden, wenn Sie versuchen, Sie. Vermeiden Sie das LPCexpresso, mbed2, und STM32-Primer. Vermeiden LPC im Allgemeinen und vermeiden Cortex-M3-im Allgemeinen, bis Sie schneiden Sie Ihre Zähne auf einem ARM7. Suchen Sie bei SparkFun für Olimex und anderen boards. Es ist zwar wahrscheinlich LPC die ARMmite PRO und Arduino Pro sind eine gute Wahl. Der eZ430 ist eine gute MSP430 start, und ich erinnere mich nicht, wer macht 8051 Zeug, Renasys (sp?), 8051s sind nicht alle gleich geschaffen, register Raum variiert von einem zum anderen und Sie haben einiges vorzubereiten. Ich würde wahrscheinlich für einen 8051 simulator, wenn Sie spielen wollen, mit der 8051.
Ich sehe AVT und definitiv ARM weiterhin Dominieren, ich möchte sehen, wie der MSP430 verwendet werden, für andere Dinge als nur super-low-power. Mit ARM, AVR und MSP430, die Sie verwenden können, und gewöhnen sich an die GCC-tools heute und in der Zukunft, die hat eine Menge Vorteile, auch wenn GCC ist nicht der beste compiler der Welt, es ist mit Abstand der am besten unterstützten compiler. Ich möchte vermeiden, proprietäre Compiler und tools. Ich würde schauen, für Geräte mit nicht-proprietäre Programmierschnittstellen, sind field programmable, JTAG ist gut, aber zum Beispiel die neue SWD JTAG auf den Cortex-M3 ist schlecht. TI MSP verletzt war, von diesem aber einige hacken hat dieses Problem gelöst, zumindest für jetzt. Ich habe nicht wirklich viel gutes zu sagen über PIC und nicht versuchen,. Eine große Sache zu suchen ist, glue logic, funktioniert das Teil oder Familie haben, die SPI oder I2C oder was auch immer bus, den Sie verwenden möchten, benötigen Sie einen internen pull-up-oder Kabel oder Eingang?
Einige chips, die nur don ' T haben diese option, und Sie haben, um eine externe hardware. Brauchen Sie einen interrupt, mit Klimaanlage? Der SCHWENKARM die Tendenz hat zu gewinnen, weil es ein Kern von vielen genutzt, so dass jeder ARM-Hersteller setzt seine eigenen I/O gibt, so können Sie Leben immer noch in der ARM-Welt und haben viele Möglichkeiten, AVR und MSP sind das gehen zu sein vergleichsweise sehr begrenzt. Mit ARM-tools werden Stand der Technik, der ARM ist der am häufigsten verwendete Prozessor jetzt. AVR und MSP sind spezielle Projekt-addons, die weniger weit unterstützt und zerbrechlich. Obwohl Sie ARM ist, geringe Leistung im Vergleich zu Intel auf ein SBC oder computer-Plattform, ist es wahrscheinlich nicht als low-power als ein AVR oder MSP. Sie müssen wirklich Blick auf Ihr Projekt und wählen Sie den richtigen Prozessor für den job, ich würde es nicht tun und nicht mich darauf beschränken, eine Familie. Mit so Billig wie die evaluation-boards, und fast alle können Kostenlose tools, es ist nur eine Frage der Einführung in ein paar Nächte oder Wochenenden zu lernen, jeder. Ich schlage vor, Sie lernen mehr, als ein AVR, und das lernen mehr als ein Mikroprozessor.
An diesem Ende des Spektrums, gibt es eigentlich nur zwei Faktoren, die machen viel Unterschied. Zuerst in kleineren Mengen, das einzige, was zählt, ist, die Architektur passt Ihre Entwicklung braucht, am besten. Wenn Sie bereits vertraut sind mit PIC, es gibt nicht viel Punkt in Lern-avr, oder Umgekehrt. Wählen Sie eine Architektur, die Ihnen gefällt, dann Sortieren Sie durch die Optionen auf, die Architektur zu sehen, welches Modell Ihren Bedürfnissen entspricht.
In der Menge (sagen wir, 20 oder mehr Einheiten), könnten Sie davon profitieren, indem Sie genau die richtige Plattform, entspricht exakt Ihrer Geräte benötigt, um zu halten die Kosten so niedrig wie möglich.
Im Allgemeinen, Pic-und avr-Plattformen sind gut für einfache, single-function-Geräte, wo, wie arm verwendet, in Fällen, in denen müssen Sie eine vollständige Betriebssystem-Stacks, wie z.B. QNX oder Linux für Dinge wie TCP-oder Echtzeit-mit OS services.
Wenn Sie möchten, eine Breite Auswahl an Peripherie, Leistung, Preis-Punkt -, software-und tool-Unterstützung und Lieferanten wäre es schwer zu schlagen ein ARM-Cortex-M3-basierten Teil.
Aber um Ihre Frage direkt den gesamten AVR Bereich ist eine konsistente Architektur und gemeinsame Peripherie von der Kleinen auf die Mega (nicht AVR32 jedoch die ganz anders ist). Dies ist der wesentliche Unterschied mit PIC, wo beim verschieben der Palette( PIC10, 12, 16, 18, 24, 32), Sie bekommen verschiedene Peripherie-Entwürfe, verschiedene Befehlssätze und müssen investieren in unterschiedliche Compiler-und debug-hardware.
Die Anleitung für AVR wurde speziell für die effiziente C-code-Kompilierung (wieder im Gegensatz zu PIC).
8051 ist eine Architektur, die ursprünglich von Intel vor Jahrzehnten, aber jetzt verwendet als Kern für 8 bit-Geräte von mehreren Herstellern. Es hat einige clevere tricks, wie effizientes multitasking context-switches über seine 8 dupliziert register Banken, und einen block von bit-adressierbaren Speicher, hat aber ein witziges memory-Architektur und begrenzten Adressbereich (wie die meisten 8-bit-Geräte). Ideal für kleine gezielte Geräte, aber nicht wirklich für Allgemeine Zwecke.
ARM Cortex-M3 ersetzt im wesentlichen ARM7TDMI, und ist eine sauberere design mit durchdachter Architektur. Es erfordert nur minimale assembler start-up-code und sogar ISRs und Vektor-Tabellen können programmiert werden, die in C direkt, ohne seltsame compiler-Erweiterungen oder assembler entry/exit-code. Seine bitbanding-Technik erlaubt es, alle Speicher und die Peripheriegeräte werden atomar bit-adressierbar, was nützlich ist für die schnelle I/O und Sicheres multithreading. Im Grunde ist es entworfen, um zu erlauben, C-oder C++ - code an der system-Ebene ohne nicht-standard-compiler-Erweiterungen. Es ist natürlich ein 32-bit-Architektur, also nicht die Ressource oder das arithmetische Einschränkungen von 8-bit-Geräte. Die Preise für low-end-Teile konkurrieren mit höherer Leistung, die 8-bit-Geräte, und Schlag die meisten 16-bit-Geräte aus dem Wasser (macht 16-bit fast überflüssig).
Eine weitere wichtige Sache zu erinnern ist, dass PIC und AVR sind von einzelnen Anbietern, während 8051 und ARM lizenziert sind Kerne. Jeder Lizenznehmer fügt Ihre eigenen Peripherie-set, es gibt also keine gemeinsamkeit zwischen den Anbietern auf-Peripherie und Gerätetreiber-code muss die Portierung beim Umschalten Anbieter, und Sie müssen, um sicherzustellen, das Teil hat die Peripheriegeräte, die Sie benötigen. Wenn Sie das design Ihres Geräts Schicht gut, das ist selten wirklich ein problem.
Gut, es ist nicht leicht zu beantworten. Es hängt hauptsächlich davon ab, was Sie vorher benutzt. Wenn du schon AVR-Benutzer sind, dann ist es gut zu verwenden. Auf der anderen Seite finden Sie Bilder mit ähnlichen Fähigkeiten, also würde ich sagen, es ist meist persönliche Präferenz. Ich denke, dass die meisten Armen sind mehr in der Lage, als atmega32-Serie. Wenn Sie wollen, guten Rat, sagen Sie uns, was Sie planen, es zu benutzen für.
AVRs haben flat-memory-Modell und Kostenlose Entwicklungs-tools und der günstigen Entwicklung der hardware zur Verfügung für Sie.
Ich weiß nicht genug über 8051, sich zu äußern.
Oh, und wenn Sie über das denken sind original atmega32, ich würde sagen, es ist eine schlechte Idee. Es wird bald veraltet, so möchten Sie vielleicht zu prüfen, neuere Modelle aus der atmega32-Serie.