Mikrocontroller – Der Leitfaden für Maker - · PDF fileKlaus Dembowski...

Click here to load reader

  • date post

    05-Mar-2018
  • Category

    Documents

  • view

    225
  • download

    5

Embed Size (px)

Transcript of Mikrocontroller – Der Leitfaden für Maker - · PDF fileKlaus Dembowski...

  • Klaus Dembowski, Mikrocontroller Der Leitfaden fr Maker, dpunkt.verlag, ISBN 978-3-86490-150-8

    D3kjd3Di38lk323nnm

  • Zu diesem Buch sowie zu vielen weiteren dpunkt.bchern knnen Sie auch das entsprechende E-Book im PDF-Format herunterladen. Werden Sie dazu einfach Mitglied bei dpunkt.plus+:

    www.dpunkt.de/plus

    Klaus Dembowski hat Nachrichtentechnik studiert und ist an der Technischen Universitt Hamburg-Harburg ttig. Seine Schwer-punkte liegen in den Bereichen Mikrocontrollerentwicklung, Hard- und Software fr Mikrosysteme sowie Energy Harvesting. Bei der Vermittlung aktueller Inhalte aus den Bereichen der Elektronik sowie der Informations- und Netzwerktechnik kann er auf eine langjhrige Erfahrung als Autor und Dozent zurckgreifen. Die mittlerweile ber 40 erschienenen Buchtitel zeichnen sich ebenso wie die regelmig erscheinenden Zeitschriftverffentlichungen, Seminare und Vortrge durch eine verstndliche und praxisorien-tierte Darstellung auch komplexer Sachverhalte aus.

  • Klaus Dembowski

    Mikrocontroller Der Leitfaden fr Maker

    Schaltungstechnik und Programmierung von Raspberry, Arduino & Co.

    Klaus Dembowski, Mikrocontroller Der Leitfaden fr Maker, dpunkt.verlag, ISBN 978-3-86490-150-8

  • Klaus Dembowski

    Lektorat: Dr. Michael BarabasCopy-Editing: Friederike Daenecke, ZlpichHerstellung: Frank HeidtUmschlaggestaltung: Helmut Kraus, www.exclam.de Druck und Bindung: M.P. Media-Print Informationstechnologie GmbH, 33100 Paderborn

    Bibliografische Information der Deutschen Nationalbibliothek Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie; detaillierte bibliografische Daten sind im Internet ber http://dnb.d-nb.de abrufbar.

    ISBN 978-3-86490-150-8

    1. Auflage 2014Copyright 2014 dpunkt.verlag GmbHWieblinger Weg 1769123 Heidelberg

    Die vorliegende Publikation ist urheberrechtlich geschtzt. Alle Rechte vorbehalten. Die Verwendung der Texte und Abbildungen, auch auszugsweise, ist ohne die schriftliche Zustimmung des Verlags urheberrechtswidrig und daher strafbar. Dies gilt insbesondere fr die Vervielfltigung, bersetzung oder die Verwendung in elektronischen Systemen.Es wird darauf hingewiesen, dass die im Buch verwendeten Soft- und Hardware-Bezeichnungen sowie Markennamen und Produktbezeichnungen der jeweiligen Firmen im Allgemeinen warenzeichen-, marken- oder patentrechtlichem Schutz unterliegen.Alle Angaben und Programme in diesem Buch wurden mit grter Sorgfalt kontrolliert. Weder Autor noch Verlag knnen jedoch fr Schden haftbar gemacht werden, die in Zusammenhang mit der Verwendung dieses Buches stehen. 5 4 3 2 1 0

  • v

    Vorwort

    Praktische Bcher ber Mikrocontroller behandeln blicherweise einen ganz bestimmten Typ, der dementsprechend programmiert und eingesetzt wird. Lehr-bcher ber Mikrocontroller konzentrieren sich fast ausschlielich auf theoreti-sche Gesichtspunkte, gehren nicht selten zur trockenen Materie und lassen einen aktuellen Praxisbezug oft vermissen. Mit diesem Buch wird versucht Theo-rie und Praxis anschaulich zu verbinden, wobei verschiedenste aktuelle Mikro-controller und Boards zum Einsatz kommen, die sowohl erlutert als auch einge-setzt werden.

    Das erste Buch, das ich geschrieben habe, hat den Titel Intel-8096-Microcon-troller-Familie Ein Handbuch fr Programmierer und Systementwickler aus dem Jahre 1989. Der Intel 8096 war der erste 16-Bit-Microcontroller und wurde insbesondere fr Embedded Systems wie beispielsweise bei Motorsteuerungen hufig eingesetzt. Fast 25 Jahre oder auch ca. 50 Bcher spter, die sich vorwie-gend mit PC- und Netzwerktechnik beschftigt haben, also wieder ein Mikrocon-trollerbuch.

    Die Grundfunktionalitt eines Mikrocontrollers hat sich in der Zwischenzeit zwar kaum verndert, allerdings ist diese Thematik nun nicht mehr allein den Programmierern und Systementwicklern vorbehalten, was insbesondere der Arduino- und der Raspberry-Pi-Plattform zu verdanken ist, die es mit einem fast spielerischen Ansatz erlauben, dass jedermann kostengnstig Projekte verwirkli-chen kann, die einen Mikrocontroller oder auch einen Single-Board-Computer einsetzen. Wer bereits erste Erfahrungen mit diesen oder hnlichen Systemen gesammelt hat und weiter in die Elektronik und Programmierung einsteigen mchte, der kann mit diesem Buch auf einen verlsslichen Ratgeber und Leitfa-den zurckgreifen.

    Die ersten Kapitel sind durchaus fr Anfnger geeignet. Der Schwierigkeits-grad wird im Verlauf des Buches zunehmend hher, was der Tatsache geschuldet

    Klaus Dembowski, Mikrocontroller Der Leitfaden fr Maker, dpunkt.verlag, ISBN 978-3-86490-150-8

  • Vorwortvi

    ist, dass die Funktionen der Einheiten, wie fr das Energy Harvesting oder auch fr Funksysteme notwendig sind, eben komplexer sind. Wer sich jedoch von Kapitel zu Kapitel hocharbeitet, wird zunehmend auch die komplizierteren Zusammenhnge erschlieen knnen. Der Profi wird hingegen meist selektiv direkt die fr ihn interessanten Teile anvisieren, weil sich das Buch vom Aufbau her auch als Nachschlagewerk eignet.

    Klaus Dembowski Februar 2014

  • vii

    Inhaltsverzeichnis

    1 Mikrocontrollergrundlagen 1

    1.1 Architekturen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

    1.2 Complex und Reduced Instruction Set Computer . . . . . . . . . . . . . . 4

    1.3 Start mit Mikrocontrollern der Firma Intel . . . . . . . . . . . . . . . . . . . 6

    1.3.1 Low Power . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

    1.4 Spannungsversorgung, Oszillator und Reset . . . . . . . . . . . . . . . . . 10

    1.5 Arbeitsspeicher . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

    1.6 Interrupt-Logik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

    1.7 Watchdog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

    1.8 Brown Out Detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

    1.9 JTAG-Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

    1.10 DMA-Logik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

    1.11 Adressierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

    1.12 Programmierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

    2 Mikrocontrollerfamilien beurteilen und auswhlen 27

    2.1 8051-Mikrocontroller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

    2.1.1 Architektur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

    2.2 Microchip-Mikrocontroller PIC . . . . . . . . . . . . . . . . . . . . . . . . . 34

    2.2.1 Architektur und Ausstattungsmerkmale . . . . . . . . . . . . . . 36Oszillatoren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39Reset-Konfiguration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40ICSP-Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41Programmspeicher . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

    Klaus Dembowski, Mikrocontroller Der Leitfaden fr Maker, dpunkt.verlag, ISBN 978-3-86490-150-8

  • Inhaltsverzeichnisviii

    2.2.2 Konfigurationsdaten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44Taktgeneratoreinstellung . . . . . . . . . . . . . . . . . . . . . . . . . . 44Power Up Timer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44Brown Out Detect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44Watchdog Timer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45CCP2Mux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45Stack Overflow Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45Low Voltage Programming . . . . . . . . . . . . . . . . . . . . . . . . 46Code Protection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46Schreiben der Konfigurationsdaten . . . . . . . . . . . . . . . . . . . 46

    2.2.3 PIC-Mikrocontrollerfamilien . . . . . . . . . . . . . . . . . . . . . . . 472.2.4 NanoWatt-Technologie . . . . . . . . . . . . . . . . . . . . . . . . . . . 502.2.5 Entwicklungsumgebung . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

    2.3 Atmel-Mikrocontroller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

    2.3.1 Architektur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 562.3.2 AVR-Controller-Familien im berblick . . . . . . . . . . . . . . . 582.3.3 Power-Save-Betriebsarten . . . . . . . . . . . . . . . . . . . . . . . . . 602.3.4 Entwicklungsumgebung . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

    2.4 MSP430-Mikrocontroller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

    2.4.1 Architektur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 642.4.2 MSP430-Controllerfamilien . . . . . . . . . . . . . . . . . . . . . . . . 672.4.3 Low Power Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 712.4.4 Entwicklungsumgebung und Programmierung . . . . . . . . . . 72

    2.5 ARM-Prozessoren und -Mikrocontroller . . . . . . . . . . . . . . . . . . . . 77

    2.5.1 ARM-Architektur und -Typen . . . . . . . . . . . . . . . . . . . . . . 782.5.2 Cortex-Cores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 812.5.3 EFM32-Gecko . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84

    Peripheral Reflex System . . . . . . . . . . . . . . . . . . . . . . . . . . 8