Ampelschaltung mit dem Raspberry Pi 3 Model B. Von Stefan Ossenbrink & Marcel Gebing
|
|
- Käte Bayer
- vor 5 Jahren
- Abrufe
Transkript
1 Ampelschaltung mit dem Raspberry Pi 3 Model B Von Stefan Ossenbrink & Marcel Gebing
2 Inhaltsverzeichnis Einführung Übersicht Layout Praktikum. Aufgabe Wiederholung Zustandsdiagramm. WiringPi Klassendiagram. Design-Pattern Aufgabenbeschreibung Bearbeitungszeit Zusammenfassung/Vorstellung Praktikum 2. Aufgabe Zustandsdiagramm 2. Aufgabenbeschreibung Bearbeitungszeit Zusammenfassung/Vorstellung Praktikum 3. Aufgabe Zustandsdiagramm 3. Klassendiagram 2. Design-Pattern Aufgabenbeschreibung Bearbeitungszeit Zusammenfassung/Vorstellung
3 Übersicht Unser heutiges Schaltverhalten in den Aufgaben Straßenverkehr Fußgängerüberwege
4 Einführung Ampelschaltung Unsere Idee Nr Pin GPIO Wire
5 Einführung Alternativ
6 Mealy-Automat Mealy-Automat ist ein ereignisorientierte Automat d.h. er reagiert auf eine Veränderung der Eingangsvariable X Beschreibung A = (X,Y,Z,, ) Ausgang Y= (X, Zn)
7 Moore-Automat Moore-Automat, Der Moore-Automat ist ein zustandsorientierter Automat d.h. er reagiert nur auf eine Veränderung des Zustands Z Beschreibung A = (X,Y,Z,, ) Ausgang = (Zn)
8 Medwedjew-Automat Medwedjew-Automat, ist ein zustandsorientierter Automat d.h. er reagiert nur auf eine Veränderung des Zustands Z Beschreibung A = (X,Y,Z, ) Ausgang = Zn
9 Zustandsdiagramm. Z Z Z2 Z3
10 Zustandsfolgetabelle. Nr Zn Code Zn+ Code grün gelb rot PHASE_RR PHASE_RYR PHASE_RYR PHASE_GR 2 PHASE_GR PHASE_YR 3 PHASE_YR PHASE_RR
11 Wiringpi Erste Schritte nachdem die Bibliothek inkludiert wurde void wiringpisetup(void); void pinmode(int pin, int mode); mode -> OUTPUT/INPUT/PWM_OUTPUT Achtung nur spezielle Pins funktionieren mit PWM z.b. WiringPI-Pin -> GPIO 8 void digitalwrite(int pin, int value); Initialisiert das WiringSystem und stellt einen passendes Nummerierungsschema ein Value -> HIGH,LOW int digitalread (int pin); Rückgabewert HIGH oder LOW, also oder
12 Klassendiagramm.
13 DirectionState #define DirectionState_METHODES \ void (*onenter)(lightmanager lm,directionstate this); #define DirectionState_ATTRIBUTES \ LightSetting ls; \ int timeout; \ char *name; \ DirectionState next; DEFINE_BASE_TYPE(DirectionState) DirectionState newdirectionstate_name_lightsetting_timeout(char* name, LightSetting ls, int timeout); #endif
14 Design-Pattern State Context State StateX State2 onenter() onenter() Client State3
15 Generierung der States DirectionState generatedirectionstatemachine() {????? } int main(int argc, char* argv[]) { DirectionState directionstate = generatedirectionstatemachine(); LightManager lm = newlightmanager_void(); registerlights(lm);?????? } return ; }
16 LightManager typedef struct listelement_key_ls{ LightSetting trigger; Led value; } *Listelement; #define LightManager_METHODES \ int (*registratelight)(lightmanager lm,led l, LightSetting bits); \ void (*setlight) (LightManager lm,lightsetting light); #define LightManager_ATTRIBUTES \ Listelement ledset[max_leds_in_set];..
17 Aufgabenbeschreibung. Entwickeln sie zu den oben gezeigtem Zustandsdiagramm eine passende Software Vervollständigen sie zunächst die Led.c, hier fehlen wichtige wiringpi-befehle Anschließend verwenden sie die gerade fertig gestellte Klasse Led-> initialisieren sie die benötigten Led s in der registerlights-methode Die erstellten Led s müssen nun im LightManager registiert werden, sodass dieser sie verwenden kann lm->clazz.. Zum Schluss erstellen sie die dstates in der Methode generatedirectionstatemachine() und implementieren deren Verwaltung in der main Routine.
18 Lösungen
19 Praktikum 2. Aufgabe Erweitern sie ihr aktuelles Projekt Da jede Ampel nicht nur eine Seite besitzt, erweitern wir unser System um eine weiter wichtige Komponente. genau!! um eine Ampel
20 Zustandsdiagramm 2. Ampel (A) Z Z Z2 Z3 Z7 Z6 Z5 Z4 Ampel 2 (B)
21 Zustandsfolgetabelle 2. Nr Zn Code Zn+ Code grün gelb rot grün2 gelb2 rot2 PHASE_RR PHASE_RYR PHASE_RYR PHASE_GR 2 PHASE_GR PHASE_YR 3 PHASE_YR PHASE_RR 4 PHASE_RR PHASE_RRY 5 PHASE_RRY PHASE_RG 6 PHASE_RG PHASE_RY 7 PHASE_RY PHASE_RR
22 Aufgabenbeschreibung 2. Entwickeln sie zu den oben gezeigtem Zustandsdiagramm eine passende Software Erweitern sie ihre TrafficLight.c-Methoden, sodass der Verkehr richtig geregelt werden kann
23 Lösungen
24 Praktikum 3. Aufgabe Nun wird es etwas komplizierter Da es im Straßenverkehr nicht nur Autofahrer gibt, muss unsere Lösung noch überarbeitet werden. Da andere Verkehrsteilnehmer keine Straße überqueren können blockieren sie (siehe Bild) Ein großer Vorschritt wäre hierbei, dass einbringen einer??? genau!! noch einer Ampel
25 Zustandsdiagramm 3. Ampel Z Z Z2 Z7 Z3 Z6 Z5 Z4 Ampel 3 Ampel 2
26 Klassendiagram 2.
27 Design-Pattern: Observer Das Observer-Muster ermöglicht einem oder mehreren Objekten, automatisch auf die Zustandsänderung eines bestimmten Objekts zu reagieren, um den eigenen Zustand anzupassen.
28 ObserveableSwitch #define ObserveableSwitch_METHODES \ int (*start)(observeableswitch this); #define ObserveableSwitch_ATTRIBUTES \ int active; \ int port;\ Feedback_struct* feedback; \ pthread_t threadid; DEFINE_BASE_TYPE(ObserveableSwitch) ObserveableSwitch newobserveableswitch_port_callback(int port, Feedback_struct* feedback); #endif /* OBSERVEABLESWITCH_H_ */
29 GreenphaseState #define GreenphaseState_METHODES #define GreenphaseState_ATTRIBUTES \ Feedback_struct feedback; \ LightSetting additionallight; DEFINE_EXTENDED_TYPE(GreenphaseState, DirectionState) GreenphaseState newgreenphasestate_name_lightsetting_timeout_additionallight( char* name, LightSetting ls, int timeout, LightSetting additionallight); #endif
30 Aufgabenstellung Entwickeln sie zu den oben gezeigtem Zustandsdiagramm eine passende Software Registrieren sie zunächst wie in den voran gegangenen Praktikum die neuen Led s Verändern sie die generatedirectionstatemachine() Methode so, dass sie die neuen States implementieren und die passenden Taster erzeugen und deren threads starten Da die Klasse DirectionState von der Klasse GreenphaseState überladen wird, müsste hier noch die Funktion onenter implementiert werden. Diese Funktion muss als Erweiterung den feedback auslesen und entsprechned die Led s schalten.
31 Lösung
32 Danke schön für ihre Aufmerksamkeit
Zustandsautomaten in Embedded Software Beispiel Ampelschaltung. Michael Leuker, Stanislaw Ustinow
Zustandsautomaten in Embedded Software Beispiel Ampelschaltung Michael Leuker, Stanislaw Ustinow Inhaltsübersicht Einführung Zustandsautomaten im Alltag Vorteile von eingebetteten Systemen Allgemeines
MehrSystem-Programmierung 10: Weitere Arten von I/O. CC BY-SA, Thomas Amberg, FHNW (soweit nicht anders vermerkt)
System-Programmierung 10: Weitere Arten von I/O CC BY-SA, Thomas Amberg, FHNW (soweit nicht anders vermerkt) Ablauf heute ⅓ Vorlesung, ⅔ Hands-on, Feedback. Slides, Code & Hands-on: tmb.gr/syspr-10 Weitere
MehrObjektbasierte Entwicklung
Embedded Software Objektbasierte Entwicklung Objektorientierung in C? Prof. Dr. Nikolaus Wulff Objektbasiert entwickeln Ohne C++ wird meist C im alten Stil programmiert. => Ein endlose while-schleife mit
MehrUML / Fujaba. Generierung von Java-Quellcode aus UML-Diagrammen. Marcel Friedrich
UML / Fujaba Generierung von Java-Quellcode aus UML-Diagrammen Marcel Friedrich Agenda Einleitung Struktur Verhalten Klassendiagramme Storydiagramme Statecharts Action methods 2 Thema Codegenerierung mit
MehrÜbungen zu Systemnahe Programmierung in C (SPiC)
Übungen zu Systemnahe Programmierung in C (SPiC) Moritz Strübe, Rainer Müller (Lehrstuhl Informatik 4) Sommersemester 2014 Inhalt Aufgabe4 Led Modul Wiederholung Konfiguration der Pins Hinweise zur Aufgabe
MehrRaspberry Pi meets Pocket Code. Tutorial: Ampelschaltung
Raspberry Pi meets Pocket Code Tutorial: Ampelschaltung Dieses Material steht unter der Creative-Commons-Lizenz Namensnennung 4.0 International. Um eine Kopie dieser Lizenz zu sehen, besuchen sie http://creativecommons.org/licenses/by/4.0/.
MehrSteuern und Messen mit Raspberry Pi
24 C 36 % 24 C Thanks to Openclipart, Fritzing, elinux.org, Liz Grazer Linuxtage 2014 (GLT14) Raspberry Pi Raspberry Pi ist ein kreditkartengroßer EinplatinenComputer, der von der Raspberry Pi Foundation
MehrEntfernungsmesser. für den Raspberry Pi. Tim Riddermann / Nils Wortmann
Entfernungsmesser für den Raspberry Pi Tim Riddermann / Nils Wortmann Inhalt Einleitung Prinzip Hardware MCP3202 Software Anhang Praktikum 2 Einführung Erstellung eines Entfernungsmessers Sobald ein Objekt
MehrDie Temperaturmessung mit dem Sensor LM75. Andreas Heller & Eduard Auer
Die Temperaturmessung 14-14 mit dem Sensor LM75 Andreas Heller & Eduard Auer 2 Andreas Heller & Eduard Auer Unser Ablauf Einleitung Fakten über LM 75 I²C - Bussystem Pin Belegung des Sensors Adressen Programmierung
MehrInformatik 1 ( ) D-MAVT F2010. Letzte Übungsstunde. Yves Brise Übungsstunde 12
Informatik 1 (251-0832-00) D-MAVT F2010 Letzte Übungsstunde Evaluation S3 Frage zu Assistierenden INFK Anz. Der/die Assistent/in war fachlich k.ä. 0 kompetent 1 0 2 0 3 0 4 23% 3 5 77% 10 MW = 4.8 SA =
MehrMotorsteuerung. Embedded Software Praktikum 4. Tim Hölzemann Embedded Engineering
Motorsteuerung Embedded Software Praktikum 4 Tim Hölzemann Embedded Engineering Hüfferstraße 27 fon +49 (0)251.83 64-050 th403054@fh-muenster.de D-48149 Münster fax +49 (0)251.83 64-060 www.fh-muenster.de
MehrPark Distance Control. Daniel Heesch, Sebastian Staffa
Park Distance Control Daniel Heesch, Sebastian Staffa Aufgabenstellung Entwicklung eines PDC-Systems für unser neuestes Modell Genutzte Hardware bereits festgelegt und Platine designed Komponenten: 2 Sub-Zentimeter
MehrEinführung in die Programmiersprache C
Einführung in die Programmiersprache C 3 Typen und Speicherverwaltung Alexander Sczyrba Robert Homann Georg Sauthoff Universität Bielefeld, Technische Fakultät Literatur (2) Kernighan and Ritchie, The
MehrSoftware Entwicklung 1. Fallstudie: Arithmetische Ausdrücke. Rekursive Klassen. Überblick. Annette Bieniusa / Arnd Poetzsch-Heffter
Software Entwicklung 1 Annette Bieniusa / Arnd Poetzsch-Heffter Fallstudie: Arithmetische Ausdrücke AG Softech FB Informatik TU Kaiserslautern Bieniusa/Poetzsch-Heffter Software Entwicklung 1 2/ 33 Überblick
MehrLaborübung 4. Zustandsautomaten (Finite State Machines)
Laborübung 4 Zustandsautomaten (Finite State Machines) Für den Entwurf und die Beschreibung von digitalen Systemen bilden Zustandsautomaten (Finite State Maschines; FSMs) eine wesentliche Grundlage. Mit
Mehr4. Modellieren und Diagrammarten
4. Modellieren und Diagrammarten Zur Entwicklung einer Software ist eine strukturierte Planung notwendig. Erst auf der Grundlage eines Modells (z.b. geeignete Klassendiagramme) kann eine Implementierung
MehrProgrammierkurs C/C++
Blockkurs: "Einführung in C/C++" Programmierkurs C/C++ Donnerstag Sandro Andreotti andreott@inf.fu-berlin.de WS 2008/09 1 Structs Blockkurs: "Einführung in C/C++" 2 Structs sind Bündel von Variablen (unter
MehrSoftware Entwicklung 1
Software Entwicklung 1 Annette Bieniusa / Arnd Poetzsch-Heffter AG Softech FB Informatik TU Kaiserslautern Fallstudie: Arithmetische Ausdrücke Bieniusa/Poetzsch-Heffter Software Entwicklung 1 2/ 33 Überblick
MehrStarten Sie die Arduino IDE und geben Sie den folgenden Programmcode ein:
Blinken Starten Sie die Arduino IDE und geben Sie den folgenden Programmcode ein: // Projekt 1 - LED Blinker int ledpin = 13; void setup() pinmode(ledpin, OUTPUT); void loop() digitalwrite(ledpin, HIGH);
MehrArduino, IR Fernbedienung dekodieren
Arduino, IR Fernbedienung dekodieren 9.10.2015 Im Zuge meiner weiteren Arduino Studien bin ich auf die Frage gestoßen, wie kann man Befehle in den Arduino transportieren? Aus einem Youtube Beitrag über
MehrS7ComRaspi. Schönberger Thomas 2016 Schönberger Thomas
Schönberger Thomas info@schoenbergerthomas.jimdo.com 2016 Schönberger Thomas Inhalt 1 Allgemein... 2 2 Voraussetzungen... 2 3 Lieferumfang... 2 4 S7Com... 3 4.1 S7Com Klasse... 3 4.2 Konstruktor S7Com...
MehrInhalt. Übungen zu Systemnahe Programmierung in C (SPiC) Inhalt. Globale Variablen
Übungen zu Systemnahe Programmierung in C (SPiC) Peter Wägemann, Heiko Janker, Moritz Strübe, Rainer Müller () Wintersemester 24/25 volatile Verwendung Module Hinweise zur Aufgabe Übungen zu SPiC (WS 24/5)
MehrÜbungspaket 23 Mehrdimensionale Arrays
Übungspaket 23 Mehrdimensionale Arrays Übungsziele: Skript: Deklaration und Verwendung mehrdimensionaler Arrays Kapitel: 49 Semester: Wintersemester 2016/17 Betreuer: Kevin, Matthias, Thomas und Ralf Synopsis:
MehrPThreads. Pthreads. Jeder Hersteller hatte eine eigene Implementierung von Threads oder light weight processes
PThreads Prozesse und Threads Ein Unix-Prozess hat IDs (process,user,group) Umgebungsvariablen Verzeichnis Programmcode Register, Stack, Heap Dateideskriptoren, Signale message queues, pipes, shared memory
MehrPrüfung aus PROGRAMMIEREN 3 (SS 2003)
Fachhochschule München Bereich Datentechnik Fachbereich Elektrotechnik und Informationstechnik R. Thomas Prüfung aus PROGRAMMIEREN 3 (SS 2003) Arbeitszeit 90 Minuten 16.Juli 2003 Beliebige eigene Unterlagen
MehrEin kleiner Blick auf die generische Programmierung
TgZero Technik.Blosbasis.net June 3, 2013 1 Inhaltsverzeichnis 1 Vorwort 3 2 Ein kleines Beispiel 3 3 Templates 3 4 Verschiedene Datentypen 4 5 Variadic Templates 5 6 Unterschied zwischen den Programmiersprachen
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
Mehranaloge Ein- und Ausgänge
2016/07/17 13:39 1/5 analoge Ein- und Ausgänge analoge Ein- und Ausgänge Neben den digitalen Leitungen bietet der Arduino mehrere analoge Ein- und Ausgänge. analoge Ausgänge Die Ausgänge sind mit PWM bezeichnet.
MehrTeilklausur I in Informatik TEL09GR2 Lewandowski
Teilklausur I in Informatik TEL09GR2 Lewandowski Es sind insgesamt 84 Punkte zu erreichen (80 Punkte werden als 100% gewertet) (Jeder Punkt entspricht einer Bearbeitungszeit von etwa 1 Minute) Aufgabe
MehrBetriebssysteme Übung 2. Tutorium System Calls & Multiprogramming
Betriebssysteme Übung 2. Tutorium System Calls & Multiprogramming Task Wiederholung 1 System SysCalls (1) Wozu? Sicherheit Stabilität Erfordert verschiedene modes of execution: user mode privileged mode
MehrFakultät Angewandte Informatik Lehrprofessur für Informatik 23.01.2012
WS 2011/2012 Fakultät Angewandte Informatik Lehrprofessur für Informatik 23.01.2012 Prof. Dr. Robert Lorenz Musterlösung zur Vorlesung Informatik I, Extrablatt zu komplexen Datenstrukturen Aufgabe 45 **
MehrProgrammiertechnik. Teil 4. C++ Funktionen: Prototypen Overloading Parameter. C++ Funktionen: Eigenschaften
Programmiertechnik Teil 4 C++ Funktionen: Prototypen Overloading Parameter C++ Funktionen: Eigenschaften Funktionen (Unterprogramme, Prozeduren) fassen Folgen von Anweisungen zusammen, die immer wieder
MehrÜbungen zu Systemnahe Programmierung in C (SPiC)
Übungen zu Systemnahe Programmierung in C (SPiC) Sebastian Maier (Lehrstuhl Informatik 4) Übung 4 Sommersemester 2016 Inhalt Module Schnittstellenbeschreibung Ablauf vom Quellcode zum laufenden Programm
MehrEinführung Arduino - Aufbau
Einführung Arduino Einführung Arduino - Aufbau Einführung Arduino - Breadboard (http://www.circuit-help.com.ph/wpcontent/uploads/2014/02/imgp5507-600x600.jpg) Einführung Arduino - Breadboard (https://images.duckduckgo.com/iu/?u=http%3a%2f
MehrBei jedem Arduino-Projekt muss man ein Grundgerüst "bauen". Das sieht dann so aus:
Arduino 1/5 Was ist die Syntax? Die Syntax ist die Rechtschreibung. Ganz wichtig ist, dass (fast) jeder Befehl mit einem Semikolon (;) beendet wird. Bei Codeblöcken müssen immer geschweifte Klamern ({)
MehrInhalt. Übungen zu Systemnahe Programmierung in C (SPiC) Schnittstellenbeschreibung. Inhalt
Übungen zu Systemnahe Programmierung in C (SPiC) Sebastian Maier () Übung 4 Schnittstellenbeschreibung Ablauf vom Quellcode zum laufenden Programm Initialisierung eines Moduls Active-high & Active-low
MehrAmpelsteuerung Merkblatt 2 Wie wird der Arduino programmiert?
1 Übersicht Für die Programmierung steht ein Programm zur Verfügung. Hier kann der Quelltext geschrieben, überprüft, kompiliert und anschließend auf den Arduino geladen werden. Wenn ihr das Programm startet,
MehrU5-2 Register beim AVR-µC
U5 4. Übungsaufgabe U5 4. Übungsaufgabe U5-2 Register beim AVR-µC U5-2 Register beim AVR-mC Grundlegendes zur Übung mit dem AVR-µC 1 Überblick Register Beim AVR µc sind die Register: I/O Ports Interrupts
Mehr~10 RESET 3.3V 5V GND GND VIN
Abgabe Dieses Übungsblatt ist bis Freitag, 09.05. um 12:00 per E-Mail an den eigenen Tutoren abzugeben. Bennennung beispielsweise $Matrikelnummer_Abgabe_$Blattnummer.$Format. 1 Automatische Ampelsteuerung
MehrDas aktuelle Objekt der Klasse AMPEL gibt an die Objekte gruen, gelb und rot der Klasse LAMPE die Botschaft, die Methode aus() aufzurufen.
Übung 1 Ampel Öffne das BlueJ-Projekt Ampel_Vorlage und öffne die Klasse AMPEL. a) Erzeuge ein Objekt von AMPEL und mach dich mithilfe des Objektinspektors und dem Quelltext über die Funktionsweise kundig.
MehrProzeduren vs. Funktionen
Prozeduren vs. Funktionen Mit der Formalisierung wird auch der Unterschied zwischen Prozeduren und Funktionen noch einmal klar. Der Aufruf beider Varianten bewirkt zunächst das Gleiche: die Eingabevariablen
MehrId PIO1003: Anschaltbeispiele einer Ausgangsleitung aus der PIO II
FAQ FAQ Frequently asked Questions Id PIO1003: Anschaltbeispiele einer sleitung aus der Betroffene Produkte: PIO24II, PIO48II Problembeschreibung Im folgenden werden einige Beispiele aufgeführt, wie man
MehrProgrammieren in C. Rekursive Strukturen. Prof. Dr. Nikolaus Wulff
Programmieren in C Rekursive Strukturen Prof. Dr. Nikolaus Wulff Rekursive Strukturen Häufig müssen effizient Mengen von Daten oder Objekten im Speicher verwaltet werden. Meist werden für diese Mengen
MehrWS 2017/18 Viel Erfolg!!
Seite 1 von 12 Hochschule München FK03 Komponenten und Programmierung, 90 Minuten Prof. Dr.-Ing. T. Küpper Zugelassene Hilfsmittel: alle eigenen, Taschenrechner WS 2017/18 Viel Erfolg!! Matr.-Nr.: Hörsaal:
MehrInteraktive Simulationen Lektion 1/3: Event-Driven Design und Signals
MÜNSTER Interaktive Simulationen Lektion 1/3: Event-Driven Design und Signals Prof. Dr. Christian Engwer & Andreas Buhr 16. April 2014 MÜNSTER Interaktive Simulationen 2 /22 Normales C++ Programm Programmstruktur
MehrProgrammierkurs. SoSe Markus Geveler Inst. f. Applied Mathematics, TU Dortmund.
Programmierkurs SoSe 2013 Markus Geveler Inst. f. Applied Mathematics, TU Dortmund markus.geveler@math.tu-dortmund.de Lesson 5 Was machen wir heute hier? weiter mit Objektorientierter Programmierung viel
MehrBachelorprüfung: Programmieren I
Bachelorprüfung: Programmieren I WS09/10 Erlaubte Hilfsmittel: keine Lösung ist auf den Klausurbögen anzufertigen. (eventuell Rückseiten nehmen) Bitte legen Sie einen Lichtbildausweis und den Studentenausweis
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
Mehr14 Abstrakte Klassen, finale Klassen, Interfaces
Eine abstrakte Objekt-Methode ist eine Methode, für die keine Implementierung bereit gestellt wird. Eine Klasse, die abstrakte Objekt-Methoden enthält, heißt ebenfalls abstrakt. Für eine abstrakte Klasse
Mehr8: IIC-Bussystem / PID
8: IIC-Bussystem / PID Sie verstehen das IIC-Busprotokoll und können das IIC-Controller Modul des MC9S08JM60 zur Kommunikation mit anderen IIC-Busteilnehmern einsetzen. 1. Geschwindigkeitsmessung im MC-Car
MehrVorbereitende Aufgaben
Praktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2017/18 Fakultät für Informatik Lehrstuhl 14 Lars Hildebrand Übungsblatt 4 Besprechung: 13. 17.11.2017 (KW 46) Vorbereitende
MehrTeil I Debuggen mit gdb
Teil I Debuggen mit gdb Wer kennt das nicht? $./a.out Segmentation fault Was tun dagegen? printf()s in den Code einfügen? Besser (und professioneller): Einen Debugger verwenden Wer kennt das nicht? $./a.out
Mehr14 Abstrakte Klassen, finale Klassen, Interfaces. Auswertung von Ausdrücken. Beispiel. Abstrakte Methoden und Klassen
Auswertung von Ausdrücken Eine abstrakte Objekt-Methode ist eine Methode, für die keine Implementierung bereit gestellt wird. Eine Klasse, die abstrakte Objekt-Methoden enthält, heißt ebenfalls abstrakt.
Mehrsaarland Prof. Dr. Andreas Zeller Verantw. Tutor: Florian Groß Übungsblatt 4
Programmieren für Ingenieure Abgabe Dieses Übungsblatt ist bis Freitag, 23.05. um 12:00 Uhr per Email an den eigenen Tutoren abzugeben. Benennen Sie die Abgabe bitte eindeutig: Matrikelnummer _Abgabe_Blattnummer.Format.
Mehr14 Abstrakte Klassen, finale Klassen, Interfaces
Eine abstrakte Objekt-Methode ist eine Methode, für die keine Implementierung bereit gestellt wird. Eine Klasse, die abstrakte Objekt-Methoden enthält, heißt ebenfalls abstrakt. Für eine abstrakte Klasse
Mehrmyavr Klassendiagramm der UML mit SiSy-AVR Schnelleinstieg für myavr Board MK3
myavr Klassendiagramm der UML mit SiSy-AVR Schnelleinstieg für myavr Board MK3 Zielstellung Dieser Schnelleinstieg demonstriert das Arbeiten mit dem Klassendiagramm in SiSy AVR mit der Bibliothek für das
MehrDas Zustandsmuster Eine Einführung
Das Zustandsmuster Eine Einführung Universität Hamburg 25. August 2010 Organisatorisches vorweg Diese Folien sind unter CC-BY-SA 3.0 freigegeben. Alle Illustrationen, soweit sie nicht von mir erstellt
MehrTestklausur 2 zur Vorlesung. Modellierung und Programmierung I. Dr. Monika Meiler Zeit: 60 Minuten
Matrikelnummer: Punkte: Testklausur 2 zur Vorlesung Modellierung und Programmierung I Dr. Monika Meiler Zeit: 60 Minuten Bemerkungen: Jedes Blatt ist mit der Matrikelnummer zu versehen. Jede Aufgabe ist
MehrHTWK Leipzig Fakultät EIT. Praktikum Schaltungstechnik. Versuch PLD. Anleitung zum. Bedienen der Entwurfssoftware. StateCAD.
Versuch PLD Anleitung zum Bedienen der Entwurfssoftware StateCAD am Beispiel einer Ampelsteuerung Prof. Dr. W. Reinhold, HTWK Leipzig 01.06.16 1 Inhaltsverzeichnis 1 STATECAD... 2 2 STATEBENCH... 15 1
MehrAnsteuerung eines LCD-Screens
Ansteuerung eines LCD-Screens Marcel Meinersen 4. Mai 2013 Marcel Meinersen Ansteuerung eines LCD-Screens 4. Mai 2013 1 / 27 Inhaltsverzeichnis 1 Allgemeines Was ist ein LCD-Screen? LCD 162C LED Marcel
MehrJava Übung. Übung Mai Universität Duisburg-Essen Kommedia, Übung EinPro SS06, Einführung in Java - Übung. Werner Gaulke.
Java Übung Übung 5 Universität Duisburg-Essen Kommedia, Übung EinPro SS06, 9. Mai 2006 (UniDUE) 9. Mai 2006 1 / 20 Beispiel Anforderungen: Klasse Mensch mit Attributen: Name, Alter, Laune, Geschlecht.
MehrProjektarbeit Java. 4-Gewinnt. Berner Fachhochschule. 2004, Labor für Technische Informatik
Berner Fachhochschule Hochschule für Technik und Informatik, HTI Fachbereich Elektro- und Informatik Labor für technische Informatik Projektarbeit Java 4-Gewinnt 2004, Labor für Technische Informatik Dateiname:
MehrWas so passieren wird:
Arduino Einführung Arduino Einführung Was so passieren wird: Was so passieren wird: Arduino Überblick Was so passieren wird: Arduino Überblick Die Taschenlampe Was so passieren wird: Arduino Überblick
MehrPraxis der Programmierung
Dynamische Datentypen Institut für Informatik und Computational Science Universität Potsdam Henning Bordihn Einige Folien gehen auf A. Terzibaschian zurück. 1 Dynamische Datentypen 2 Dynamische Datentypen
MehrProgrammiersprache 1 (C++) Prof. Dr. Stefan Enderle NTA Isny
Programmiersprache 1 (C++) Prof. Dr. Stefan Enderle NTA Isny 7. Funktionen Einleitung Nach dem Prinzip Divide and Conquer bietet es sich an, größere Aufgaben in kleinere Teile zu unterteilen. Anweisungsblöcke,
MehrHandbuch für die Erweiterbarkeit
Handbuch für die Erweiterbarkeit Inhalt Pakete für die Erweiterbarkeit... 2 Actions... 2 Items... 2 Itemset... 2 Die UseCaseNewAction... 3 Eigene Shapes... 4 Der Shape Container... 5 User Objects... 6
MehrÜberblick. R.Grossmann / P. Sobe 1
Überblick 1. Einführung C++ / Entwicklung/ Sprachfamilie 2. Nicht objektorientierte Erweiterungen von C 3. Grundlagen des Typkonzepts von C++ 4. Ziele der Objektorientierung 5. Objekt und Klasse, Elementfunktionen
MehrKontrollfragen Mikrocontroller Programmiersprache C H1203 Felix Rohrer
Block 1 1. Welcher Wert hat w? int w = 034; 28 (Dezimal) 034 wird als Octal interpretiert 34oct = 28dec 2. Wie lauten die Ergebnisse? unsigned int a = 3, b = 5, c = 7; unsigned int x, y, z; x = a == 3;
MehrSmartMeter. Praktikum Embedded Software. 09/01/2017 Mauricio Gómez 1
SmartMeter Praktikum Embedded Software 09/01/2017 Mauricio Gómez 1 Inhat Stromzähler EasyMeter Optische Schnittstelle UART wiringserial 09/01/2017 Mauricio Gómez 2 Stromzähler Was ist ein Stromzähler?
MehrParallele und funktionale Programmierung Wintersemester 2013/ Übung Abgabe bis , 16:00 Uhr
. Übung Abgabe bis 08.11.013, 16:00 Uhr Aufgabe.1: Erreichbarkeitsgraph Gegeben sei folgendes paralleles Petri-Netz für eine einfache Fußgängerampelschaltung: a) Zeichnen Sie den vollständigen Erreichbarkeitsgraphen
MehrKlausur: Programiermethoden und Techniken
Klausur: Programiermethoden und Techniken WS12/13 Erlaubte Hilfsmittel: keine Lösung ist auf den Klausurbögen anzufertigen. (eventuell Rückseiten nehmen) Bitte legen Sie den Studentenausweis auf den Tisch.
MehrBeziehungen zwischen Objekten
M. Jakob Gymnasium Pegnitz 10. Dezember 2014 Inhaltsverzeichnis 3 / 15 Beispiel Stadt und Land Objekte einer Klasse (hier LAND) können als Attribute Objekte einer anderen Klasse (hier hauptstadt der Klasse
MehrMikrocontrollerplatine vorbereiten
Mikrocontrollerplatine vorbereiten Aufgabe B1 Verbinden Sie einen Tastschalter mit dem Anschluss PD2 und eine Leuchtdiode mit dem Anschluss PD6 (Vorwiderstand nicht vergessen!). Teil B Timer 1 Mikrocontrollerplatine
MehrAlgorithmen und Datenstrukturen Sommersemester Übung Abgabe bis , 10:00 Uhr
4. Übung Abgabe bis 24.05.2010, 10:00 Uhr Aufgabe 4.1: Referenzen Geben Sie Ihre Lösung als Referenzen.pdf ab. 16 Punkte a) Führen Sie einen Schreibtischlauf des folgenden Java-Programms durch. Es werden
MehrTeil 1: Logik 1e: Zustandsautomaten
Teil 1: Logik 1e: Zustandsautomaten Synchroner Zähler als Zustandsautomat Betrachte Zählerstand als Zustand Übergänge zwischen 0,1,2,3 ohne externe Randbedingungen 0 3 1 2 Zustandsautomat (1) Zustandsspeicher
Mehr7 Funktionen. 7.1 Definition. Prototyp-Syntax: {Speicherklasse} {Typ} Name ({formale Parameter});
S. d. I.: Programieren in C Folie 7-1 7 Funktionen 7.1 Definition Prototyp-Syntax: Speicherklasse Typ Name (formale Parameter); der Funktions-Prototyp deklariert eine Funktion, d.h. er enthält noch nicht
MehrStudiengang Maschinenbau, Schwerpunkt Mechatronik (früher: Automatisierungstechnik) Seite 1 von 8
Studiengang Maschinenbau, Schwerpunkt Mechatronik (früher: Automatisierungstechnik) Seite 1 von 8 Hochschule München Fakultät 03 Zugelassene Hilfsmittel: alle eigenen, Taschenrechner Viel Erfolg!! Komponenten
MehrVorlesungsprüfung Programmiersprache 1
Vorlesungsprüfung Programmiersprache 1 Termin der Prüfung: 1) Di 20.03.2018 16:15 17:00 HSB 3 2) Di 15.05.2018 16:15 17:00 HSB 3 3) Di 12.06.2018 16:15 17:00 HSB 3 Stoffgebiete: 1) Ganzzahltypen: char,
MehrHeimautomation unter Linux mit pvbrowser und C-CONTROL Station
Heimautomation unter Linux mit pvbrowser und C-CONTROL Station Einleitung pvbrowser ist eine Prozessvisualisierung, die Open Source (GPL Lizenz) ist und unter http://pvbrowser.org heruntergeladen werden
MehrLaborübung 2. Teil 1: Latches, Flipflops, Counter. Abbildung 1: Schaltkreis eines Gated D-Latch
Laborübung 2 Teil 1: Latches, Flipflops, Counter A 1 Abbildung 1 zeigt den Schaltkreis eines gated D-Latches. In Listing 1 wird exemplarisch ein Stück VHDL-Code vorgestellt, der den abgebildeten Schaltkreis
MehrProgrammieren für Ingenieure Übungs-Klausur
Programmieren für Ingenieure Übungs-Klausur 2014-xx-xx Name: Matrikelnummer: Studiengang: seit Dauer: 120 Minuten (2 Stunden) Zugelassene Hilfsmittel: Schreibgeräte. Zusätzliches Papier erhalten Sie vom
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
MehrInformatik I Eprog HS12
software evolution & architecture lab Informatik I Eprog HS12 Übung 11 1 Aufgabe: Interfaces & Visitor-Pattern 1.1 Lernziele 1. Die Verwendung von Interfaces trainieren. 2. Das Visitor Design-Pattern kennenlernen.
MehrBericht Übung 5.5 Ampelsteuerung und Steuerung einer 7-Segment-Anzeige Teilnehmer: Natalia Springer, Tong Cha Datum:
Bericht Übung 5.5 Ampelsteuerung und Steuerung einer 7-Segment-Anzeige Teilnehmer: Natalia Springer, Tong Cha Datum: 20.12.2007 5.5.1 Steuerung einer Ampel Aufgabenstellung: Es soll ein Automat zur Steuerung
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
MehrAufbau von Klassen. class punkt {...
Einführung in C++ Aufbau von Klassen Eine wird mit dem Schlüsselwort class eingeleitet, und endet mit einem Semikolon. Der Inhalt wird zwischen geschweiften Klammern geschrieben. class punkt {... ; Im
MehrSBC ButtonMatrix Bedienungsanleitung. Verwendung mit einem Arduino Schritt 1 Anschließen der Matrix
Sehr geehrter Kunde, SBC ButtonMatrix Bedienungsanleitung MCU Extension 4x4 16-Key vielen Dank, dass Sie sich für unser Produktentschieden haben. Im Folgenden haben wir aufgelistet, was bei der Inbetriebnahme
MehrSimulink: Softwareentwurf für eingebettete Systeme ROS-Arduino-Interface. von Christian Schildwächter
Simulink: Softwareentwurf für eingebettete Systeme ROS-Arduino-Interface von Christian Schildwächter Simulink Simulink S-Functions Softwareprojekt ROS-Arduino-Interface Simulink 3 LIVE DEMO 4 External
MehrJAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch)
JAVA BASICS 2. Primitive Datentypen 1. Warum Java? weit verbreitet einfach und (relativ) sicher keine Pointer (?) keine gotos kein Präprozessor keine globalen Variablen garbage collection objekt-orientiert
MehrAbend 4 Übung : Erweitern von Klassen durch Vererbung
Abend 4 Übung : Erweitern von Klassen durch Vererbung Ziel, Inhalt Wir erweitern die Klassen, die wir zum Zeichnen mit TsuZeichnen verwenden. Dabei wenden wir die Vererbung an um die Klassen zu spezialisieren
MehrArduino für FunkAmateure
Arduino für FunkAmateure Arduino & graphische Programmiersprachen Workshop Sensoren aus ALLNET 4Arduino Set (ArdDevKIT1) Schaltung 1: Analoge Pins Schaltung 2: Digitale Pins Schaltung 3: Blinkende LED
MehrEs ist für die Lösung der Programmieraufgabe nicht nötig, den mathematischen Hintergrund zu verstehen, es kann aber beim Verständnis helfen.
Ziele sind das Arbeiten mit Zeigern, sowie Records und Funktionen Aufgabe 5: Diese Aufgabe basiert auf der Aufgabe 4. Es ist ein Programm zu erstellen, in welchem der Anwender aus einer Anzahl möglicher
MehrÜbungsblatt 1. Java Vorkurs (WS 2017)
Übungsblatt 1 Java Vorkurs (WS 2017) Aufgabe 1 Hallo-Welt Erstelle ein neues Projekt mit dem Namen HelloJava. Erzeuge in diesem Projekt eine neue Klasse HelloJava. (a) Schreibe die main-methode in die
MehrTeil 1: Logik 1e: Zustandsautomaten
Synchroner Zähler als sautomat Teil 1: 1e: sautomaten Betrachte Zählerstand als Übergänge zwischen 0,1,2,3 ohne externe Randbedingungen 0 3 1 2 sautomat (1) sautomat (2) sspeicher sspeicher Wenn 2, dann
MehrProbeklausur: Programmieren I
Probeklausur: Programmieren I WS09/10 Erlaubte Hilfsmittel: keine Lösung ist auf den Klausurbögen anzufertigen. (eventuell Rückseiten nehmen) Bitte legen Sie einen Lichtbildausweis und den Studentenausweis
MehrÜbungspaket 23 Mehrdimensionale Arrays
Übungspaket 23 Mehrdimensionale Arrays Übungsziele: Skript: Deklaration und Verwendung mehrdimensionaler Arrays Kapitel: 49 Semester: Wintersemester 2016/17 Betreuer: Kevin, Matthias, Thomas und Ralf Synopsis:
MehrEreignisbasierte WebGUIs
Ereignisbasierte WebGUIs Konzepte und Umsetzung in wings Dennis Knotz 29.07.2010 Universität Ulm Seite 2 Inhalt Motivation Einführung Request Response Muster Ereignisbasiertes Muster Verwendung einer ereignisbasierten
MehrMakros sind Textersetzungen, welche vom Präprozessor aufgelöst werden. Dies Passiert bevor der Compiler die Datein verarbeitet.
U4 4. Übung U4 4. Übung Besprechung Aufgabe 2 Makros Register I/O-Ports U4.1 U4-1 Makros U4-1 Makros Makros sind Textersetzungen, welche vom Präprozessor aufgelöst werden. Dies Passiert bevor der Compiler
MehrId PIO1002: Anschaltbeispiele einer Eingangsleitung an die PIO II
FAQ FAQ Frequently asked Questions Id PIO1002: Anschaltbeispiele einer Eingangsleitung an die PIO II Betroffene Produkte: PIO24II, PIO48II Problembeschreibung Im folgenden werden einige Beispiele aufgeführt,
Mehr