Mikrocomputertechnik mit Controllern der AtmelAVR-RISC-Familie

Ähnliche Dokumente
PIC-Microcontroller. Oldenbourg Verlag München

PIC-Microcontroller. Oldenbourg Verlag Munchen

Mikrocomputertechnik mit dem Controller C167

Inhaltsverzeichnis VII

Inhaltsverzeichnis VII.

Mikrocomputertechnik mit Controllern der Atmel AVR-RISC-Familie

Inhaltsverzeichnis 1 Ein-Bit-Rechner Mikrorechentechnik-Grundlagen Das Mikrocontrollersystem ein Überblick am Beispiel MSP430F1232

Einleitung Die Pins alphabetisch Kapitel 1 Programmierung des ATmega8 und des ATmega

Mikrocontrollerprogrammierung in Assembler und C

Ein-Bit-Rechner 15. Mikrorechentechnik-Grundlagen 29

Programmieren der AVR RISC MikroController mit BASCOM-AVR

Mikrocontrollertechnik

Rechnerarchitektur Atmega Vortrag Atmega 32. Von Urs Müller und Marion Knoth. Urs Müller Seite 1 von 7

Embedded Systems

Die AVR Mikrocontrollerfamilie

Mikrocomputertechnik

Mikrocomputertechnik

Einführung in die Welt der Microcontroller

05. Assembler-Programmierung. Datenstrukturen des ATMega32. Literatur

Vorwort 8. Kap. 1: Grundlagen 10

occam 2 Das Referenz-Handbuch

Grundkurs Software- Entwicklung mit C++

Prinzipien und Komponenten eingebetteter Systeme

Rechnerorganisation. (10,11) Informationskodierung (12,13,14) TECHNISCHE UNIVERSITÄT ILMENAU. IHS, H.- D. Wuttke `09

Informatik für Ingenieure

Inhaltsverzeichnis. Vorwort

BLIT2008-Board. Uwe Berger

Inhaltsverzeichnis.

Grundlagen - Grundbegriffe, Aufbau, Rechnerarchitekturen, Bus, Speicher - Maschinencode, Zahlendarstellung, Datentypen - ATMELmega128

Mikroprozessoren Grundlagen AVR-Controller Input / Output (I/O) Interrupt Mathematische Operationen

verzeichnis Bernd-Dieter Schaaf, Peter Wissemann, Stephan Böcker Mikrocomputertechnik

Vorwort Teil 1: Grundlagen 1. 1 Einleitung Grundbegriffe Einheiten Geschichte Arten von Computern 8

PC/XT/AT ASSEMBLER-BUCH

Mikrocomputertechnik

Mikrocomputertechnik

E Mikrocontroller-Programmierung

Mikroprozessortechnik Grundlagen 1

Vorwort 3 Inhaltsverzeichnis 5 1 Zu diesem Buch Beschreibungskonventionen Glossar 16

Mikrocomputertechnik

Mikrocomputertechnik mit der 8051-Controller-Familie

Inhaltsverzeichnis. Vorwort.11

Prozessoren für mobile und. eingebettete Systeme II: Die AVR-Architektur. EMES: Eigenschaften mobiler und eingebetteter Systeme

Mikrocontroller vs. Mikroprozessor 1/3

Embedded Systems

Teil III: Wat macht ene Mikrokontroller?

Entwurf von digitalen Schaltungen und Systemen mit HDLsundFPGAs

Datentypen: integer, char, string, boolean

Datentechnik. Prinzipieller Aufbau eines Schnittstellenbausteins

Musterlösungen Technische Informatik 2 (T2) Prof. Dr.-Ing. D. P. F. Möller

Inhalt. 1 Einstieg in die Welt von C Erste Schritte in C 31. Vorwort... 15

Mikrocontroller. Vortrag von Louis Liedtke. 8. Dezember Fakultät Elektrotechnik und Informatik. Bild 1: Atmel ATmega8

Programmieren in. Brian W. Kernighan Dennis M. Ritchie ANSIC. Mit dem C-Reference Manual in deutscher Sprache. Zweite Ausgabe

Algorithmen als systematische Vorgehensweisen zur Lösung eines formal definierten Problems

Inhaltsverzeichnis I Grundlagen...1 II Programmieren in C/C

Algorithmen als systematische Vorgehensweisen zur Lösung eines formal definierten Problems

Mikrocomputertechnik. Thema: Der Aufbau des XC888-Mikrocontrollers -Teil 1 -

Berichte aus der Informatik. Dieter Pawelczak. Start in die C-Programmierung

Selbstbauprojekt 2017 GØ1

Inhaltsverzeichnis. 1 Einleitung Aufbau des Buches Mehr Informationen Weitere Quellen Danksagung 15

Mikroprozessortechnik

3 Entwurf von Schaltwerken mit Mikroprozessoren

Arduino in C/C++ programmieren

3., erweiterte Auflage

Praktikum Mikrorechner 4 (Bitmanipulation und Spezialregister)

TURBO PASCAL VERSION 5.5

Inhaltsverzeichnis VII. Teil I: PC- und Mikrocomputer-Technik

FRANZIS PC & ELEKTRONIK. Anne & Manfred König. Das große. 2. überarbeitete Auflage. PIC-Micro. Handbuch. Mit 103 Abbildungen

Rechnerorganisation. H.-D. Wuttke `

Inhaltsverzeichnis. Inhalt. Bemerkung... 9 Vorwort Programme und Programmiersprachen

Rechneraufbau und Rechnerstrukturen

AVR Typen - Mikrocontroller.net

Rechnerstrukturen. 7. Assembler. Inhalt. Vorlesung Rechnerstrukturen. Assemblerprogrammierung SML-CPU. SML-Assembler. Binden

Florian Schäffer AVR. Hardware und C-Rrogrammierung in der Praxis. Elektor-Verlag, Aachen

Mikrocomputertechnik

Motivation und Überblick

PIC16 Programmierung in HITECH-C

Inhaltsverzeichnis. CD-ROM zum Buch Inhalt der CD-ROM GPL (General Public License) Systemvoraussetzung 13

Werner Achte rt DATA BECKER

SPS S90U. 1. Grundlagen SPS Funktion

4.2 Programmiersprache C

MSP 430. Einführung. Was kann er? Hauptthemen. Wie sieht er aus? 64 / 100 polig. Was kann er? MSP 430 1

5.6 PWM (Pulse Width Modulation) 23

Abkürzungsverzeichnis... XIII

float: Fließkommazahl nach IEEE 754 Standard mit 32 bit

Applikationen zur Mikrocontroller-Familie

Konzepte von Betriebssystem- Komponenten Ausnahme- / Unterbrechungsbehandlung

FPGA vs. Mikrocontroller. Agenda

Einführung in die Elektrotechnik und Elektronik

MikroController der 8051-Familie

Wolfgang Trampert AVR-RISC. MikroController. Architektur, Hardware-Ressourcen, Befehlsvorrat, Programmierung, Applikationen

b i Ergänzung zu Vollkonjunktionen (ohne Indizierung i = 0... n-1): q = a b a b q = a b q = a b a b a b

Programmierung 1 für Wirtschaftsinformatik Wintersemester 2015/16

Inhalt. Einführung in die Strukturierte Programmierung 15

Mikrocontroller. eine Einführung. Florian Schmitt / 34

Transkript:

Mikrocomputertechnik mit Controllern der AtmelAVR-RISC-Familie Programmierung in Assembler und C - Schaltungen und Anwendungen von Prof. Dipl.-Ing. Günter Schmitt 4., korrigierte Auflage Oldenbourg Verlag München

Inhalt Vorwort 9 1 Einführung 11 1.1 Grundlagen 12 1.1.1 Rechnerstrukturen 12 1.1.2 Rechenwerk und Registersatz 13 1.1.3 Zahlendarstellungen 18 1.1.4 Steuerwerk und Programmstrukturen 26 1.2 Die Bausteine der Atmel-AVR-Familien 33 1.2.1 Bauformen und Anschlüsse 34 1.2.2 Der Programmspeicher (Flash) 40 1.2.3 Der Arbeitsspeicher (SRAM) 41 1.2.4 Der nichtflüchtige Speicher (EEPROM) 42 1.2.5 Der Peripheriebereich 43 1.2.6 Die programmierbaren Konfigurationsparameter 45 1.3 Die Entwicklung von Anwendungen 46 1.4 Einführende Beispiele 49 2 Assemblerprogrammierung 55 2.1 Programmstrukturen 55 2.2 Assembleranweisungen 57 2.3 Operationen 63 2.3.1 Byteoperationen 65 2.3.2 Bitoperationen 68 2.3.3 Wortoperationen (16 bit) 73 2.3.4 Operationen mit SFR-Registern 78 2.3.5 Multiplikation und Division 81 2.4 Sprung- und Verzweigungsbefehle 92 2.4.1 Unbedingte Sprungbefehle 93 2.4.2 Bedingte Sprungbefehle 94 2.4.3 Schleifen.- 97 2.4.4 Verzweigungen 101

6 Inhalt 2.4.5 Die Auswertung von Signalen 105 2.5 Die Adressierung der Speicherbereiche 108 2.5.1 Die Adressierung der Konstanten im Flash 109 2.5.2 Die Adressierung der Variablen im SRAM 113 2.5.3 Die Adressierung der Daten im EEPROM 122 2.6 Makroanweisungen und Unterprogramme 127 2.6.1 Makroan Weisungen 127 2.6.2 Unterprogramme 129 2.6.3 Makro- und Unterprogrammbibliotheken 136 2.7 Interrupts 138 2.7.1 Die Interruptsteuerung 138 2.7.2 Die externen Interrupts 141 2.7.3 Der Software-Interrupt 145 2.8 Die Arbeit mit Zeichen und Zahlen 147 2.8.1 Die Eingabe und Ausgabe von Zeichen 147 2.8.2 Zeichenketten (Strings) 149 2.8.3 Die Eingabe und Ausgabe von ganzen Zahlen 153 2.8.4 Vorzeichenbehaftete ganzzahlige 16bit Arithmetik 163 2.8.5 BCD-Arithmetik 169 2.8.6 Festpunktarithmetik 174 2.8.7 Ganzzahlige Funktionen 182 3 C-Programmierung 187 3.1 Allgemeiner Aufbau eines C-Programms 190 3.1.1 Zeichensatz und Bezeichner 190 3.1.2 Datentypen, Konstanten und Variablen 191 3.1.3 Gültigkeitsbereich und Lebensdauer 195 3.1.4 Präprozessoranweisungen 197 3.1.5 Makro-Anweisungen und Funktionen 199 3.2 Operationen 202 3.2.1 Gemischte Ausdrücke 202 3.2.2 Arithmetische und logische Operationen 204 3.2.3 SFR-Register und Bitoperationen 208 3.2.4 Vergleichsoperationen, Bitbedingungen und Schalter 210 3.2.5 Zeigerund Operationen mit Zeigern 213 3.3 Programmstrukturen 215 3.3.1 Schleifenanweisungen 215 3.3.2 Verzweigungen mit bedingten Anweisungen 220 3.3.3 Anwendungsbeispiele 223 3.4 Zusammengesetzte Datentypen 231 3.4.1 Felder und Zeichenketten (Strings) 231 3.4.2 Strukturen 242

Inhalt 7 3.4.3 Die Adressierung des Flash- und EEPROM-Speichers 246 3.5 Funktionen 250 3.5.1 Funktionen mit Rückgabewert 251 3.5.2 Die Übergabe von Werten als Argument 252 3.5.3 Die Übergabe von Referenzen (Adressen) 253 3.5.4 Die Eingabe und Ausgabe von Zahlen 257 3.6 Die Interruptsteuerung 271 3.6.1 Die externen Interrupts 273 3.6.2 Der Software-Interrupt 276 4 Die Peripherie 277 4.1 Die Takt- und Resetsteuerung 279 4.2 Digitale Schaltungstechnik 281 4.3 Die Parallelschnittstellen 284 4.4 Die Timereinheiten 290 4.4.1 Der 8bit TimerO 292 4.4.2 Der 16bit Timer 1 306 4.4.3 Die erweiterten Timer-Betriebsarten 325 4.4.4 Der 8bit Timer2 334 4.4.5 Der Watchdog Timer und Stromsparbetrieb 339 4.5 Die seriellen Schnittstellen USART und UART 345 4.5.1 Die serielle USART-Schnittstelle 348 4.5.2 Die asynchrone UART-Schnittstelle 365 4.5.3 Software-Emulation der asynchronen Schnittstelle 370 4.6 Die serielle SPI-Schnittstelle 376 4.7 Die serielle TWI-Schnittstelle (I 2 C) 389 4.8 Analoge Schnittstellen 398 4.8.1 Der Analogkomparator 400 4.8.2 Der Analog/Digitalwandler 408 4.8.3 Serielle analoge Schnittstellenbausteine 419 4.8.4 Parallele analoge Schnittstellenbausteine 425 4.9 Die serielle USI-Schnittstelle 430 5 Anwendungsbeispiele 433 5.1 Würfel mit dem ATtinyl2 (AT90S2343) 434 5.2 Zufallszahlen mit ATtinyl2 (AT90S2343) 441 5.3 Stoppuhr mit dem ATtiny2313 (90S2313) 447 5.4 LCD-Anzeige und Tastatur mit dem ATmega8 455 5.5 Externer SRAM mit dem ATmega8515 476

8 Inhalt 5.6 Leuchtdioden-Matrixanzeige mit dem ATtiny2313 485 5.7 Funktionsgenerator mit dem ATmega8...493 6 Der Boot-Programmspeicher 501 7 Anhang 507 7.1 Ergänzende und weiterführende Literatur 507 7.2 Bezugsquellen und Internetadressen 512 7.3 Assembleranweisungen 513 7.4 Assemblerbefehle 514 7.5 Zusätzliche Befehle der Mega-Familie 518 7.6 Rangfolge der C-Operatoren (Auswahl) 519 7.7 C-Schlüsselwörter und -Anweisungen (Auswahl) 520 7.8 ASCII-Codetabellen (Schrift Courier New) 521 7.9 Sinnbilder für Ablaufpläne und Struktogramme 523 7.10 Verzeichnis der Programmbeispiele 524 7.10.1 Assemblerprogramme 524 7.10.2 Assembler-Unterprogramme 525 7.10.3 Assembler-Makrodefinitionen 527 7.10.4 Assembler-Headerdateien 527 7.10.5 C-Programme 528 7.10.6 C-Funktionen 529 7.10.7 C-Headerdateien 530 8 Register 531