Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
You are viewing an older revision! See the latest version
C++ Seite
Objektorientierte hardwarenahe Programmierung¶
Klassen in C++¶
Membervariable, Methoden, Konstruktor, Statische Member, Zugriffsspezifizierer
MBED SDK Coding Style und C++ Coding Style.
Lektion 1: DigitalOut-Klasse
- HasA versus IsA-Vererbung
- Blinky OOP mit Zeiger
- Fragen C++
- Aufgabe BusOut++
Lektion 2: PWM-Klasse
- Klasse PWM für RGB-Led
- AddOn: Software PWM-Klasse
Lektion 3: I2C und Temperatursensor LM75B
Aufgabe I2C-Sensoren¶
Suchen Sie für unterschiedliche Sensoren (wie z.B.: BMP180, AS3935, MCP4725, PCA9555, MPU-6000, ...) Datenblätter und Klassenimplementierungen. Untersuchen Sie die Programmierweise der Klassen (Konstante: Adressen, Register, private und öffentliche Elemente der Klasse, Methoden und ihre Implementierung, ...). Sofern möglich testen Sie die Klassenbibliothek in einem Testprojekt/-programm im MBED-Compiler. Veröffentlichen Sie die bearbeiteten Sensoren (mindestens drei) auf Ihrer MBED-Homepage mit einer kurzen Beschreibung und dem Link zur Klassenbibliothek. Veröffentlichen Sie Ihr Testprojekt.
Ereignisse¶
Lektion 4: Interrupt/Event-Klasse
Aufgabe ISR¶
Schreiben Sie eine Klasse SwEvent in der Sie ähnlich der DigitalIn-Klasse einen InterruptIn-Pin _isr (von z.B. sw1 P0_10) übergeben können und eine ISR-Routine hinzufügen (rise) in der Sie ein Flag setzen, wenn der Taster gedrückt wurde, das mit der Methode checkFlag() abgefragt und gelöscht werden soll.
- Lösung: Event Klasse
Lektion 5: Serial-RX Interrupt-Klasse
Aufgabe Serial¶
Schreiben Sie eine Klasse SerialEvent in der Sie ähnlich der I2C-Klassen TX- und RX-Pins übergeben können und einem DataReceive-Interrupt eine ISR-Routine hinzufügen (attach) und ein Flag setzen, wenn ein Zeichen empfangen wurde, das mit der Methode checkFlag() wieder abgefragt und gelöscht werden soll.
- Lösung: Serial Event Klasse
State Machine Implementierung¶
- UML Zustandsdiagram von UML@Classroom; Zustandsdiagramm (Statechart Diagram)
- Zustandsdiagramm (Coding Style) mit Zuständen und Zustandsübergängen.
- STM-Implementierung mit Klassen