Programmunterschied zwischen ARM und AVR Mikrocontrollern?
Hallo allerseits, ich möchte mit einem Projekt auf dem Arm Cortex M4 beginnen. Dazu möchte ich zunächst die Struktur des Controllers und des Boards verstehen und erste kleinere Projekte darauf ausführen.
Dazu suche ich ein passendes Buch. Mir wurde bereits das Buch [1] empfohlen. Ich bin mir jedoch nicht sicher, ob dieses Buch für den z.B. STM32F407 geeignet ist.
Könnt ihr mir dazu was sagen? Oder andere Lit empfehlen?
[1] AVR Mikrocontroller - Programmierung in C: Eigene Projekte selbst entwickeln und verstehen
1 Antwort
Hallo,
Alle ARMs bauen auf eine 32/16 bit RISC Architektur auf. Die AVRs sind 8bit. Hier ein wenig Lesestoff zum vergleichen
http://www.mikrocontroller.net/articles/AVR
http://www.mikrocontroller.net/articles/ARM
Als Anfänger in der Microcontroller Welt, ist denke ich ein AVR einfacher hand zu haben. Sie sind günstig denn es wird der ein oder andere abrauchen, übersichtliche interne Struktur (z.b. Register), eine Vielzahl an kostenlosen Entwicklungsumgebungen.
Das von Dir erwähnte Buch ist für einen AVR aber der CortexM4 ist ein ARM die unterscheiden sich von ihrer Programmierung her. Speicherverwaltung, Adressierung ist nicht identisch. Für einen Einstieg in die AVR Programmierung würde ich die 3 kostenlos erhältlichen Bänder von Stephan Frings wärmstens empfehlen. Sehr umfangreich und vor allem wird hier auf verschiedenste Schaltungsmöglichkeiten, Bauteile und Stromkreise eingegangen. Genau das richtige für den Anfang.
Ehrlich gesagt fällt mir da keine brauchbare Literatur zu ein. Hast Du vielleicht selbst gemerkt, der Markt ist sehr dünn. Da ist man von AVR verwöhnt. Normal würde ich sagen zieh Dir die datasheets, referencesheets von STM die meiner Meinung nach schon sehr dünn sind und einen auch nicht so wirklich erhellen aber Du solltest halt noch ein wenig C mitbekommen. Kollegen von mir sind/mussten von AVR auf ARM umsteigen, ist machbar mit datasheets und fundiertem C ! Es war damals (ca4-5j) unmöglich anständige Literatur zu bekommen. Das Gefühl habe ich heute noch.
Was Du nicht machen solltest ist Dir ein Buch über die AVR Plattform zulegen und ARM arbeiten. Da wäre es besser C im Crashkurs und dann Manuels,datasheets,referencesheets, von STM und ein Buch mit Projektbeispiele da gibt's ein paar nur setzen die C Voraus. Sorry !
Hey,
vielen Dank für die ausführliche Antwort. Ich bin jedoch an einen Cortex M4 gebunden (für meine Masterarbeit) Daher muss ich mich in dieser Richtung etwas belesen. Ich bin auch C Neuling. Ich beherrsche egtl. nur PHP und co. Sonst liegt mein Schwerpunkt aktuell mehr auf Computer Algebra Systemen (Mathematiker halt..)
Ich will mich speziell in den M4 einlesen und würde auch gerne das Coden auf den ARM-Plattformen erlernen. Kannst du mir dazu auch ein Buch empfehlen?