Forum: Mikrocontroller und Digitale Elektronik ARM oder AVR


von meisteralex (Gast)


Lesenswert?

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

von Ale (Gast)


Lesenswert?

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.

von Düsentrieb (Gast)


Lesenswert?

guck dir einfach mal die datenblätter von nem
avr ca 180 seiten
arm ca 1000 ...
an, dann kannste dir den unterschied besser vorstellen :-)

von Ad D. (picant)


Lesenswert?

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 ;-)






von Sebastian Eckert (Gast)


Lesenswert?

> Es gibt praktisch (fast) nichts was man mit ihnen machen kann

Oh, dann ist der ganze Aufwand also umsonst? So was... ;)

von Ad D. (picant)


Lesenswert?

Tschuldigung, habe das "nicht" zwischen "ihnen" und "machen" vergessen
lol

von Gast (Gast)


Lesenswert?

ARM ist nur der Kern eines MCU. Die MCU Hersteller verbauen diese Kerne 
und spendieren diesen dann ihre eigenen Peripherie.

von meisteralex (Gast)


Lesenswert?

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.

von Peter D. (peda)


Lesenswert?

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

von Rolf Magnus (Gast)


Lesenswert?

> 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.

von Robby (Gast)


Lesenswert?

"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.

von Peter D. (peda)


Lesenswert?

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

von Robert Teufel (Gast)


Lesenswert?

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

von Mr C. (mrchip)


Lesenswert?

> 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.

von Sebastian Eckert (Gast)


Lesenswert?

@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.

von Ad D. (picant)


Lesenswert?

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...

von Peter D. (peda)


Lesenswert?

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

von A.K. (Gast)


Lesenswert?

> 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.

von Ad D. (picant)


Lesenswert?

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

von let (Gast)


Lesenswert?

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


von Ad D. (picant)


Lesenswert?

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
Noch kein Account? Hier anmelden.