Programmieren der AVR RISC MikroController mit BASCOM-AVR



Ähnliche Dokumente
Einleitung Die Pins alphabetisch Kapitel 1 Programmierung des ATmega8 und des ATmega

Mikrocomputertechnik mit Controllern der AtmelAVR-RISC-Familie

Einführung in die Welt der Microcontroller

Mikrocomputertechnik

CU-R-CONTROL. Beschreibung zur Schaltung ATMega16-32+ISP MC-Controller Steuerung auf Basis ATMEL Mega16/32. Autor: Christian Ulrich

Der Mikrocontroller beinhaltet auf einem Chip einen kompletten Mikrocomputer, wie in Kapitel

FRANZIS PC+ELEKTRONIK. Jochen Ferger AI1 AI2 AI3 AI4. Masse 5V W «км. AOut PCF8591 SCL SDA. MSR mit USB und Java. Mit 152 Abbildungen

Inhaltsverzeichnis VII

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

Programmieren in C Teil 3: Mikrocontrollerprogrammierung

Eclipse. für die kleinen Dinge des (modernen) Lebens

Mikrocontrollerprogrammierung in Assembler und C

Fakultät für Technik Bereich Elektrotechnik/Informationstechnik

Bausteine mechatronischer Systeme

Android + Arduino Hardware steuern mit Android. Entwicklertag Karlsruhe, Sebastian Wastl

"Memory Stick" zur Programmierung der comfort 8+ Lichtsteuranlage mit PC Software "scenes editor"

Vorschläge für kleine Bastel-Projekte im Rahmen des Arduino-Workshops

AVR-Mikrocontroller mit dem GCC programmieren

BLIT2008-Board. Uwe Berger

I2C-Echtzeituhr am Atmel AVR

IuK-Projekt. Angebote betreut von Prof. Dr. Felderhoff

Wie Software laufen lernt

Arexx-Plattform mit Kinect

Andreas Roth. Das Mikrocontroller- Applikations- Kochbuch

Mikrocontroller - Schnelleinstieg

Das Pollin Atmel Evaluationboard Ver unter Verwendung von MyAVR_Prog Tool und der Arduino IDE ein Kurztutorial

Netzwerk-Watchdog Funktionsbeschreibung UMG604 / UMG605

3,2" Touch-LCD-Farbgrafikdisplay mit High-Level-Grafikcontroller

.Universelles Demonstrationssystem für Grundlagen der Digitaltechnik /

Mikrocontroller vs. Mikroprozessor 1/3

Der Design- und Verifizierungsprozess von elektronischen Schaltungen. Y Diagramm

Atmel AVR für Dummies

Projekt Thermen-Steuerung von Manuel Schreiner Mat.-Nr.: Betreuer: Prof. Rückle

PRT- Wetter-Informations-System (WIV)

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

eblock, SD-Kartenleser Projektteam: Henrik Esche Tobias Albers Michael Heßling Daniel Lütfrenk Jonas Wieschmann

Was unterscheidet Microcontroller von einem PC ( Laptop ) oder einem Handy

Programmieren für Ingenieure Sommer Ein Rechner. Rechner sind überall. Gerät, das mittels programmierbarer Rechenvorschriften Daten verarbeitet.

ATmega169 Chip: Pin-Layout

Steuern und Regeln mit Excel

Fortbildungsmodule >> Elektrotechnik. Modulpräzisierung zu Modul 22 >> µc. Teilmodul 22.1 Grundlagen µcontroller 8051

Florian Schäffer AVR. Hardware und Programmierung in C. Elektor-Verlag, Aachen

Anwendungen mit RaspberryPi und dem Elektor Linux Board (GNUBLIN) Benedikt Sauter,

IT-Basics 2. DI Gerhard Fließ

SU Egerlandstr. 24a, Moosburg 08761/4245 oder 63708, FAX Vorteile der Cartridges

Inhaltsverzeichnis VII.

Bedienungsanleitung Programmiersoftware Save `n carry PLUS. Inhaltsangabe

Microsoft.NET Gadgeteer: Ein raffinierter Weg zum Embedded-Produkt. ECC 2013 Marcel Berger

Einrichten einer Toolchain zur Programmierung des Nibo 2 Roboters mit Atmel Studio 6

Mit ApEx 3.1 eine Website mit integriertem CMS entwickeln. Enrico Mischorr merlin.zwo InfoDesign GmbH & Co. KG

Inhaltsverzeichnis. Getting Started with TRM416/816 System Beispiel: TRM816 Open Frame mit RFID an COM2

Parallel-IO. Ports am ATmega128

POB-Technology Dokumentation. POB-Technology Produkte. Deutsche Übersetzung von roboter-teile.de Alle Rechte vorbehalten Seite 1 von 13

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

mit Delphi Messen, Steuern, Regeln Franzis Sören Götz/Reiner Mende Objektorientierte Programmierung realer Objekte Mit 100 Abbildungen

com.beck Produktübersicht Open Gateways

APPLIKATIONEN ERSTELLEN UND VERWALTEN MIT DEM BLACKBERRY ENTERPRISE SERVER FOR LOTUS DOMINO (DBES 4.1)

Python macht Embedded Linux angenehmer

Grundlagen der Eletrotechnik Praktikum. Einführung in. National Instruments Educational Laboratory Virtual Instrumentation Suite NI ELVIS TM

Mikrocontroller Grundlagen. Markus Koch April 2011

Kompakte Bedienpanels

Arbeiten mit dem Arduino Education Shield

EA KIT-Uebersicht BEDIENEINHEIT 120x32 MIT FONTS, GRAFIKBEFEHLEN UND MAKROS

Programmierbare Logik mit GAL und CPLD

C und C++ für Embedded Systems

MODBUS/TCP und Beckhoff Steuerelemente

Arduino Kurs Das LC-Display. Stephan Laage-Witt FES Lörrach

Documentations-Nr

Tageslichtsimulator Easy Time Controll. Bedienungsanleitung

Microcontroller Programmierung. Ein PDV-Vertiefungsprojekt von: Chr. Schulz, P. Simon und D. Stein Sommersemester 2005 Version 1.0

Microprocessor Anwendungen nach Kundenwunsch

Microcontroller Kurs Microcontroller Kurs/Johannes Fuchs 1

Programmierung von ATMEL AVR Mikroprozessoren am Beispiel des ATtiny13. Teil 8: Ein Sinusgenerator mit AVR-Timer

Was ist Arduino? Historie Der Kern Entwicklungsumgebung Hardware Software Und wozu das Ganze? Workshop Mikrorechner 2012 A.

DST EINFÜHRUNG IN MRT (V2)

Serie 8: Microcontroller 17./

jetzt lerne ich PHP 5 & MySQL 4.1 Der schnelle Einstieg in die objektorientierte

Anwendung und Programmierung von Mikrocontrollern. Anwendung und Programmierung von Mikrocontrollern

Martin V. Künzli Marcel Meli. Vom Gatter zu VHDL. Eine Einführung in die Digitaltechnik. : iasms!wil5i-8sb*l!f. 3. Auflage. zh aw

Einführung in das Programmieren in der Sekundarstufe 1. mit einem Arduino und der Physical-Computing-Plattform

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

MPI-Programmierung unter Windows mit MPICH2. Installieren von MPICH2, Übersetzen, Ausführen und Debuggen von MPI-Programmen. Christian Terboven

P01: ROM-Emulator 16/8 Bits, vorzugsweise für Starterkit NEC V 850

Aufgabenstellung Praktikum Mikrorechentechnik Sommersemester 2014

1. Übung zu "Numerik partieller Differentialgleichungen"

Pflichtenheft. Projektteam. Rexford Osei - Frey Michael Weichert Thomas Thutewohl. Pflichtenheft Seite 1 von 7

deutsch snowmaking control

Mikrocomputertechnik

Selbstbau-USB-Programmiergerät für AVR

TBE332 Controller. Produktbeschreibung

Einführung Microcontroller

Inhaltsverzeichnis. 1 Hallo 13

Hex Datei mit Atmel Studio 6 erstellen

GS-Buchhalter/GS-Office 2015 Saldovorträge in folgenden Wirtschaftsjahren erfassen

Bau und Programmieranleitung für den IR - Booster. Vorbemerkungen

LMBS Geräteprogramm. LaserMaterialBearbeitungsSystem. Ausführungsvarianten und Kombinationen

Transkript:

Claus Kühnel Programmieren der AVR RISC MikroController mit BASCOM-AVR 3. bearbeitete und erweiterte Auflage Eine Einführung anhand von Programmbeispielen

5 Inhalt 1 Vorwort 9 2 Die AVR-Mikrocontroller von Atmel 11 3 BASCOM-AVR 16 3.1 BASCOM-AVR Demo 16 3.2 Installation der BASCOM-AVR Vollversion 17 3.3 Projekte mit BASCOM-AVR 17 3.3.1 Bearbeitung eines Projekts 17 3.3.2 BASCOM-AVR Options 18 3.4 BASCOM-AVR Tools 24 3.4.1 Simulation 25 3.4.2 Terminal Emulator 26 3.4.3 LCD Designer 27 3.4.4 Library Manager 30 3.4.5 Programmierung von Bausteinen 34 3.4.6 Stackanalyzer 36 3.4.7 PDFUpdater 39 3.5 AVR Studio von Atmel 40 3.6 Starterkits für AVR-Mikrocontroller 48 3.6.1 STK500 49 3.6.2 AVR Butterfly 51 3.6.3 staver 52 3.6.4 Olimex Entwicklungsboards 53 3.6.5 mysmartcontrol & myavr 53 3.6.6 Arduino 56 3.6.7 Orangutan SV-168 57 4 BASCOM-AVR Intern 59 4.1 BASCOM-AVR Befehlsübersicht 59 4.2 Konstante 72 4.3 Variable 73 4.4 Arrays 76 4.5 Gleitkommaarithmetik 77 4.6 BASCOM-AVR Hilfesystem 81 4.7 Initialisierung 83 4.8 Interrupts 85 4.9 Takterzeugung 90

6 4.9.1 Externer Quarz 90 4.9.2 Interner RC-Oszillator 91 4.9.3 Externer Takt 92 4.10 Sleep Modes 92 4.11 Parameterübergabe an Subroutines 94 4.12 BASIC & Assembler 95 4.13 Fuse und Lock Bits 99 4.14 Selbstprogrammierung 102 5 On-Chip Peripherie 106 5.1 I/O-Ports 107 5.1.1 Steuerung von I/O-Ports 107 5.1.2 Beschaltung von I/O-Ports 108 5.2 Timer/Counter 111 5.3 Watchdog 115 5.4 SPI 116 5.4.1 Hardware-SPI 116 5.4.2 Software-SPI 117 5.5 U(S)ART 118 5.5.1 Hardware-U(S)ART 118 5.5.2 Software-UART 122 5.6 l2c-bus (TWI) 124 5.6.1 Hardware-TWI 125 5.6.2 I2C in Software 126 5.7 Analogkomparator 127 5.8 Analog-/Digital-Umsetzer 128 5.8.1 Funktionsbeschreibung 128 5.8.2 Kennwerte des AD-Umsetzers 132 6 Statt "Hello World" 136 7 Applikationen 145 7.1 Basisbeschaltung eines AVR-Mikrocontrollers 145 7.2 Programmierbare Logik 145 7.3 Splitting von Ports 149 7.4 Timerund Counter 152 7.4.1 Timer 152 7.4.2 Counter 159 7.4.3 Puls-Weiten-Modulation 162 7.4.4 Erfassen einer Pulslänge 167 7.5 Ansteuerung von LEDs 171 7.5.1 Einzelne LED 171 7.5.2 Sieben-Segment-Anzeigen 172

7 7.5.3 Dot-Matrix-Anzeigen 174 7.6 Ansteuerung von Text-LCDs 177 7.6.1 Direkte Ansteuerung HD44780-kompatibler Text-LCD 178 7.6.2 Text-LCD mit seriellem Interface 183 7.7 Ansteuerung grafischer LCDs (TFT) 189 7.7.1 2.1" Farbdisplay-Modul mit Eingabeeinheit 190 7.7.2 Initialisierung und Ausgabe 191 7.7.3 Aufbereitung von Bitmap-Grafiken 193 7.7.4 D072 Programmbeispiele 194 7.7.5 GoldenGate 197 7.7.6 Anzeige von Werten in einem Liniendiagramm 200 7.8 Anschluss von Tasten und Tastaturen 203 7.8.1 Einzelne Tasten 204 7.8.2 Matrix-Tastatur 205 7.8.3 PC-AT-Tastatur 208 7.9 Dateneingabe mit IR-Fernbedienung 212 7.9.1 Abfrage der IR-Fernbedienung 213 7.9.2 Gerätesteuerung mit IR-Fernbedienung 216 7.10 Asynchrone serielle Kommunikation 220 7.11 1-WIRE Interface 226 7.11.1 Einige Grundlagen 226 7.11.2 1-Wire Devices 228 7.11.3 Zugriff auf ibuttons 233 7.11.4 Identifikation von ibuttons 234 7.11.5 Zutrittskontrolle mit ibuttons 236 7.11.6 Temperaturmessung mitds1920 240 7.11.7 Externer Speicher mit DS1994 244 7.11.8 Timer mit DS1994 248 7.11.9 Messung von Temperatur und Luftfeuchtigkeit 253 7.12 Synchrone serielle Kommunikation 268 7.12.1 SPI-Interface 268 7.12.2 Schieberegister 273 7.13 l2c-bus 276 7.13.1 l2c-bus Datenaustausch über Software 278 7.13.2 Hardwareunterstützter l2c-bus Datenaustausch 280 7.14 Analoge Ein-/Ausgabe 284 7.14.1 Analogkomparator 284 7.14.2 Analog-Digitalumsetzer 287 7.14.3 Initialisierung für staver-24m32 Entwicklungsboard 288 7.14.4 Programmbeispiele zu AD-Umsetzung 289 7.14.5 Digital-Analogumsetzer 299 7.15 AVR Butterfly 305 7.15.1 Hello Butterfly" 305 7.15.2 Kalibrierung des internen RC-Oszillators 308

8 7.15.3 Temperaturmessung 311 7.16 LilyPad Arduino 315 7.16.1 Umgebungslichtgesteuerte Blinkschaltung 315 7.16.2 Ansteuerung RGB-LED 319 7.17 Temperaturmessung mit LM75 und myavr 322 7.17.1 Temperatursensor LM75 322 7.17.2 Temperaturanzeige 324 7.18 AVR-Mikrocontroller im Netz 327 7.18.1 MicroWebServ(er) 327 7.18.2 Gobetwino 338 7.18.3 WebCat & WebTiger 344 7.18.4 Ethernet-ModulWIZ810MJ 345 7.19 Kommunikation über Modems 345 7.19.1 Grundlagen zu Modems 345 7.19.2 Festnetz-Modem 347 7.19.3 GSM-Modem 355 7.20 Auswertung von GPS-Informationen 364 7.21 CANDIP - Interface zum CAN-Bus 370 7.22 Berechnung von Checksummen 380 7.23 Zufallszahlen 382 7.24 Gleitender Mittelwert 387 7.25 Motorsteuerung 390 7.25.1 Ansteuerung von Servos 390 7.25.2 Ansteuerung von DC-Motoren 396 7.25.3 Ansteuerung von Schrittmotoren 401 8 Anhang 406 8.1 AVR-Mikrocontroller für den Einsatz mit BASCOM-AVR 406 8.2 MCS Electronics Application Notes 408 8.3 Decimal-Hex-ASCIl Converter 410 8.4 Zeichenvorrat Sieben-Segment-Anzeige 413 8.5 Übersicht AT-Befehle 414 8.6 GSM-Erweiterungen 416 8.7 Literatur 417 8.8 Links 418 8.8.1 Informationen zu Atmel's AVR Mikrocontrollern 418 8.8.2 Informationen zu BASCOM-AVR 418 8.8.3 Informationen zu eingesetzten Bausteinen 418 8.8.4 AVR Evaluationboards 420 8.8.5 Roboterbausätze 420 8.9 Infomationen über Suchmaschinen 420 9 Index 421