Zur Durchführung eines gemischten Hard- und Softwareprojektes mit Mikrocontrollern ist fundiertes Wissen über die Hardwareeinheiten des Controllers unabdingbar. Ebenso notwendig ist die Kenntnis von Sprachen auf zwei Ebenen - C für die große Struktur der Firmware und Assembler für zeit- oder resourcenkritische oder hardwarenahe Codeabschnitte. Das Buch stellt die notwendigen Grundlagen für erfahrene Entwickler bereit, um eigene Projekte mit Mikrocontrollern realisieren zu können. Als Grundlage dient der 8 bit-Mikrocontroller ATmega16 als typischer Vertreter der megaAVR® Mikrocontroller der Firma Atmel®.
Das Buch stellt Aufbau und Hardwarebaugruppen des ATmega16 stellvertretend für alle megaAVR®-Mikrocontroller und ihre Ansteuerung über Register detailliert vor und liefert Lösungsansätze für typische Problemstellungen aus dem Umfeld der Embedded-Entwicklung wie Messung von Zeit, Frequenz und Geschwindigkeit, Steuerungen, Ereignisbehandlung und asynchrone Programmierung sowie Kommunikation über SPI, TWI oder serielle Schnittstelle. Beispiele wie mikrosekundengenaue Stoppuhren, Fahrradtachometer oder Frequenzzähler illustrieren die Verfahren. Zu jedem Problem ist neben der Schaltung das vollständige Program in C oder - wenn sinnvoll - Assembler gezeigt. Neben Hard- und Softwareentwicklung wird auch die praktische Arbeit mit Atmel Studio® beleuchtet, wie das On-Chip-Debugging und ein Entwicklungszyklus (Editieren, Compilern und Linken, Flashen). Darüber hinaus werden im Rahmen von Projekten wie DDS-Synthese oder Analog-Datenlogger typische Peripheriebausteine (Echtzeituhren RTC, Digital-Analog-Wandler DAC, serielle EEPROMs) vorgestellt.

- 444 Seiten
- German
- ePUB (handyfreundlich)
- Über iOS und Android verfügbar
eBook - ePub
Über dieses Buch
375,005 Studierende vertrauen auf uns
Zugang zu über 1 Million Titeln zu einem fairen monatlichen Preis.
Mit unseren Lerntools kannst du noch effizienter lernen.
Information
Thema
InformatikThema
Informatik Allgemein1 Einführung, AVR®-Hardware
Dieses Buch behandelt die Entwicklung elektronischer Schaltungen, denen ein Mikrocontroller (MCU) aus der megaAVR®-Familie, einer Reihe von 8bit-MCUs der Firma Atmel®, zugrundeliegt, und zwar der Typ ATmega16. Diese Wahl richtete sich nach folgenden Überlegungen:
| – | Der ATmega16 ist ein typischer Vertreter der „mittelgroßen“ 8 bit-AVR-MCUs. |
| – | Er ist einfach und günstig zu beschaffen und auch im DIL-Gehäuse erhältlich, sodaß er einfach für Testaufbauten auf Breadboards verwendet werden kann. |
| – | Er verfügt über die Hardware-Baugruppen der megaAVR-Reihe, insbesondere über serielle Schnittstellen wie USART, SPI und TWI sowie Analog-Digital- Wandler. |
| – | Er ist der kleinste Typ, der eine JTAG-Schnittstelle zum On-Chip-Debugging aufweist. |
| – | Er verfügt über so viele Portpins, daß Testschaltungen nur selten komplett umgebaut werden müssen, wenn Sie rasch zwischen Projekten wechseln wollen. Aufgrund der Pinanzahl müssen wir nicht auf komplizierte Weise „übriggebliebene“ Einzelpins zu Pseudo-8 bit-Ports zusammenfügen, um Peripherie anzusteuern, da wir für jedes Beispiel einen oder zwei komplette 8 bit-Ports zur Verfügung haben. |
Das Buch stellt weder eine Einführung in die Programmierung allgemein, noch in die C- oder Assemblerprogrammierung dar, sondern soll erfahrenen Programmierern als kompakter Einstieg in die Welt der AVR-Mikrocontroller dienen. Vorkenntnisse in C und einer Assemblersprache sind daher ebenso wie elektronische Grundlagen und Kenntnisse von Prozessorarchitekturen hilfreich. In diesem Kapitel werden zunächst der innere Aufbau und die elektrischen Eigenschaften des ATmega16 behandelt. Das nächste Kapitel befaßt sich mit der Programmierung der MCU in C und Assembler im allgemeinen. Die einzelnen Baugruppen werden in den nachfolgenden Kapiteln beschrieben.

Atmel®, AVR®, AVR Studio®, megaAVR®, tinyAVR®, XMEGA®sind eingetragene Marken oder Warenzeichen der Atmel Corporation oder ihrer Tochtergesellschaften. SPI™ ist ein Warenzeichen von Motorola. Weitere, evt. nicht gekennzeichnete Marken, Produktnamen, Servicenamen oder Warenzeichen sind Eigentum der jeweiligen Inhaber. Aus dem Fehlen einer Kennzeichnung bei diesen und anderen Begriffen kann keine freie Verwendbarkeit abgeleitet werden.

Einige Abbildungen, speziell die Timingdiagramme, können unter http://www.degruyter.com/view/ product/449202 zur besseren Lesbarkeit als Graphikdateien in hoher Auflösung heruntergeladen werden.

Sie können mit dem hier vermittelten Wissen leicht auf andere megaAVR-Typen umsteigen, die auf Ihr Projekt besser passen. Sie müssen jedoch zuvor das Datenblatt des ins Auge gefaßten Typs konsultieren, um das richtige Pinlayout und die Aufteilung der I/O-Register zu erfahren. Im großen und ganzen sind die Kontrollregister und -bits zwar ähnlich, aber nicht bitgleich.
Der Umstieg auf die kleinen Typen der tinyAVR-Reihe ist nicht so ohne weiteres möglich, da diese nur über eingeschränkte Hardwareunterstützung für Funktionen wie ADC, synchrone serielle Schnittstellen oder TWI verfügen. Meist besitzen sie eine Multifunktions-Baugruppe zur Datenübertragung, mit deren Hilfe Sie softwaregestützt die notwendigen Protokolle implementieren können. Ebenfalls nicht beschrieben sind Funktionen derXMEGA-Typen wie USB- oder CAN-Bus-Unterstützung.

Alle Informationen in diesem Buch wurden mit größter Sorgfalt zusammengetragen und überprüft. Dennoch sind Fehler nicht auszuschliessen, und die Übernahme oder Benutzung von Quellcode und Verfahren erfolgen ohne Gewähr und auf eigene Verantwortung.
1.1 Aufoau der AVR-MCU
Die wichtigste Referenz zur Hardware des ATmega16 ist das Datenblatt [1]. In [9] finden Sie eine ausführliche Beschreibung des Befehlssatzes auf Maschinenspracheebene. Der ATmega16 wird in den Gehäuseformen PDIP-40, TQFP-44 und QFN/MLF-44 geliefert, Abb. 1.1 zeigt das Pinlayout des für Experimente auf einem Breadboard besonders geeigneten PDIP-40-Gehäuses.

Abb. 1.1. Pin-Layout des ATmega16 im PDIP40-Gehäuse.
1.1.1 Prozessorregister
Die ATmega16-MCU verfügt wie alle 8 bit-MCUs von Atmel über 32 allgemein verwendbare 8bit-Register, die R0–R31 genannt werden. Die Registerpaare R27:R26, R29:R28 und R31:R30 (High-Byte/Low-Byte) können zu den drei 16 bit-Registern X, Y und Z kombiniert werden, die als Zeiger ins SRAM dienen, das Z-Register zusätzlich als Zeiger ins Flash-ROM. Zusätzlich zu diesen Registern gibt es den 13 bit-Programmzähler PC und den 10 bit-Stackpointer SP sowie das Statusregister SREG.
Die allgemeinen Register sind in weiten Bereichen gegeneinander austauschbar, eine wichtige Sonderstellung stellt jedoch die Gruppe der Register R16–R31 dar. Diese können im „immediate address mode“ benutzt werden, d. h. Sie können bei den Instruktionen ldi, andi, ori, subi, sbci, cpi, ser, sbr und cbr Konstanten angeben. Weiterhin arbeiten einige Instruktionen wie muls und mulsu nur mit Registern aus diesem Bereich.
1.1.2 Statusregister, Statusbits
Das Statusregister SREG enthält acht Bits oder Flags, die Informationen über die zuletzt ausgeführte Instruktion bzw. das Resultat der letzten arithmetischen oder logischen Operation speichern. Der Einfluß der verschiedenen Instruktionen ist in [9] detailliert dargestellt. Die einzelnen Bits können als Bedingung für Sprungbefehle genutzt werden; da sie bei allen ALU-Operationen aktualisiert werden, können Sie oft ohne explizite Vergleichsoperationen Entscheidungen über Programmverzweigungen aufgrund geeigneter Flags fällen lassen. Im einzelnen stehen folgende Flags zur Verfügung:
| – | Das I-Flag ist das globale Interruptflag, mit dem Interrupts grundsätzlich erlaubt werden. Über dieses Flag hinaus müssen Sie jeden gewünschten Interrupt individuell über ein Bit im Kontrollregister der betreffenden Baugruppe aktivieren. Ist das I-Bit 0, werden keine der individuell aktivierte... |
Inhaltsverzeichnis
- Cover
- Titel
- Impressum
- Dedication
- Table of Contents
- Vorworte
- 1 Einführung, AVR®-Hardware
- 2 AVR®-Programmierung unter AVR-GCC
- 3 Praktischer Einstieg mit Atmel Studio®
- 4 Digital-I/O
- 5 Timer/Counter
- 6 USART, Serielle Schnittstelle
- 7 TWI, TwoWire-Interface
- 8 SPI, Serial Peripheral Interface
- 9 Analog-I/O
- Literatur
- Stichwortverzeichnis
Häufig gestellte Fragen
Ja, du kannst dein Abo jederzeit über den Tab Abo in deinen Kontoeinstellungen auf der Perlego-Website kündigen. Dein Abo bleibt bis zum Ende deines aktuellen Abrechnungszeitraums aktiv. Erfahre, wie du dein Abo kündigen kannst
Nein, Bücher können nicht als externe Dateien, z. B. PDFs, zur Verwendung außerhalb von Perlego heruntergeladen werden. Du kannst jedoch Bücher in der Perlego-App herunterladen, um sie offline auf deinem Smartphone oder Tablet zu lesen. Erfahre, wie du Bücher herunterladen kannst, um sie offline zu lesen
Perlego bietet zwei Abopläne an: Elementar und Erweitert
- Elementar ist ideal für Lernende und Profis, die sich mit einer Vielzahl von Themen beschäftigen möchten. Erhalte Zugang zur Basic-Bibliothek mit über 800.000 vertrauenswürdigen Titeln und Bestsellern in den Bereichen Wirtschaft, persönliche Weiterentwicklung und Geisteswissenschaften. Enthält unbegrenzte Lesezeit und die Standardstimme für die Funktion „Vorlesen“.
- Pro: Perfekt für fortgeschrittene Lernende und Forscher, die einen vollständigen, uneingeschränkten Zugang benötigen. Schalte über 1,4 Millionen Bücher zu Hunderten von Themen frei, darunter akademische und hochspezialisierte Titel. Das Pro-Abo umfasst auch erweiterte Funktionen wie Premium-Vorlesen und den Recherche-Assistenten.
Wir sind ein Online-Lehrbuch-Abo, bei dem du für weniger als den Preis eines einzelnen Buches pro Monat Zugang zu einer ganzen Online-Bibliothek erhältst. Mit über 1 Million Büchern zu über 990 verschiedenen Themen haben wir bestimmt alles, was du brauchst! Erfahre mehr über unsere Mission
Achte auf das Symbol zum Vorlesen bei deinem nächsten Buch, um zu sehen, ob du es dir auch anhören kannst. Bei diesem Tool wird dir Text laut vorgelesen, wobei der Text beim Vorlesen auch grafisch hervorgehoben wird. Du kannst das Vorlesen jederzeit anhalten, beschleunigen und verlangsamen. Erfahre mehr über die Funktion „Vorlesen“
Ja! Du kannst die Perlego-App sowohl auf iOS- als auch auf Android-Geräten nutzen, damit du jederzeit und überall lesen kannst – sogar offline. Perfekt für den Weg zur Arbeit oder wenn du unterwegs bist.
Bitte beachte, dass wir Geräte, auf denen die Betriebssysteme iOS 13 und Android 7 oder noch ältere Versionen ausgeführt werden, nicht unterstützen können. Mehr über die Verwendung der App erfahren
Bitte beachte, dass wir Geräte, auf denen die Betriebssysteme iOS 13 und Android 7 oder noch ältere Versionen ausgeführt werden, nicht unterstützen können. Mehr über die Verwendung der App erfahren
Ja, du hast Zugang zu AVR - Mikrocontroller von Ingo Klöckl im PDF- und/oder ePub-Format sowie zu anderen beliebten Büchern aus Informatik & Informatik Allgemein. Aus unserem Katalog stehen dir über 1 Million Bücher zur Verfügung.