Dateien, die nicht in das Projekt eingebunden sind, werden ohne Syntax highlight dargestellt. MiCoWi und µvision Seite 1 Uwe Wittenfeld
|
|
- Maria Thomas
- vor 7 Jahren
- Abrufe
Transkript
1 C-Programmierung von MiCoWi mit der Keil-Entwicklungsumgebung µvision4 1. Erstellung eines neuen Projektes Menüpunkt: Project New µvision Project Es wird ein komplett neues Projekt in einem beliebigen Verzeichnis erzeugt. Zunächst wird dieverwendete CPU spezifiziert. Micowi arbeitet mit dem Prozessor AT89S8253 von Atmel. Bitte bestätigen Sie die Frage, ob der Startup-Code hinzugefügt werden soll mit Ja. Das Projekt enthält jetzt im Ordner Source Group 1 die Datei STARTUP.A51, aber noch keine C-Datei. Es müssen noch einige Einstellungen (Options Target) vorgenommen werden: Reiter Device: Xtal (MHz): 12 Memory Model: Small Code Rom Size: Compact Reiter Output: Create HEX File aktivieren Einfügen einer Datei mit Quellcode: Eine C-Datei mit dem Quellcode muss explizit zum Projekt hinzugefügt werden. Nur das Öffnen der Datei reicht nicht aus. Klicken Sie dazu mit rechts auf den Ordner Source Group 1 und wählen Sie Add files to group. Die Datei sollte sich auch im Projektordner befinden. Dateien, die nicht in das Projekt eingebunden sind, werden ohne Syntax highlight dargestellt. MiCoWi und µvision Seite 1 Uwe Wittenfeld
2 2. Grundstruktur des Quellcodes Es gibt bereits eine Datei, in der alle Register des Mikrocontrollers deklariert sind. Dieses Includefile sollte am Anfang des Quelltextes eingefügt werden: #include "reg52.h" Das Hauptprogramm muss immer eine ewige Schleife enthalten, denn es gibt kein Betriebssystem und der Prozessor muss immer ein definiertes Programm abarbeiten. void main (void) { init(); // Grundinitialisierung für Timer, IRQ, etc. while(1) { } } //main 3. Erweiterungen der C-Syntax für Mikrocontroller Compiler für Mikrocontroller haben spezielle Ergänzungen der normalen ANSI-C-Konventionen. Diese Erweiterungen sind Compilerspezifisch, d.h. die Syntax muss gegebenenfalls bei der Verwendung eines anderen Prozessors angepasst werden. Einzelbits des Mikrocontrollers: Um auf Bits des Mikrocontrollers zugreifen zu können, die einzeln adressierbar sind, kann der Datentyp sbit verwendet werden. sbit testbit = P0^7; // Bit 7 von Port 0 Interrupts: Die Deklaration einer Interruptfunktion hat folgende Syntax: void irq_test(void) interrupt 1 { } Die Nummer hinter dem Wort Interrupt kennzeichnet den verwendeten Interrupt: MiCoWi und µvision Seite 2 Uwe Wittenfeld
3 4. Logische Einzelbitmanipulationen Bei der Programmierung von Mikrocontrollern spielt die bitweise Manipulation eine große Rolle.: Operator Funktion Beispiel & Und x = x & 0xF0 //Unterstes Nibble von x auf 0 Oder x = x 0x80 //Oberstes Bit von x setzen ^ Exclusiv Oder Bit ist 1, wenn genau eins der zugehörigen Bits 1 ist ~ Nicht Alle Bits invertieren << Shift left x = x << 2 //x um 2 Bit nach links schieben (*4) >> Shift right x = x >> 2 //x um ein Bit nach rechts schieben (/2) 5. Datentyp der einem Byte entspricht Es gibt in C keinen Datentyp Byte (8 Bit ohne Vorzeichen). Beim Keil-Compiler dient hierzu der Datenty unsigned char. 6. Interruptfreigabe Um einen Interrupt freizugeben muss im Register IE das dem entsprechenden Interrupt zugeordnete Byte und der Bit EA gesetzt werden. ET0 = 1; // Irq von Timer 0 EA = 1; // Generelle Interruptfeigabe Nach einem RESET sind zunächst alle Interrupts abgeschaltet. MiCoWi und µvision Seite 3 Uwe Wittenfeld
4 7. Timer Alle Prozessoren der 8051/8052-Serie verfügen über mindestens zwei Timer. Die Timer sind prinzipiell identisch, d.h. es ist dem Programmierer überlassen, ob er eine Aufgabe mit Timer 0 oder mit Timer 1 löst. Es soll hier vorläufig mit folgenden Einschränkungen gearbeitet werden: Es wird entweder der 16-Bit-Modus ohne Autoreload oder der 8-Bit- Modus mit Autoreload verwendet. Es wird nur mit einem intern erzeugten Takt. Das An- und Ausschalten der Zähler wird nur durch das Programm und nicht durch eine externe Hardware durchgeführt. Folgende Eigenschaften des Zählers sind zu berücksichtigen: Der Zähler zählt vorwärts. Ein Überlauf des Zählers löst einen Interrupt aus. Der Zähltakt entspricht dem Prozessortakt, also 1/12 der Quarzfrequenz (Hier: 1 MHz). Im 16-Bit-Modus muss der Wert nach jedem Überlauf neu nachgeladen werden. Für eine genaue Beschreibung der Timer sei auf die Hardwarebeschreibung hingewiesen. Beispiel 1: 10ms-Timer Gewählt: Timer 0 im 16-Bit-Modus) tm = TMOD; //Timermodusregister einlesen tm = tm & 0xF0; //Zustand Timer 1 ausmaskieren TMOD= tm 1; //Timer 0: 16 Bit (Modus 1), Timer 1 unverändert TH0 = 0xD8 ; //High-Byte des Zählers TL0 = 0xEF; //Low-Byte des Zählers ET0 = 1; //Interrupt für Timer 0 freigeben EA = 1; //Generelle Interruptfreigabe; TR0 = 1; //Timer 0 starten Timerwert für 10ms (10000µs): =55535 = 0xD8EF Der Timer muss im Interrupt nachgeladen werden, damit er nicht mit einer Zykluszeit von 65,535 ms weiterläuft. MiCoWi und µvision Seite 4 Uwe Wittenfeld
5 8. Beispielprogramm: Lauflichtprogramm //============================================================== // Lauflicht mit Timer und Interrupt // An LEDPORT wird ein Lauflicht ausgegebeb // Timer 0 erzeugt einen 10ms-Interrupt (12 MHz) // Uwe Wittenfeld //============================================================== #include "reg52.h" #define LEDPORT P0 // P0 als Ausgabeport #define STARTWERT 0x7 // Startwert des Lauflichts #define IRQANZ 10 // Alle 10 Interrupts wird Lauflicht geändert #define THBYTE 0xD8; // 10 ms bie 12 MHz --> =55535=D8EFh #define TLBYTE 0xEF; unsigned int wert; unsigned int irqcnt; //Aktueller Wert des Lauflichts //Interuptzähler // Init ========================================================= void init (void) { unsigned char tm; //Zwischenwert TMOD-Register wert = STARTWERT; //Startwert für Schieberegister irqcnt = 0; //Interruptzähler auf 0 tm = TMOD; //Timermodusregister einlesen tm = tm & 0xF0; //Zustand Timer 1 ausmaskieren TMOD= tm 1; //Timer 0: 16 Bit (Modus 1), Timer 1 unverändert TH0 = THBYTE; //High-Byte des Zählers TL0 = TLBYTE; //Low-Byte des Zählers ET0 = 1; //Interrupt für Timer 0 freigeben EA = 1; //Generelle Interruptfreigabe; TR0 = 1; //Timer 0 starten } //init // Bearbeitung des Lauflichts =================================== void tuwas (void) { unsigned char carry; //Übertrag LEDPORT = wert; //Ausgabe carry = wert&0x80; //Oberstes Bit merken wert = wert<<1; //Wert nach links schieben if (carry>0) //Bit herausgeschoben? {wert = wert 1;}; //Unten wieder einfügen } //tuwas // Timer-0 Interrupt ============================================ void timer0 (void) interrupt 1 { TR0 = 0; //Timer 0 abstellen TH0 = THBYTE; //High-Byte des Zählers TL0 = TLBYTE; //Low-Byte des Zählers TR0 = 1; //Timer 0 starten irqcnt++; //Zähler erhöhen if (irqcnt >= IRQANZ) { tuwas(); //Lauflicht bearbeiten irqcnt=0; //Zähler wieder auf 0 } // if irqcnt } //timer 0 // Hauptprogramm ================================================ void main (void) { init(); //Timer- und Interruptinitialisierung while(1) //Unendliche Schleife {} } //main MiCoWi und µvision Seite 5 Uwe Wittenfeld
Speicheraufbau des AT89C5131
Speicheraufbau des AT89C5131 Prinzip: - getrennter Programmspeicher (ROM) und Datenspeicher (RAM) - interner Speicher (auf dem Chip) und externer Speicher (Zusatzbausteine) Das Experimentalsystem hat keinen
Mehrµversion 2 Einführung
µversion 2 Einführung V1.0 F. Wolf Graz, September 2002 Inhaltsverzeichnis 1 Keil Mikroprozessor-Entwicklungsumgebung 1 2 Menübeschreibung 1 2.1 Hauptmenü 2 2.2 Compilermenü 2 2.3 Debugermenü 2 3 Projekt
MehrMicrocontroller Praktikum SS2010 Dipl. Ing. R. Reisch
Microcontroller Praktikum SS2010 Dipl. Ing. R. Reisch Die wichtigsten Unterlagen/Tools Für das Praktikum Unterlagen/Kenntnisse/Tools wichtig: Datenblatt des AT80USB1287 µc Schaltplan des im Praktikum verwendeten
MehrDa der Mikrocontroller mit den internen Timern sehr genau Zeiten messen kann, entschieden wir uns für die Zeitmessung.
Stufe 1: Das Projekt Fahrradcomputer wurde in der Stufe 1 zunächst auf die Messung der Geschwindigkeit gerichtet. Dabei soll der Mikrocontroller die Impulse auswerten, die von einem Sensor an der Fahrradgabel
MehrPIC16 Programmierung in HITECH-C
PIC16 Programmierung in HITECH-C Operatoren: Arithmetische Operatoren - binäre Operatoren + Addition - Subtraktion * Multiplikation / Division % Modulo + - * / sind auf ganzzahlige und reelle Operanden
Mehrmyavr Programmierung in C
myavr Programmierung in C Stefan Goebel Februar 2017 Stefan Goebel myavr Programmierung in C Februar 2017 1 / 12 Grundgerüst... braucht man immer! #include // Register- und Konstantendefinitionen
MehrPraktikum Mikrorechner 11 (Timer 1)
Prof. G. Kemnitz Institut für Informatik, Technische Universität Clausthal 5. November 2014 1/27 Praktikum Mikrorechner 11 (Timer 1) Prof. G. Kemnitz Institut für Informatik, Technische Universität Clausthal
Mehr4 Formelsammlung C/C++
4 Formelsammlung C/C++ 4.1 Datentypen Datentyp stdint.h type Bits Sign Wertebereich (unsigned) char uint8_t 8 Unsigned 0.. 255 signed char int8_t 8 Signed -128.. 127 unsigned short uint16_t 16 Unsigned
MehrPrinzipieller Grundaufbau eines einfachen C-Programmes
Prinzipieller Grundaufbau eines einfachen C-Programmes C unterscheidet zwischen Groß- und Kleinschreibung! Siehe zu den folgenden Erklärungen auch das Programm am Ende der nächsten Seite. Am Anfang aller
Mehri2c-bus.de IN/OUT - UART Einfache Ein- und Ausgabe über serielle Schnittstelle Interrupt-Betrieb Dokument NR.: AB-001-U-03
DA Dokument NR.: AB-001-U-03 IN/OUT - UART Einfache Ein- und Ausgabe über serielle chnittstelle Interrupt-Betrieb P Bitte denken ie an die Umwelt, bevor ie diese Datei ausdrucken IN/OUT mittels BUF (Interrupt)
MehrEinleitung Die Pins alphabetisch Kapitel 1 Programmierung des ATmega8 und des ATmega
Einleitung... 11 Die Pins alphabetisch.... 12 Kapitel 1 Programmierung des ATmega8 und des ATmega328.... 15 1.1 Was Sie auf den nächsten Seiten erwartet... 19 1.2 Was ist eine Micro Controller Unit (MCU)?....
MehrProjektdokumentation: DCF 77 Funkuhr
Projektdokumentation: DCF 77 Funkuhr Seite 1 von 8 DCF-77 Signalanalyse Die DCF-77 Signale werden von einem Sender in Mainflingen (ca. 25 km südöstlich von Frankfurt am Main) von der Physikalisch-Technischen
Mehr18. Bitmanipulationen. Bitoperationen Bitmasken
18. Bitmanipulationen Bitoperationen Bitmasken Anwendung von Bits Statusanzeigen bei Ein-/Ausgabe (Stream-Klassen) Zugriffsrechte auf Dateien Maschinensteuerung/Gerätetreiber Status-/Steuerungsangaben
MehrC-Grundlagen. zur Programmierung des MicroControllersystems MiCoWi
1. Datentypen C-Grundlagen zur Programmierung des MicroControllersystems MiCoWi Die Grafiken und Beispiele wurden dem Buch C von A bis z von Jürgen Wolf entnommen. Es werden hier die ANSI-Festlegungen
MehrBit Operationen. InE1 M. Thaler, Office TG ZHAW, M. Thaler, K. Rege, G. Burkert
Bit Operationen InE M. Thaler, tham@zhaw.ch Office TG28 http://www.zhaw.ch/~tham November 8 Um was geht es? Microcontroller z.b. Ansteuerung/Konfiguartion von I/O Registern oft notwendig: einzelne Bits
MehrAngewandte Mathematik und Programmierung
Angewandte Mathematik und Programmierung Einführung in das Konzept der objektorientierten Anwendungen zu mathematischen Rechnens WS 2013/14 Operatoren Operatoren führen Aktionen mit Operanden aus. Der
MehrDie Entwicklungsumgebung. Labor Technische Informatik. Prof. Dr.-Ing. F. Kesel Dipl.-Ing. (FH) A. Reber
Die Entwicklungsumgebung Labor Technische Informatik Prof. Dr.-Ing. F. Kesel Dipl.-Ing. (FH) A. Reber 19.04.2011 Inhalt 1 Das Keil MCB1700 Board...2 2 Keil ARM MDK Toolchain...3 2.1 Projekterstellung...3
MehrSerieller A/D-Wandler am 8051-Mikrocontroller
Fachbereich Elektrotechnik und Informatik Labor für Angewandte Informatik Praktikum Mikroprozessortechnik und DSP (EMD) Prof.Dr.-Ing. W. Caninenberg Serieller A/D-Wandler am 8051-Mikrocontroller Name,
MehrKompilieren Datentypen Operatoren. Überblick. 1 Kompilieren. 2 Datentypen. const static volatile. 3 Operatoren. Alexander Batoulis
Überblick 1 2 const static volatile 3 Überblick 1 2 const static volatile 3 eines C Programmes bevor Programm ausführbar ist, muss es von Compiler in Maschinensprache übersetzt werden Neben Compiler werden
MehrBMC - Mikrocomputertechnik 2017 Aufgaben & Beispiele
Programme mit dem Simulator testen start: mov p1,#00001111b mov p1,#11110000b Google sim535 Hernando Vasquez http://hernando-vasquez.software.informer.com/ Seite 1 / 35 Bitmuster auf Port 1 (LED-Zeile)
MehrMikrocomputertechnik. Thema: Der Aufbau des XC888-Mikrocontrollers -Teil 1 -
Mikrocomputertechnik Thema: Der Aufbau des XC888-Mikrocontrollers -Teil 1 - Mikroprozessor-Achritekturen Folie 2 Mikroprozessor-Achritekturen Klassifizierung anhand Wortbreite CPU-Architektur und Busleitungen
MehrProfessionelle Softwareentwicklung für Mikrocontroller Inbetriebnahme des C167CR Starter Kits I. DAvE - Digitaler Applikationsingenieur
Professionelle Softwareentwicklung für Mikrocontroller DAvE - Digitaler Applikationsingenieur Inbetriebnahme des C167CR Starter Kits Wilhelm Brezovits Dieser Artikel soll zu einem Erfolgserlebnis beitragen.
MehrMicrocontroller Selbststudium Semesterwoche 9
Microcontroller Selbststudium Semesterwoche 9 Kurzfragen zum Thema Interrupts 1. Wozu werden Interrupts benötigt (Beispiele)? Interrupts werden überall dort verwendet, wo auf zeitkritische Ereignisse reagiert
Mehrd) Was passiert, wenn das folgende Programmstück übersetzt und ausgeführt
Aufgabe 1: (15 Punkte) Bei den Multiple-Choice-Fragen ist jeweils nur eine richtige Antwort eindeutig anzukreuzen. Auf die richtige Antwort gibt es die angegebene Punktzahl. Wollen Sie eine Multiple-Choice-Antwort
MehrEXF2 TF2 IEX6 IEX5 IEX4 IEX3 IEX2 IADC 0C0H T2PS I3FR I2FR T2R1 T2R0 T2CM T2I1 T2I0 0C8H. AFH AEH ADH ACH ABH AAH A9H A8H Bitdresse
Siemens-C515C Special-Function-Register (Subset) MSB 7 6 5 4 3 2 1 LSB 0 COCH3 COCL3 COCH2 COCL2 COCH1 COCL1 COCH0 COCL0 Bit 0C1H CCEN EXF2 TF2 IEX6 IEX5 IEX4 IEX3 IEX2 IADC 0C0H IRCON C7H C6H C5H C4H
MehrPraktikum DST (MRT Teil) 1. Termin
Praktikum DST (MRT Teil) 1. Termin 19.10.2016 Praktikum DST MRT 1.Termin Inhalt Praktikum DST MRT 1.Termin... 1 1. Rechneranmeldung... 1 1.1 Einfachste Ein-/ Ausgabe ( 1_01_In_Out )... 2 1.1.1 Code aus
Mehri2c-bus.de I2C-001 KURZBESCHREIBUNG I 2 C Modul mit PCF8574 8-Bit I/O Port-Expander Dokument NR.: I2C-001-D-01
DA CL Dokument NR.: I2C-001-D-01 I2C-001 KURZBECHREIBUNG I 2 C Modul mit PCF8574 8-Bit I/O Port-Expander P Bitte denken ie an die Umwelt, bevor ie diese Datei ausdrucken DA CL Inhaltsverzeichnis 1. Modul
MehrLehrfach: Mikrorechentechnik Versuch: Zeitmessung
ZM P_51_004_NEU. doc Lehrfach: Mikrorechentechnik Versuch: Zeitmessung Oc Hochschule Zittau/Görlitz; Fachbereich Elektro- und Informationstechnik Prof. Dr.-Ing. Kühne April 2005 Bearb.:Dipl.-Ing. Sbieschni
MehrMini- Mikroprozessor-Experimentier-System. Version 1.0b vom :21. mit einem 8051-Mikrocontroller
Mini- Mikroprozessor-Experimentier-System mit einem 8051-Mikrocontroller Version 1.0b vom 04.10.2004 14:21 Inhalt 1 Einleitung...3 2 Hardware...4 2.1 Übersicht...4 2.2 Mikrocontroller AT89C51RB2...5 2.3
MehrZeiger in C und C++ Zeiger in Java und C/C++
1 Zeiger in Java und C/C++ Zeigervariable (kurz: Zeiger, engl.: pointer): eine Variable, die als Wert eine Speicheradresse enthält Java: Zeiger werden implizit für Referenztypen (Klassen und Arrays) verwendet,
MehrArduino für FunkAmateure
Arduino für FunkAmateure Arduino Einführung Teil 9 Taster-Platine 4x4 Wie gehe ich am besten vor? 1. Was will ich machen? 2. Bauteile 3. Überlegungen zur Schaltung und Algorithmus 4. Zuordnung Arduino-Pins
MehrErste Schritte der Programmierung in C
Erste Schritte der Programmierung in C C versus C++ Anatomie von C-Programmen für AVR- Mikrocontroller Unterschiede zwischen C++ und C 1 Grundlegende Unterschiede File-Extensions (Header und Quellcode)
MehrZähler- und Zeitgeber-Baugruppen
Zähler- und Zeitgeber-Baugruppen Sinn: häufig müssen Zeitbedingungen eingehalten werden z.b.: einige ms warten, Häufigkeit von Ereignissen zählen etc... Lösung: 1.) Zeitschleifen = Programm abarbeiten,
MehrINE1 Bit-Operationen. Bit-Operationen Übungen Bits setzen, löschen, abfragen Beispiel: Bitmap
INE1 Bit-Operationen Bit-Operationen Übungen Bits setzen, löschen, abfragen Beispiel: Bitmap 1 Displays and I/O Binary Display & Input Output 2 von 39 Operationen für Bitmanipulation Bit - Operatoren Die
MehrMicrocontroller Kurs Programmieren. 09.10.11 Microcontroller Kurs/Johannes Fuchs 1
Microcontroller Kurs Programmieren 9.1.11 Microcontroller Kurs/Johannes Fuchs 1 General Purpose Input Output (GPIO) Jeder der Pins der vier I/O Ports kann als Eingabe- oder Ausgabe-leitung benutzt werden.
Mehri2c-bus.de I2C-002 KURZBESCHREIBUNG I 2 C Modul mit PCA8574 8-Bit I/O Port-Expander Dokument NR.: I2C-002-D-01
DA CL Dokument NR.: I2C-002-D-01 I2C-002 KURZBECHREIBUNG I 2 C Modul mit PCA8574 8-Bit I/O Port-Expander P Bitte denken ie an die Umwelt, bevor ie diese Datei ausdrucken DA CL Inhaltsverzeichnis 1. Modul
MehrEinführung DIP & AVR EVK1100
Einführung DIP & AVR EVK1100 Umfang: ca. 2-4 Zeitstunden Display und Buttons (DIP) DIP (Treiber, Code) Aufgaben Emqopter GmbH 2 Display: DIP204 20 Spalten x 4 Zeilen (80 Zeichen) Anzeige von Informationen
MehrZum Aufwärmen nocheinmal grundlegende Tatsachen zum Rechnen mit reelen Zahlen auf dem Computer. Das Rechnen mit Gleitkommazahlen wird durch den IEEE
Zum Aufwärmen nocheinmal grundlegende Tatsachen zum Rechnen mit reelen Zahlen auf dem Computer. Das Rechnen mit Gleitkommazahlen wird durch den IEEE 754 Standard festgelegt. Es stehen sogenannte einfach
MehrLaborprotokoll Informationstechnologien
Laborprotokoll Informationstechnologien Mikrocontroller-Programmierung (C 51) TKS 2004, Sommersemester 2004/05 Klaus Roleff Andreas Unterweger Klaus Roleff, Andreas Unterweger ITLB2 Seite 1 von 18 Übung
MehrHello World! Eine Einführung in das Programmieren Das erste Programm
Hello World! Eine Einführung in das Programmieren Das erste Programm Görschwin Fey Institute of Embedded Systems Hamburg University of Technology Slide 2 Betriebssystem Funktion Anwendung Gerätesteuerung
MehrDatentechnik. Prinzipieller Aufbau eines Schnittstellenbausteins
Prinzipieller Aufbau eines Schnittstellenbausteins DB /CS A0-Ai R/W Reset Takt Int IntAck zum µp Datenbus Puffer Steuerung Interruptsteuerung & IF Statusregister IE Steuerregister Befehlsregister Datenregister
MehrFür den CTC-Mode kann demnach TCCR1A komplett auf 0 gesetzt werden, weil WGM11 und WGM10 in diesem Register liegen und beide laut Tabelle 0 sind:
Timerinterrupts beim Arduino Timer 1 (16bit) Register: Bits in den Registern und ihre Bedeutung: Für den CTC-Mode kann demnach TCCR1A komplett auf 0 gesetzt werden, weil WGM11 und WGM10 in diesem Register
MehrC++ mit dem Arduino (Uno und Mega2560)
C++ mit dem Arduino (Uno und Mega2560) 1. Toolchain Als toolchain bezeichnet man die Reihe von Software, die nötig ist um den Prozessor zu programmieren, das Ergebnis draufzuladen und dann zu testen. Hier
MehrGI Vektoren
Vektoren Problem: Beispiel: viele Variablen vom gleichen Typ abspeichern Text ( = viele char-variablen), Ergebnisse einer Meßreihe ( = viele int-variablen) hierfür: Vektoren ( = Arrays = Feld ) = Ansammlung
MehrI2C-002 DATASHEET I2C-002 V1.00: I2C PORTEXPANDER MIT PCA8574. Dokument NR.: I2C-002_Datasheet
I2C-002 DATASHEET Dokument NR.: I2C-002_Datasheet I2C-002 V1.00: I2C PORTEXPANDER MIT PCA8574 P Bitte denken Sie an die Umwelt, bevor Sie diese Datei ausdrucken Inhaltsverzeichnis 1. Modul Bilder...3 2.
MehrSSA P_51_002_NEU. doc
SSA P_51_002_NEU. doc Lehrfach: Mikrorechentechnik Versuch: Sieben-Segment-Anzeige Oc Hochschule Zittau/Görlitz; Fachbereich Elektro- und Informationstechnik Prof. Dr.-Ing. Kühne April 2005 Bearb.:Dipl.-Ing.
MehrKR-mega32-16 rev. 2.3 Thomas Krause, Krause Robotik
Kurzanleitung zur Installation der Software zum Mikrokontrollerbord KR-mega32-16 rev. 2.3 Thomas Krause, Krause Robotik thomas.krause@krause-robotik.de Krause Robotik www.krause-robotik.de email: info@krause-robotik.de
MehrU4 Grundlagen der C-Programmierung
U4 Grundlagen der C-Programmierung U4 Grundlagen der C-Programmierung Makros Enums und Typedefs Deklaration und Definition Compileroptimierungen U4.1 U4-1 Makros U4-1 Makros Makros sind Textersetzungen,
MehrAufbau eines Assembler-Programms
Aufbau eines Assembler-Programms. Assembler-Anweisungen (Direktiven) Einbindung von include-files Definition von Konstanten, Reservierung von Speicherplatz im RAM, 2. Was tun, wenn C Reset-Signal erhält
Mehr- 1 - FA 205. Technische Richtlinien für Unterricht und Prüfung. Festlegung wichtiger Begriffe Stand 04. März 2016
- 1 - Baden- Württemberg Ministerium für Kultus, Jugend und Sport Baden-Württemberg Koordinierungsstelle für Abschlussprüfungen Berufsschule-Wirtschaft Landesfachausschuss für die Ausbildungsberufe Elektroniker/
Mehr8051Speicherorganistaion. SFR u. oberer Datenspeicherbereich teilen sich den SPECIAL FUNCTION REGISTER. gleichen Adreßbereich. indirekt adressierbar
intern (auf CPU) PROGRAMMSPEICHER extern 2K bis 64K ROM 051: 4K max 64K 051:64K 051Speicherorganistaion 13.04.2000 - v3 extern interner XRAM DATENSPEICHER intern (auf CPU) SPECIAL FUNCTION REGISTER SFR
MehrMikroprozessoren Grundlagen AVR-Controller Input / Output (I/O) Interrupt Mathematische Operationen
Mikroprozessoren Grundlagen Aufbau, Blockschaltbild Grundlegende Datentypen AVR-Controller Anatomie Befehlssatz Assembler Speicherzugriff Adressierungsarten Kontrollstrukturen Stack Input / Output (I/O)
MehrMODUL 6 TIMER UND COUNTER
µc Anwendungsprogrammierung in C Modul 6 / Seite 1 MODUL 6 TIMER UND COUNTER V1.1 J. Humer 1997 µc Anwendungsprogrammierung in C Modul 6 / Seite 2 INHALTSVERZEICHNIS MODUL 6 TIMER UND COUNTER Inhalt Seite
Mehra) Welche Aussage zu Zeigern ist richtig? Die Übergabesemantik für Zeiger als Funktionsparameter ist callby-value.
Aufgabe 1: (15 Punkte) Bei den Multiple-Choice-Fragen ist jeweils nur eine richtige Antwort eindeutig anzukreuzen. Auf die richtige Antwort gibt es die angegebene Punktzahl. Wollen Sie eine Multiple-Choice-Antwort
MehrWeiterführende Entwicklungen
Weiterführende Entwicklungen Online Plattform Inhalt Datum 03.04.2018 Ersteller tswa Version 1.3 Festo AG & Co. KG Postfach 73726 Esslingen www.festo.com Telefon 0711 347- Telefax 0711 347- @de.festo.com
Mehr6ES AG10-0AB0 A5E
AG090215 Konfiguration des TIA Portals V13 SP1 zum Auslesen zyklischer Gegenstand: Einsatz zyklischer Kommunikation über ein Kommunikationsmodul SmartLinx, um Daten am MultiRanger/HydroRanger 200 HMI zu
Mehr7. Übung Informatik II - Objektorientierte Programmierung
7. Übung Informatik II - Objektorientierte Programmierung 29. Mai 2015 Inhalt 1 2 3 Übersicht 1 2 3 Idee Menschen nehmen die Welt in Form von Objekten wahr manche Objekte haben gleiche Eigenschaften, hierüber
MehrMikroprozessor-Experimentier-System
Fachbereich Elektrotechnik Fachgebiet Industrieelektronik & Digitaltechnik Fachhochschule Hannover University of Applied Sciences and Arts Mikroprozessor-Experimentier-System mit einem 8051-Mikrocontroller
MehrLösung 8051er. Bussysteme IIC - Bus. Klasse:... Datum:...
/******************************************************************************** CLASS: P8051er Compiler: KeiluV3 PROGRAM: Blinc_C.c AUTHOR: Gerhard Neumaier DATE: 15.Okt 2010 DESCRIPTION: LEDs am Port1
MehrJava I Vorlesung Imperatives Programmieren
Java I Vorlesung 2 Imperatives Programmieren 3.5.2004 Variablen -- Datentypen -- Werte Operatoren und Ausdrücke Kontrollstrukturen: if Imperatives Programmieren Im Kern ist Java eine imperative Programmiersprache.
MehrWiederholung: Zugriff auf AVR-Prozessor-Register. Aufgabe 3: 7seg-Modul der SPiCboard-Bibliothek
U4 4. Übung U4 4. Übung Wiederholung: Zugriff auf AVR-Prozessor-Register Wiederholung: I/O-Ports Hexadezimalzahlen Überblick: Modulare Softwareentwicklung Aufgabe 3: 7seg-Modul der SPiCboard-Bibliothek
MehrLotto. eine Projektarbeit in DVT. von Sven Schwab
Lotto eine Projektarbeit in DVT von Sven Schwab IAV 2 Nürnberg, den 21.07.2010 Agenda 1) Idee 2) Projektbestandteile - Software - Hardware 3) Projektdetails - Ablauf - Fehler die auftreten können 4) Quellcode
MehrProgrammierübungen in Assembler
Programmierübungen in Assembler 1. LED Ein-/Ausschalten Verwendet: Ports An Portpin P3.0 ist eine LED angeschlossen. An Portpin P1.0 ist ein Taster angeschlossen. a) Schreiben Sie ein Programm, welches
MehrVorwort Lichteffekte mit Arduino_NEU.indd :00:47
Vorwort 5 Das Lernpaket»Lichteffekte mit Arduino«wurde genauso wie die Arduino Plattform für Künstler, Designer und Bastler entwickelt. Es richtet sich ganz besonders an alle, die möglichst schnell erste
Mehri2c-bus.de ASCII ZEICHEN AUF DEM HYPERTERMINAL Übungsaufgabe RS232 Schnittstelle Dokument NR.: AB-001-U-01
DA Dokument NR.: AB-001-U-01 ACII ZEICHEN AUF DEM HYPERTERMINAL Übungsaufgabe R232 chnittstelle P Bitte denken ie an die Umwelt, bevor ie diese Datei ausdrucken DA ACII Zeichen auf dem Hyperterminal Inhaltsverzeichnis
MehrEinführung in die Programmierung von Mikrocontrollern mit C/C++
Einführung in die Programmierung von Mikrocontrollern mit C/C++ Vorlesung Prof. Dr.-Ing. habil. G.-P. Ostermeyer Rechenleistung/Speicher Systemintegration Grundlagen der Mikrocontrollertechnik (Wiederholung)
MehrUnter Project New µvision Project kann ein neues Projekt angelegt werden.
KURZBESCHREIBUNG ZUM ERSTELLEN EINES PROJEKTES MIT µvision4 NEUES PROJEKT ANLEGEN Unter Project New µvision Project kann ein neues Projekt angelegt werden. Es öffnet sich ein Dialogfenster, in dem der
MehrCode Composer Studio 4.x
Code Composer Studio 4.x Hands-on Session Sebastian Meisner, sebastian.meisner@upb.de Fachgebiet Technische Informatik 1 Inhalt der Hands-on Sesion Präsentation Code Composer Studio (CCS) Aufgaben 2 Einleitung
MehrU2-1 Register beim AVR- C. U2-2 I/O-Ports des AVR- C. 1 Überblick. 2 Makros für Register-Zugriffe. 1 Überblick
U2 4. Übung U2 4. Übung U2-1 Register beim AVR- C U2-1 Register beim AVR-mC Wiederholung: Zugriff auf AVR-Prozessor-Register Wiederholung: I/O-Ports Bitoperationen und Hexadezimalzahlen Überblick: Modulare
MehrBootloader FastBoot von Peter Dannegger
Bootloader FastBoot von Peter Dannegger Anleitung von Karsten Donat www.karstendonat.de/avr Stand: 05.08.2007 1 Was ist ein Bootloader? Der Bootloader ist selbst ein kleines Programm. Es wird beim Start
MehrKurze Einführung in die Programmiersprache C++ und in Root
Kurze Einführung in die Programmiersprache C++ und in Root Statistik, Datenanalyse und Simulation; 31.10.2006 Inhalt 1 Einführung in die Programmiersprache C++ Allgemeines Variablen Funktionen 2 1 Einführung
MehrHardwareaufbau der Mikrocontroller der 51er -Familie
Hardwareaufbau der Mikrocontroller der 51er -Familie Mikrocontroller (51er Familie) Quarz Port Timer A D Serielle Schnittst. CPU ROM RAM Ext. ROM Ext. RAM Programmspeicher (ROM) Datenspeicher (RAM) FFFFh
MehrHardwareaufbau der Mikrocontroller der 51er -Familie
Hardwareaufbau der Mikrocontroller der 51er -Familie Mikrocontroller (51er Familie) Quarz Port Timer A D Serielle Schnittst. CPU ROM RAM Ext. ROM Ext. RAM Programmspeicher (ROM) Datenspeicher (RAM) FFFFh
MehrGrundlagen der Objektorientierung :
Grundlagen der Objektorientierung : Objektorientierung ermöglicht (unter anderem), daß man Software, die von einem selbst, meist aber von Anderen geschrieben ist, komfortabel nochmal verwenden kann. Diese
MehrWintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf Seite 1 von 29
Kapitel 2 Einführung in C++ Seite 1 von 29 C++ Zeichensatz - Buchstaben: a bis z und A bis Z. - Ziffern: 0 bis 9 - Sonderzeichen: ; :,. # + - * / % _ \! < > & ^ ~ ( ) { } [ ]? Seite 2 von 29 Höhere Elemente
MehrZeiger in C und C++ Zeiger in Java und C/C++
1 Zeiger in Java und C/C++ Zeigervariable (kurz: Zeiger, engl.: pointer): eine Variable, die als Wert eine Speicheradresse enthält Java: Zeiger werden implizit für Referenztypen (Klassen und Arrays) verwendet,
MehrDatentypen in C. Informatik Universität Hamburg Proseminar: C-Grundlagen und Konzepte Jan Branitzki
Datentypen in C Informatik Universität Hamburg Proseminar: C-Grundlagen und Konzepte Jan Branitzki 31.05.13 Inhalt 1. Der Aufzählungstyp enum 2. Bit Shifting/Bitweise Operatoren a. Beispiel: Int b. Nutzen
MehrProgrammieren des ESP8266 mit OLED
Willkommen! Und herzlichen Dank für den Kauf unseres AZ-Delivery ESP8266 Mikrocontroller mit integrierten 0.91" OLED Display. Auf den folgenden Seiten gehen wir mit dir gemeinsam die ersten Programmierschritte
Mehr2
TINF Interrupts EDT-Referat Jürgen Schwarzbauer 2ANB 1995/96 Inhalt : Was ist ein Interrupt? Zweck von Interrupts Maskierbare und nicht maskierbare Interrupts Aufruf eines Interrupts Anwendung von Interrupts
MehrKap 9. Bitoperationen und -strukturen
Kap 9. Bitoperationen und -strukturen 9.1 Anwendung von Bits Im Gegensatz zu den üblicherweise Byte-orientierten Daten gibt es auch Bit-Anwendungsbeispiele Statusanzeigen bei Ein-/Ausgabe (Stream-Klassen)
MehrTECHNISCHE HOCHSCHULE NÜRNBERG GEORG SIMON OHM Die Mikroprogrammebene eines Rechners Das Abarbeiten eines Arbeitszyklus eines einzelnen Befehls besteht selbst wieder aus verschiedenen Schritten, z.b. Befehl
MehrArduino Digispark. Ausgabe Copyright by Joy-IT 1
Ausgabe 25.08.2017 Copyright by Joy-IT 1 Index 1. Vorbereitung der Installation 2. Anschluss des Gerätes 3. Programmierung von Pin P5 4. Beispielcode-Übertragung 5. Support Ausgabe 25.08.2017 Copyright
MehrProgrammiersprachen Einführung in C
Programmiersprachen Einführung in C Teil 2: Prof. Dr. Unser erstes C-Programm int main (int argc, char *argv[]) int i; int sum = 0; for (i = 0; i
MehrC++ mit dem Arduino (Uno und Mega2560)
C++ mit dem Arduino (Uno und Mega2560) 1. Toolchain Als toolchain bezeichnet man die Reihe von Software, die nötig ist um den Prozessor zu programmieren, das Ergebnis draufzuladen und dann zu testen. Hier
MehrSprungbefehle und Kontroll-Strukturen
Sprungbefehle und Kontroll-Strukturen Statusregister und Flags Sprungbefehle Kontrollstrukturen Das Status-Register 1 Register-Satz des ATmega128 Universal-Register (8Bit) R0..R15 16 Bit Program counter
MehrC-Programmierkurs Mathematik
Mathematik WS 2018/2019 Dr. Bodo Kalthoff Speicher für Werte Variablen Über Variablennamen ansprechbar Sprechende Namen vergeben! Variablen können Zahlen, Buchstaben oder komplexere Werte enthalten Der
MehrEingaben. Themen heute. Taster. Eingaben Zuweisungen Zeitmessung. Programmieren für Ingenieure Sommer Andreas Zeller, Universität des Saarlandes
Eingaben Programmieren für Ingenieure Sommer 2015 Andreas Zeller, Universität des Saarlandes Themen heute Eingaben Zuweisungen Zeitmessung Taster Wikipedia Ziel Wenn Taste gedrückt, soll LED leuchten Wir
MehrEinführung in C. EDV1-04C-Einführung 1
Einführung in C 1 Helmut Erlenkötter C Programmieren von Anfang an Rowohlt Taschenbuch Verlag ISBN 3-4993 499-60074-9 19,90 DM http://www.erlenkoetter.de Walter Herglotz Das Einsteigerseminar C++ bhv Verlags
MehrProgrammierung von ATMEL AVR Mikroprozessoren am Beispiel des ATtiny13. Teil 8: gavrasmw und weitere Beispiele
Programmierung von ATMEL AVR Mikroprozessoren am Beispiel des ATtiny13 Eine Einführung in Aufbau, Funktionsweise, Programmierung und Nutzen von Mikroprozessoren Teil 8: gavrasmw und weitere Beispiele gavrasmw
MehrEinführung Sprachfeatures Hinweise, Tipps und Styleguide Informationen. Einführung in C. Patrick Schulz
Patrick Schulz patrick.schulz@paec-media.de 29.04.2013 1 Einführung Einführung 2 3 4 Quellen 1 Einführung Einführung 2 3 4 Quellen Hello World in Java Einführung 1 public class hello_ world 2 { 3 public
MehrC++ - Einführung in die Programmiersprache Header-Dateien und Funktionen. Leibniz Universität IT Services Anja Aue
C++ - Einführung in die Programmiersprache Header-Dateien und Funktionen Leibniz Universität IT Services Anja Aue Modularisierung Logische Gliederung von Programmteilen mit Hilfe von Namensräumen. Aufteilung
MehrCCS Compiler Tutorial mit Beispielen
CCS Compiler Tutorial mit Beispielen Mit diesem Tutorial werden Sie den CCS Compiler kennenlernen, um mit ihm Projekte selbstständig erstellen zu können. Es werden zugleich die Programmierung und die Grundlagen
MehrProgrammierkurs C++ Variablen und Datentypen
Programmierkurs C++ Variablen und Datentypen Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer #2 Überblick Welche Datentypen gibt es in
MehrWorkshop: ASURO-Programmieren in C
Workshop: ASURO-Programmieren in C / Teil 1: Theorie Workshop: ASURO-Programmieren in C Teil 1: Theorie Markus Becker http://mbecker-tech.de Bürgernetz Ingolstadt e. V. / ByteWerk Stand: 1. Mai 2010 Copyright:
MehrZeiger vom Typ (void *) sind am besten für Zeigerarithmetik geeignet, da sie kompatibel zu jedem Zeigertyp sind.
Aufgabe 1: (18 Punkte) Bei den Multiple-Choice-Fragen ist jeweils nur eine richtige Antwort eindeutig anzukreuzen. Auf die richtige Antwort gibt es die angegebene Punktzahl. Wollen Sie eine Multiple-Choice-Antwort
MehrU3-1 Register beim AVR-μC. U3 3. Übung. U3-2 I/O-Ports des AVR-μC. 1 Überblick. 2 Makros für Register-Zugriffe. 1 Überblick
U3 3. Übung U3 3. Übung U3-1 Register beim AVR-μC U3-1 Register beim AVR-mC Wiederholung: Zugriff auf AVR-Prozessor-Register Wiederholung: I/O-Ports Zahlensysteme Überblick: Modulare Softwareentwicklung
MehrWiederholung: Zugriff auf AVR-Prozessor-Register. Aufgabe 3: 7seg-Modul der SPiCboard-Bibliothek
U3 3. Übung U3 3. Übung Wiederholung: Zugriff auf AVR-Prozessor-Register Wiederholung: I/O-Ports Zahlensysteme Überblick: Modulare Softwareentwicklung Aufgabe 3: 7seg-Modul der SPiCboard-Bibliothek U3.1
Mehr