Mikrocomputertechnik mit dem Controller C167

Ähnliche Dokumente
Mikrocomputertechnik mit Controllern der AtmelAVR-RISC-Familie

PIC-Microcontroller. Oldenbourg Verlag München

PIC-Microcontroller. Oldenbourg Verlag Munchen

Mikrocomputertechnik

Mikrocomputertechnik

Mikrocomputertechnik

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

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

Inhaltsverzeichnis. Vorwort.11

Mikrocontrollerprogrammierung in Assembler und C

Inhaltsverzeichnis VII

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

MikroController der 8051-Familie

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

Mikrocomputertechnik

Mikrocontrollertechnik

Eine praktische Einführung in die Programmierung mit der Programmiersprache C

Embedded Systems 1 C167 Einführung

Mikrocomputertechnik mit der 8051-Controller-Familie

Ein-Bit-Rechner 15. Mikrorechentechnik-Grundlagen 29

Applikationen zur Mikrocontroller-Familie

Konzepte von Betriebssystem- Komponenten Ausnahme- / Unterbrechungsbehandlung

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

Peter Prinz Ulla Kirch-Prinz C+ + Lernen und professionell anwenden. ffl mitp

C-Grundlagen. zur Programmierung des MicroControllersystems MiCoWi

Inhaltsverzeichnis VII.

1.9 Atmega-Programmierung in ASM/LED-Ziffernanzeige

TURBO PASCAL VERSION 5.5

Thomas Theis PHP4. Webserver-Programmierung für Um- und Einsteiger. Galileo Press

Informatik für Ingenieure

4.2 Programmiersprache C

C für Java-Programmierer

Mikrocomputertechnik

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

Begleittext: Einführung in das Programmieren in Java für Nichtinformatiker

Herzlich willkommen!

0. Einführung Hardware-Daten des Systems Software-Daten des Systems Aufbau eines Objektprogramms 0-13

Inhaltsverzeichnis.

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

Inhaltsverzeichnis. Vorwort NXTundNXC DerNXT NXC Not exactly C Compiler Zusammenfassung 17

PIC16 Programmierung in HITECH-C

C für Java- Programmierer

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

Vorwort 8. Kap. 1: Grundlagen 10

1.1 In diesem Kapitel Ein wenig C-Geschichte Warum in C programmieren? Die Struktur dieses Buches 19

Das Assembler-Buch. Trutz Eyke Podschun. Grundlagen, Einführung und Hochsprachenoptimierung

Java. Von den Grundlagen bis zu Threads und Netzen von Prof. Dr. Ernst-Wolfgang Dieterich Fachhochschule Ulm

Paul Molitor und Jörg Ritter VHDL. Eine Einführung. ein Imprint von Pearson Education

Effektiv Programmieren in С und C++

Aufbau eines Assembler-Programms

Grundkurs Software- Entwicklung mit C++

8051Speicherorganistaion. SFR u. oberer Datenspeicherbereich teilen sich den SPECIAL FUNCTION REGISTER. gleichen Adreßbereich. indirekt adressierbar

Programmieren der AVR RISC MikroController mit BASCOM-AVR

Grundbegriffe der Informatik

1.7 Atmega-Programmierung in ASM/Verschachtelte Schleifen

C-Programmierung lernen

Programmierung mit FORTRAN

Skript zur Vorlesung. Informatik 1. Studienjahr Halbjahr

Wiederholung, Abbruch von Schleifen, switch-anweisung Datentypen, char, formatierte Ausgabe

Visual C#.NET. Bearbeitet von Patrick A. Lorenz

Modul Entscheidungsunterstützung in der Logistik. Einführung in die Programmierung mit C++ Übung 2

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

Praktikum Mikrorechner 5 (Bitadressen, Sprünge und Schleifen)

Rechnerorganisation. H.-D. Wuttke `

PC/XT/AT ASSEMBLER-BUCH

Inhaltsverzeichnis. Kurseinheit 1. Kurseinheit 2

Programmieren lernen mit Perl

Die Programmiersprache C Eine Einführung

Speichern von Zuständen

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

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

Microcontroller Praktikum SS2010 Dipl. Ing. R. Reisch

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

E Mikrocontroller-Programmierung

Einführung in C. Alexander Batoulis. 5. Mai Fakutltät IV Technische Universität Berlin

Mikrocomputer Aufbau und Anwendungen

Roboter programmieren mit NXC für LEGO MINDSTORMS NXT

myavr Programmierung in C

Inhaltsverzeichnis. Vorwort

Grundlagen der Programmierung

Das diesem Dokument zugrundeliegende Vorhaben wurde mit Mitteln des Bundesministeriums für Bildung und Forschung unter dem Förderkennzeichen

Operatoren (1) Operatoren (2)

SPS. Speicherprogrammierbare Steuerungen vom Relaisersatz bis zum CIM-Verbund. Einführung und Übersicht. von Dipl.-Inf. Eberhard E. Grötsch, M. Sc.

Inhalt. Vorwort des Herausgebers Die Sprache OpenOffice.org Basic/StarBasic... 15

Selbststudium Informationssysteme - H1102 Christian Bontekoe & Felix Rohrer

Sprechen Sie Java? Hanspeter Mössenböck. Tm\ dpunkt.verlag. Eine Einführung in das systematische Programmieren

zu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme

RO-Tutorien 3 / 6 / 12

Inhalt. Einführung in die Strukturierte Programmierung 15

C++ PROGRAM- MIERER/-IN

Transkript:

Mikrocomputertechnik mit dem Controller C167 Programmierung in Assembler undc Schaltungen und Anwendungen von Prof. Dipl.-Ing. Günter Schmitt Oldenbourg Verlag München Wien

Inhaltsverzeichnis Vorwort 9 1. Einführung 11 2. Die Hardware des C167 17 2.1 Die Funktionseinheiten des C167 17 2.2 Die Takt- und Resetsteuerung 19 2.3 Die Programmierung der Systemkonfiguration 21 2.4 Die Programmierung der Buskonfiguration 23 2.5 Ein Kleinsystem mit dem C167 29 Monitorprogramm für das Kleinsystem (Assembler) 30 2.6 Die parallelen Ports 35 3. Speicherorganisation 39 SFR-Bereich und interner RAM 40 Die General Purpose Register (GPR) 41 Der Aufbau des Stapels 42 Die Speicheradressierung 44 Die Bitadressierung 44 Die Befehlsadressierung 45 Befehle zum Umschalten der zugeordneten Adressen 46 4. Programmierung 47 4.1 Assemblerprogrammierung 48 Direktiven und Datenvereinbarungen 51 Die Adressierungsarten 52 4.2 C-Programmierung 54 Vordefinierte ganzzahlige Datentypen 56 Kennwörter für Vereinbarungen 57 4.3 Operationen 59 Zahlendarstellung und arithmetische Operationen 61 Logische Operationen und Schiebeoperationen 62 4.3.1 Operationen in Assembler 64 Transferbefehle 65 Additions- und Subtraktionsbefehle 66 Die logischen Befehle 67 Die Multiplikations- und Divisionsbefehle 68 Die Schiebeoperationen und Bitbefehle 70 4.3.2 Operationen in C 72 Datentransfer und arithmetische Operatoren 72 Logische Operatoren und Schiebeoperatoren 75 Bitvariablen und Bitoperationen 78

6 Inhaltsverzeichnis 4.4 Schleifen und Verzweigungen 80 4.4.1 Schleifen und Verzweigungen in Assembler 82 Vergleichsbefehle 82 Sprungbefehle 83 Leseschleifen 85 Zählschleifen 85 Warteschleifen 85 Verzweigungen 87 4.4.2 Schleifen und Verzweigungen in C 89 Vergleichs- und Verknüpfungsoperatoren 89 Die f or-schleifenanweisung 90 Die bedingte while-schleifenanweisung 90 Die wiederholende do-while-schleifenanweisung 91 Die Kontrollanweisungen break continue goto return 91 Die bedingten Anweisungen if und if-eise 92 Die Fallunterscheidung switch-case 93 Leseschleifen 94 Zählschleifen 94 Warteschleifen 95 4.5 Speicherbereiche 97 4.5.1 Die Bereichsadressierung in Assembler 98 Die indirekte Adressierung 98 Speichertest und Aufzeichnung von Prellungen 100 Die Arbeit mit Tabellen 104 4.5.2 Eindimensionale Felder in C 105 Dimensionierung und Adressierung von Feldern 105 Speichertest und Aufzeichnung von Prellungen 106 Die Arbeit mit Tabellen 107 4.5.3 Mehrdimensionale Felder, Strukturen und Zeiger 109 Zweidimensionale Felder 109 Strukturen 110 Zeiger und dynamische Felder 112 Die verkettete Liste 112 4.6 Unterprogrammtechnik 114 4.6.1 Assembler-Unterprogramme 115 Die CALL- und RET- Befehle 115 Die Stapeloperationen 116 Die Parameterübergabe und lokale Variablen 117 Der Einbau von Makros und von Unterprogrammen (include)... 120 4.6.1 C-Funktionen 122 Definition und Aufruf von Funktionen 122 Die Übergabe von Parametern 124 Der Einbau von Makros und von Funktionen (include) 125 Funktionsbibliotheken 126

Inhaltsverzeichnis 7 5. Interrupt-Technik 127 5.1 Einführendes Beispiel 129 5.2 Nichtsperrbare Interrupts (Traps) 131 5.3 Die Freigabe- und Prioritäts-Steuerung 133 5.4 Die externen Interrupts 138 Der schnelle (fast) externe Interrupt 140 5.5 Der PEC-Datentransfer 141 5.6 Software-Interrupts 144 5.7 Die Antwortzeiten 146 6. Die Timereinheiten 147 Timer als Frequenzteiler 148 6.1 Die Mehrzweck-Timer GPT 149 Timer mit Interruptauslösung 150 6.1.1 Die Timereinheit GPT1 151 Die Betriebsart Timer 153 Der Start-Stop-Betrieb 153 Die Betriebsart Ereigniszähler (Count) 154 Die Betriebsart Nachladen (Reload) 155 Die Ausgabe eines PWM-Signals 156 Die Betriebsart Speichern (Capture) 157 Die Betriebsart Zusammenschaltung (Concatenation) 159 6.1.2 Die Timereinheit GPT2 162 Die Betriebsarten Timer, Count, Kette, Reload und Capture... 164 Die Frequenzvervielfachung 165 6.2 Die Capture/Compare-Einheiten CAPCOM 166 Die Timerkette 168 Der Capture-Betrieb zur Periodendauermessung 172 Der Compare-Betrieb 175 Der Doppelregister-Compare-Betrieb 176 6.3 Die Pulsweiten-Einheit PWM 179 6.4 Der Watchdog Timer 184 7. Die seriellen Schnittstellen 185 7.1 Die asynchrone Betriebsart 186 7.2 Die synchrone Betriebsart 191 7.3 Die schnelle synchrone serielle Schnittstelle (SSC) 193 8. Die analogen Schnittstellen 199 8.1 Digital/Analogwandler am C167 200 8.2 Die Analog/Digitalwandler-Einheit 202 8.3 Serielle analoge Bausteine 206

8 Inhaltsverzeichnis 9. Die CAN-Schnittstelle 211 10. Anwendungsbeispiele 215 10.1 Die Konsol-Ein/Ausgabe 215 Konsolunterprogramme in Assembler 217 Konsolfunktionen in C 221 10.2 Die Beschaltung der parallelen Ports 224 10.3 Anzeige-Einheiten 228 Die Ansteuerung von 7-Segment-Anzeigen mit Decodern 228 Direkte 7-Segment-Ansteuerung 229 Die 7-Segment-Anzeige im Multiplexbetrieb 232 Multiplexanzeige einer LED-Matrix 233 Die Ansteuerung einer LCD-Anzeigeeinheit 235 10.4 Eingabe-Einheiten 239 Die Eingabe mit Schaltern und Tastern 239 Die Abfrage einer Tastaturmatrix 240 Die Abtastung einer Tastatur im Multiplexbetrieb 243 Die Ausgabe von Fehlermeldungen durch Blinken und Hupen 245 10.5 Sensoren 248 Reedkontakte 248 Temperatursensoren 251 Optische Sensoren 260 Akustische Sensoren 264 11. Befehlslisten 265 12. Anhang Codetabellen 319 Ergänzende und weiterfuhrende Literatur 321 Bezugsquellen 322 Verzeichnis der Beispielprogramme 323 Verzeichnis der Abbildungen 325 13. Register 327