Hallo Leute, ich bin in der Microcontroler-Welt relativ neu. Ich will mir momentan einen Microcontroler anschaffen und schwanke zwischen den Bautypen AVR und ARM. Deshalb möchte ich gerne den Unterschied der beiden Typen wissen. In google findet man nur den Vergleich von AVR und PIC. Ich habe mich über die unterschiedlichen Geschwindigkeiten gewundert. AVRs findet man häufig mit bis zu 16MHz, während die ARMs mit 60MHz am häufigsten zu finden sind. Dabei kosten Boards meist das selbe. Das Einsatz-Gebiet ist rein zum Experimentieren und ich möchte nicht, dass ich die Programmierung bspw eines AVRs lerne und danach umständlich auf ARMs umlernen müsste. heimschmiede
AVR ist einfacher als ARM würde ich sagen. ARM ist deutlich schneller und komplexer. die devboards sind sowieso alle überteuert, das macht zwischen AVR und ARM keinen großen unterschied. Im einkauf aber nehmen sich AVR und ARM vom Preis her auch nicht viel. ARM sind aber stromhungriger als AVRs und man bekommt auch keine ARM basierten mini-controller (wie die tiny serie von atmel).
das heißt, wenn ich stromsparende (wahrscheinlich portable) dinge machen möchte, dann nehm i den atmel avr und wenns um pure rechenleistung geht, dann den arm. mal schaun. ich hab auch gesehn, dass mit dem atmega8 schon ne richtige menge geht! danke für die info! heimschmiede
Hallo Erzähle uns doch am besten mal, was du ungefähr damit machen möchtest. Ich denke mal, die Einsatzgebiete von AVRs und ARMs sind doch gewissermassen grundsätzlich nicht dieselben. Einen AVR verwendet man wohl meist für einfachere Steuer- und Regelaufgaben, wobei natürlich durchaus was drin liegt - siehe diverse Projekte. Ein ARM hat wesentlich mehr Rechenpower, nur schon der Architektur und der höheren Taktrate wegen. Die Leistung wird man aber erst brauchen, wenn grosse Datenmengen wirklich schnell verarbeitet werden müssen, beispielsweise zum Ansteuern grosser Grafikdisplays, schnelle, komplexe, präzise Regelungen, Verarbeiten aufwändiger Datenströme (z.B. Musikwiedergabe) etc. Der AVR dürfte wohl insgesamt benutzerfreundlicher sein. Er funktioniert mit minimaler Beschaltung, sämtlichen notwendigen Software-Tools sind frei verfügbar und machen ihre Arbeit echt gut, es gibt eine grosse Community und unzählige Projekte im Netz, und die AVRs bekommt man eigentlich überall. Die meisten Anforderungen dürfte er problemlos erfüllen. Mache dir aber keine allzugrossen Sorgen wegen einem allfälligen Umstieg. Wenn du echt was hinkriegst mit einer der Familien, dann hast du sicherlich auch die andere schnell im Griff - weil dann kannst du sicher gut programmieren und kennst dich mit Elektronik aus. Den Controller selbst lernst du dann auf jeden Fall, da du ein gutes Grundverständis haben wirst, sehr schnell gut kennen. Gruss Michael
danke für die antwort! wie gesagt, der microcontroller soll für reine experimentier-zwecke dienen. etwas entwickeln und danach auf dem selben uC das nächste Projekt verwirklichen. in der schule hab ich schon n paas programme für den dortigen microcontroler ( ein c535 glaub ich) in c geschrieben und komme auch aus der wunderbaren c++welt für pc (assembler-programmierer dürfen mich jetzt haun ;) ). Habe aber vor auch mit assembler rum-zu-experimentieren. ich denke, dass ich mir mal atmega8 hole, der kostet ja nich die welt und evtl dann später einen stärkeren. aber sagt mir mal bitte, warum die isp-kabel 15 kosten sollen? bekommt man die evtl wo anders billiger? naja, wenn ich nach dem abi-stress mehr zeit hab, dann könnt ich auch selber löten. nochmal dankeschön für die antworten! heimschmiede
Kleiner Kommentar zum Stromhunger. Es ist vollstaendig richtig, dass ein ARM bei 60 MHz mehr Strom braucht als ein AVR bei 16 MHz. Sollte bei den Experimenten auch einiges im Bereich ALgorithmen dabei sein, dann ist natuerlich ein ARM um Groessenordnungen schneller, selbst bei gleicher Frequenz (und niegrigerem Stromverbrauch). Sollte es sich mehr um den Einsatz von einfachen If, Then, Else Abarbeitungen mit Then und Else jeweisl ein bit / Pin umschalten, dann ist der AVR einfacher und bei gleicher Freuquenz sogar im Umschlatne von Portpins schneller. Also fuer rechenintensive Anwendungen ARM fuer bit schalten AVR. Im uebrigen sind die ARM eher billiger bei gleichem Speicher. Sollte ein Einsatz auch bei groesseren Anwedungen in Zukunft moeglich sein, bei ARM sthet die kompatible Welt nach oben offen. Robert
Hallo zusammen, der Hauptunterschied der beiden Prozessoren besteht für mich darin, daß der AVR z.Zt. nur von einem Hersteller, der ARM dagegen von vielen hergestellt wird. Dadurch ist die Auswahl sehr groß mit den verschiedenen Ausstattungen. Dies ist einer der Gründe , warum wir beruflich auf die ARMs gewechselt haben. Gruß Thomas
da ich ja relativ am anfang stehe, ist es für mich aber auch wichtig, dass ich schaltpläne, tutorials und codes finde. im moment fidne ich ne menge mehr für AVRs, zb hier. mit welchem arm-controller arbeitet ihr denn am liebsten? ich hab bei http://shop.embedit.de/browse_003002_96__.php ein paar atmelARMs und Philips ARM7 gefunden. werden arms auch mit isp programmiert? woruaf müsste ich bei ARMs achten. zB hab ich bei den philips gesehen, dass die einen static-ram besitzen. was bedeutet das zb? heimschmiede
Als Anfänger fängst solltest du mit AVR beginnen, nicht mit ARM. Wenn du nicht grad mit fertigen (teuren) Kits aus Board und Entwicklungssystem anfängst, stellen die ARMs dir einige Hürden in den Weg, die dir den Anfang sehr vermiesen können. Für die AVRs gibt es billige Einstiegsboards und DIP-Gehäuse, d.h. du kannst auch mit Steckbrettern arbeiten. ARMs gibt es nach wie vor nur als SMDs. Und zum abbrennen sind die erhältlichen Module zu teuer.
Wenn Du mit dem ARM anfängst, ist die Gefahr groß, alles aus Frust in die Ecke zu schmeißen, statt Erfolge zu haben. Der ARM ist doch erheblich komplexer und die Doku ja auch mindestens um den Faktor 10 umfangreicher und auf viele PDFs verteilt. Allein schon mal der "kleine" Thread hier über einen Interruptseiteneffekt gibt einen guten Eindruck. Hinzu kommt, daß die Hersteller (Atmel, ST, Philips) bezüglich Peripherie (UART, Timer, ADC, Interrupts,...) jede ihr eigenes Süppchen kochen. Zumindest die ersten Monate kämpft man mehr mit der Tücke des Objekts ansich, als damit, den eigentlichen Code zu schreiben. Ich rate also auch dazu, mit dem AVR anzufangen Peter
ein paar weitere Details im Vergleich sind hier in der Artikelsammlung: http://www.mikrocontroller.net/articles/AVR_PIC_51-Vergleich
ich werd mir n atmega8 holen. als ich mir mal bei conrad alle nötigen teile zusammengestellt hab, kam ich auf rund 20 mit nem atmega8 ohne rs232. hier hab ich ein board für 24 gefunden, wo eben auch schon alles zusammengelötet is. was haltet ihr davon? http://shop.embedit.de/product_002001_91.php wo ich bisher noch nicht durchblicke ist ist zusätzlichen namensgebungen vom atmega8. bei dem angebot ist es ein ATmega8-16AI. conrad verkauft nur atmega8-16PC und AC. undeutlich ist für mich auch die aussagen über die AD-Wandler. zitat von dem genannten angebot: -Analog Comparator -8 Kanal 10 Bit AD-Wandler was muss ich mir darunter vorstellen? heimschmiede
Zu der Bezeichnung ATMEGA8-16AI solltest du ins (Complete) Datenblatt des ATmega unter "Ordering Information" gucken: 16PC steht für DIP-Gehäuse im Consumer-Termperaturbereich, AC ist das TQFP-Gehäuse im Consumer-Temperatur-Bereich, AI ist das TQFP-Gehäuse im industrial Temperaturbereich... Über die restlichen Sachen im Angebot gibt auch das Datenblatt Auskunft auf Seite 1.
Bis 40pin Mega32 will sich mir der Sinn solcher Module nicht recht erschliessen. Irgendwo habe ich auch ein Mega32-Modul gefunden, auf dem kaum mehr drauf ist als der Controller selbst. Ziemlich sinnlos, denn diese Controller sind problemlos im DIP-Gehäuse erhaltlich. Wenn du das Mega8-Modul zerlegst, hast du 25€ vernichtet. Wenn du einen gesockelten Mega8 zerlegt, nur 2,50€. Also selber bauen oder z.B. die Mega8-Prototype-Boards (hier aus dem Shop, oder ebenfalls embeddit.de) verwenden. ISP-Adapter wirst du in jedem Fall auch noch brauchen oder bauen müssen.
Auf den "Adapterboards" ist meist der Controller im TQFP-Gehäuse und ein Quarz. Vermutlich nicht mal einer für Baudraten. Wenn da dann wenigstens ein vernünftiger Quarz und ein Bootloader drauf wären, würde sich das lohnen...
bei den prototype-boards liegen die preise ja soo nahe beieinander, sodass ich die 2 ja investieren kann um vom atmega8 auf einen atmega32 zu wechseln. ich mein 32bit registerbreite ist doch was feines. da kann ich ja in einem rutsch nen C-Float bearbeiten. oder ist da irgendwo ein verstecktes element, was ich nicht betrachte? wird das wesentlich anders in assembler geschrieben? in C dürften da keine differenzen sein, solang der compiler richtig arbeitet... http://shop.embedit.de/browse_002007_101__.php heimschmiede
"atmega32 zu wechseln. ich mein 32bit registerbreite ist doch was feines" Und dann erst der Mega256!!! Im Ernst: Das ist die Flash-Kapazität, nicht die Datenbreite.
ahso is das. nagut, ich steh halt am anfang... na dann schwenkt momentan mein fav auf die prototype-platine von embedit mit atmega32. vielen dank nochmal an alle, die mir geantwortet haben!!! heimschmiede
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.