Kann mir jemand mal den Unterschied zwischen ARM und AVR erklären ? Wofür benutze ich was und was hat welche Vorteile ? Sorry für die "dumme" Frage aber bin halt zimich unbeholfen auf dem Gebiet
AVR: 8 bit RISC ARM: 32 bit RISC Ich wurde (nochmal) lesen die 2 Kapiteln auf AVR und ARM (hier), und nach ich wurde eine Frage stellen (wenn etwas nicht ganz klar ist, timer oder dma, usw.). Vielleicht, etwas auch über Mikrocontroller/Prozessoren (ganz allgemein) auch lesen.
guck dir einfach mal die datenblätter von nem avr ca 180 seiten arm ca 1000 ... an, dann kannste dir den unterschied besser vorstellen :-)
So sieht das aus: Mensch hat Interesse zu Elektronik(Digital), dann beschäftigt er sich 1. mit einfachen Digital IC's 2. mit 8 Bit MC's 3. nochmal damit 4. und nochmal bis er alles versteht und Assembler und noch eine andere Hochsprache beherrscht 5. nach 100 Jahren kann er sich dann langsam an die ARM wagen ARM haben höheren Takt, mehr Bit, einfach alles ist besser, schneller und höher. Die sind mittlerweile auch Standard in vielen PDA's, Spielekonsolen(Nintendo DS),... Es gibt praktisch (fast) nichts was man mit ihnen machen kann Die nächste Stufe ist dann der Quantencomputer ;-)
> Es gibt praktisch (fast) nichts was man mit ihnen machen kann
Oh, dann ist der ganze Aufwand also umsonst? So was... ;)
ARM ist nur der Kern eines MCU. Die MCU Hersteller verbauen diese Kerne und spendieren diesen dann ihre eigenen Peripherie.
hmm also würdet ihr sagen das die avrs für 90% aller fälle ausreichen und wenn man große Projekte mit viel Rechenleistung braucht man die ARMs nehmen sollte ? Mich würde mal interessieren, welche Projekte ihr bis jetzt realisiert hattet wo ihr um die Verwendung eines ARMs nicht herumkahmt.
Wenn Du irgendwelche nützlichen Geräte bauen willst (Frequenzmesser, Zeitschaltuhr, Modellbahnsteuerung, Heizungssteuerung, Roboter usw.), dann ist der AVR ideal. Den ARM ist nur dann besser, wenn Du große Mengen Daten schnell umherschaufeln mußt (große Grafikdisplays, Webserver, Filesysteme), also irgendwelche Sachen, die man eigentlich billiger fertig zu kaufen kriegt. Peter
> hmm also würdet ihr sagen das die avrs für 90% aller fälle ausreichen Kommt auf die Fälle an. ;-) Wenn du keine Ahnung hast und einsteigen willst, fang erstmal mit AVR an. Die ARMe sind deutlich komplizierter. Wenn du dann ein Projekt hast, für das der AVR nicht mehr reicht, kannst du dich dann an einen ARM heranwagen. Die Erfahrungen, die du mit dem AVR bis dahin gesammelt hast, sind dann immer noch sehr nützlich.
"Wenn Du irgendwelche nützlichen Geräte bauen willst (Frequenzmesser, Zeitschaltuhr, Modellbahnsteuerung, Heizungssteuerung, Roboter usw.), dann ist der AVR ideal." Nana, Roboter ist ja nun ein schlechtes Beispiel. Wenn der ein bißchen mehr können soll als auf ner Linie lang fahren, also z.B. Umgebungserkennung, Orientierung, etc., dann ist ein AVR sicher das letzte, was man dafür nimmt. Als Motorcontroller taugt der, aber nicht für mehr. Da ist ein ARM mit viel Speicher angebracht.
Robby wrote: > Nana, Roboter ist ja nun ein schlechtes Beispiel. Wenn der ein bißchen > mehr können soll als auf ner Linie lang fahren, also z.B. > Umgebungserkennung, Orientierung, etc., dann ist ein AVR sicher das > letzte, was man dafür nimmt. Als Motorcontroller taugt der, aber nicht > für mehr. Da ist ein ARM mit viel Speicher angebracht. Nana, nicht jeder will ja gleich zu Anfang nen Aibo mit Bild- und Spracherkennung nachbauen. Bildverarbeitung zählt für mich auch zu "große Mengen Daten verarbeiten". Abstandssensoren, Lichtschranken, Drehencoder usw. kann der AVR prima einlesen und daraus ne Hinderniskarte anlegen und Wegeoptimierung machen (automatischer Rasenmäher, Staubsauger). Peter
Vielleicht noch ein paar zusaetzliche Punkte. Falls der Programmspeicher von 64k nicht ausreicht, ist es auf jeden Fall eine Erwaegung wert auf den ARM zu gehen. Die werden bei groesserem Speicher schlicht und ergreifend billiger obwohl sie deutlich mehr koennen. Also ARM dann, wenn ein "schneller Rechenknecht" gesucht wird, falls Floating Point in vernueftigen Zeiten passieren soll, wenn mehrere 100 kB Flash Programm Fixdaten angesagt sind, wenn 4k SRAM einfach zu wenig ist. AVR dann, wenn die Einarbeitungszeit kritisch ist und wenig Erfahrung in Micros vorliegt, wenn Programme voraussichtlich relativ klein sein werden, wenn kein externer bus mit externem Speicher angesagt ist, wenn das meiste im Programm daraus besteht Eingaenge abzufragen (bit Verarbeitung). Beide Architekturen haben Vorteile und die Anwendungsfaelle ueberlappen mehr und mehr, weil es sehr kleine und billiger ARM Micros gibt aber die Einstiegsschwelle wohl immer hoeher sein wird fuer den 32-bitter. Noch eine kleine Bemerkung am Ende. Es gibt fast ausschliesslich Umsteiger von AVR zu ARM, nicht von ARM zu AVR. Wer den ARM mal verstanden hat, wird fast immer Gruende finden weshalb er keine 8-bitter mehr einsetzen moechte. Also fuer die Zukunft, die ARM Architektur zu beherrschen macht im Lebenslauf viel mehr her als AVR zu kennen :-) Das ARM-Wasser, in das Du springen musst ist allerdings kaelter als das AVR Wasser, und Du musst zu Beginn mehr arbeiten damit es Dir wARM wird. Robert
> 1. mit einfachen Digital IC's > 2. mit 8 Bit MC's > 3. nochmal damit > 4. und nochmal bis er alles versteht und Assembler und noch eine andere > Hochsprache beherrscht > 5. nach 100 Jahren kann er sich dann langsam an die ARM wagen Kaum. Etwas Elektronik-Grundlagen sind wohl unumgänglich, aber Digital-ICs kann man getrost auslassen. Und je nach Voraussetzungen in Elektronik und Programmierung kann man durchaus direkt auf die ARMs los.
@Mr. Chip: Das hängt davon ab, wo man hin will. Wer sich beispielsweise irgendwann mit FPGAs beschäftigen will, wird gerade mit den Digital-ICs erlernte Grundlagen zu schätzen wissen.
Eigentlich habe ich sogar etwas ausgelassen: vorher sollte man sich eingehend mit analoger Elektronik beschaftigt haben. Sonst fragen die Leute in diesem Forum Wie groß muss denn der Widerstand sein für... . Außerdem finde ich schon, dass man nicht nur die Grundlagen über Digital ICs und Gatter können sollte. Es ist doch pervers wenn einer nicht weiß was ein Und Gatter ist aber mit einem MC arbeiten möchte...
Robert Teufel wrote: > Also ARM dann, wenn ein "schneller Rechenknecht" gesucht wird, falls > Floating Point in vernueftigen Zeiten passieren soll "vernueftigen Zeiten" ist mal wieder eine super konkrete Zahl die ich so liebe. Wenn es z.B. für ne Displayausgabe ist (der Mensch kann etwa 5 Werte/s erfassen), dann ist schon die Floating Point Leistung eines auf 100kHz stark gedrosselten AVRs "vernünftig". > Noch eine kleine Bemerkung am Ende. Es gibt fast ausschliesslich > Umsteiger von AVR zu ARM Umsteiger habe ich noch nicht gesehen. D.h. der AVR wird nicht weggeschmissen, sondern einfach beides weiter verwendet, je nach Aufgabe eben. Es macht nämlich überhaupt keinen Sinn, kleine ATtiny25 oder ATmega88 Anwendungen auf nen ARM zu explodieren. Schon allein die Kosten für das Routen und die zusätzliche Hardware (2 Spannungsregler, Analogreferenz, Reset-, Oszillatorbeschaltung). Peter
> sollte man sich eingehend mit analoger Elektronik > beschaftigt haben Erscheint mir auch wichtiger als mit Gatter-ICs. Angesichts der Verkrampfungen und zauberhaften Lösungen mit denen Anfänger gerne Verbraucher aller Art jenseits von ein paar mA anschliessen wollen. Wobei der Begriff "eingehend" diskutabel ist, es sollte aber schon dafür reichen, zu wissen wann NPN,PNP,Emitter-,Kollektorschaltung und so in der Art.
also mehr über Elektronik zu wissen schadet nie wenn man etwas mit MCs machen will. Nur finde ich es schwachsinnig ohne eine solide Wissensgrundlage über Elektronik mit MCs arbeiten zu wollen. Vielleicht holt man sich da schnell irgendein Board, das aufgebaut ist und man deshalb nicht lange mit Werten herumrechnen muss und alles schon parat hat. Irgendwann erreicht man aber einen Punkt, an dem man merkt, dass man auch Wissen aus ganz anderen Bereichen besitzen muss, um ein Projekt zu realisieren. Ich spreche jetzt von dem Hobbyelektroniker, der sich alles selbst erarbeiten muss. Je mehr man weiß, desto weiter kommt man und desto effektiver arbeitet man
Ein Hobbyelektroniker muß nicht effektiv arbeiten. Das Hobby muß nur interessant und bezahlbar sein. So ein ARM ist für einen Anfänger meiner Meinung nach nicht interessanter als ein AVR. Eher im Gegenteil. Das schöne am AVR ist ja u. a. das man nicht (nur) auf Entwicklungsboards angewiesen ist, sondern dank Verfügbarkeit bedrahteter Bausteine leicht eigene Hardwareprojekte realisieren kann. Eine SMD-Platine macht man nicht mal auf die Schnelle und ist auch relativ teuer. Gleich mit den dicken Brummern anzufangen halte ich für keine gute Idee, da man kein Gespür für das Wesentliche entwickelt. Im Vergleich zum AVR hat ein ARM Rechenleistung und Speicher ohne Ende. Wer das nicht anders kennt, wird wohl Probleme bekommen wenn es darum geht mal etwas einfach zu lösen. Das dürfte dann auch beim Arbeitgeber nicht besonders ankommen wenn sein Neuling zur Entwicklung einer Frontplatine einen ARM einplant und nachfragt wo die Installationsdateien für UML-Tools und RTOS zu finden sind. Umgekehrt sieht man allerdings auch immer wieder das Leute sich damit schwer tun einzusehen das ein 32-Bitter für das eine oder andere Problem vielleicht doch besser geeignet ist. Also auch dann wenn es mit einem 8-Bitter noch gehen würde. Die Grenzen zwischen den Einsatzgebieten der Controllerfamilien sind halt fließend und auf Dauer gesehen ist man gut beraten sich mit beiden zu befassen. - Michael
Effektiv Arbeiten bedeuted im diesem Zusammenhang nicht mehr Platinen/h zu erzeugen oder Projekte durchzubringen, sondern nicht irgendwelche dummen Fehler zu machen, wodurch etwas nicht funktioniert und man deshalb stundenlang suchen muss und es nicht findet. Wer effektiv Arbeitet, der vermeidet solche fehler (ausschließen kann sie keiner!).
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.