C++ for Embedded Systems Schulung
Ist C++ für eingebettete Systeme wie Mikrocontroller und Echtzeitbetriebssysteme geeignet?
Soll in Mikrocontrollern eine objektorientierte Programmierung verwendet werden?
Ist C++ zu weit von der Hardware entfernt, um effizient zu sein?
Dieses von Lehrern geleitete Live-Training geht auf diese Fragen ein und zeigt anhand von Diskussionen und Übungen, wie mit C++ eingebettete Systeme mit genauem, lesbarem und effizientem Code entwickelt werden können. Die Teilnehmer setzen die Theorie in die Praxis um, indem sie eine eingebettete Beispielanwendung in C++ erstellen.
Am Ende dieser Schulung können die Teilnehmer:
- Die Prinzipien der objektorientierten Modellierung, eingebetteter Softwareprogrammierung und Echtzeitprogrammierung verstehen
- Code für eingebettete Systeme erstellen, der klein, schnell und sicher ist
- Code-Aufblähung durch Templates, Exceptions und andere Sprachfeatures vermeiden
- Die Herausforderungen bei der Verwendung von C++ in sicherheitskritischen und Echtzeitsystemen verstehen
- Ein C++-Programm auf einem Zielgerät debuggen
Publikum
- Entwickler
- Designer
Format des Kurses
- Teil Vortrag, Teil Diskussion, Übungen und intensive praktische Anwendung
Schulungsübersicht
Einführung
Überblick über eingebettete Systeme
Übersicht über C++
Vorbereiten der Toolchain
Klassen und Objekte
Nachlass
Virtuelle Funktionen
Verwendung von Vorlagen
Fehlerbehandlung
Inline-Code
Start-up
Standardbibliotheken
Speicherverwaltung
Echtzeit-Betriebssysteme
Interoperabilität zwischen C und C++
Objektorientierte Modellierung und UML
Abschluss
Voraussetzungen
- Ein allgemeines Verständnis von C++
Offene Schulungskurse erfordern mindestens 5 Teilnehmer.
C++ for Embedded Systems Schulung - Booking
C++ for Embedded Systems Schulung - Enquiry
Erfahrungsberichte (2)
Der Trainer passte die Ausbildung wirklich auf unser Niveau an und investierte viel Zeit und Mühe, um sicherzustellen, dass die Präsentation gut angepasst war.
Nicolas Guerette-Berthiaume - Trilliant
Kurs - C++ for Embedded Systems
Maschinelle Übersetzung
Interaktivität, Zeit für selbstständiges Programmieren. Ich lerne leichter, wenn ich die Möglichkeit habe, die Antwort selbst herauszufinden und nicht nur zu hören, was sie ist. Es war auch sehr gut, dass der Kurs gut strukturiert war, wir hatten Pausen zum Trinken von Kaffee und der Kurs hielt meine Aufmerksamkeit. Der Trainer hatte sehr tiefes Wissen in C++, wir fühlten uns sicher, alles fragen zu können.
Barna Szecsi - GIS Europe SE
Kurs - C++ for Embedded Systems
Maschinelle Übersetzung
Kommende Kurse
Kombinierte Kurse
Advanced Embedded Systems Development
35 StundenDiese Live-Schulung unter Anleitung in Schweiz (online oder vor Ort) richtet sich an Ingenieure, die lernen möchten, wie man mit Embedded C verschiedene Arten von Mikrocontrollern auf der Grundlage unterschiedlicher Prozessorarchitekturen (8051, ARM CORTEX M-3 und ARM9) programmiert.
Arduino Programming for Beginners
21 StundenIn dieser von einem Kursleiter geleiteten Live-Schulung in Schweiz lernen die Teilnehmer, wie man den Arduino für den realen Einsatz programmiert, z. B. zur Steuerung von Lichtern, Motoren und Bewegungserkennungssensoren. Dieser Kurs setzt die Verwendung echter Hardware-Komponenten in einer Live-Laborumgebung voraus (keine software-simulierte Hardware).
Am Ende dieser Schulung werden die Teilnehmer in der Lage sein:
- Programmieren Sie Arduino, um Lichter, Motoren und andere Geräte zu steuern.
- Verstehen Sie die Architektur von Arduino, einschließlich Eingängen und Anschlüssen für Zusatzgeräte.
- Fügen Sie Komponenten von Drittanbietern wie LCDs, Beschleunigungsmesser, Gyroskope und GPS-Tracker hinzu, um die Funktionalität von Arduino zu erweitern.
- Verstehen Sie die verschiedenen Möglichkeiten von Programmiersprachen, von C bis zu Drag-and-Drop-Sprachen.
- Testen, debuggen und implementieren Sie die Arduino, um Probleme der realen Welt zu lösen.
Buildroot: a Firmware Generator for Embedded Systems
7 StundenBuildroot ist ein Open-Source-Projekt, das Skripte enthält, die eine Cross-Compilation-Toolchain, ein anpassbares Root-Dateisystem-Image und einen Linux Kernel für eingebettete Geräte erzeugen. In diesem praktischen Kurs werden die Teilnehmer lernen, wie man es benutzt:
- Wie man Software auswählt, die in das Root-Dateisystem kommt.
- Wie man neue Pakete hinzufügt und bestehende modifiziert.
- Wie man Unterstützung für neue Embedded Boards hinzufügt.
Während des Kurses werden bootfähige Dateisystem-Images erstellt. Fernkurse werden mit dem QEMU-Emulator durchgeführt, während im Klassenzimmer entweder QEMU oder echte Embedded Boards nach Wahl des Trainers verwendet werden können.
Andere Projekte mit ähnlichen Zielen sind das Yocto-Projekt und OpenWRT. Bitte nutzen Sie diese Präsentationen, um herauszufinden, welches Projekt die richtige Wahl für Ihre Bedürfnisse ist.
Circuits and Electronics Fundamentals
14 StundenDiese von einem Dozenten geleitete Live-Schulung in Schweiz (online oder vor Ort) richtet sich an Ingenieure und Informatiker, die die Grundlagen von Schaltungen und Elektronik anwenden möchten, um Geräte und Systeme zu entwerfen, die die Eigenschaften elektrischer Komponenten für die Entwicklung von Hardware-Funktionen nutzen.
Am Ende dieses Kurses werden die Teilnehmer in der Lage sein:
- die notwendigen Werkzeuge und Programme für die Entwicklung von Schaltungen und Leiterplatten einzurichten und zu konfigurieren.
- die grundlegenden Prinzipien der Schaltungen und der Elektronikentwicklung zu verstehen.
- die wichtigsten elektronischen Komponenten bei der Konstruktion effizienter Computer-Hardware-Technologien zu verwenden.
- Elektronische Geräte durch die Anwendung von Schaltungsanalyseverfahren zu optimieren.
- Anwendung der Grundlagen von Elektronik und Schaltungen auf die Entwicklung von Unternehmensanwendungen.
Digital Signal Processing (DSP) Fundamentals
21 StundenDiese von einem Dozenten geleitete Live-Schulung (online oder vor Ort) richtet sich an Ingenieure und Wissenschaftler, die DSP-Implementierungen erlernen und anwenden möchten, um verschiedene Signaltypen effizient zu verarbeiten und eine bessere Kontrolle über mehrkanalige elektronische Systeme zu erhalten.
Am Ende dieser Schulung werden die Teilnehmer in der Lage sein:
- Einrichten und Konfigurieren der notwendigen Softwareplattform und Werkzeuge für die digitale Signalverarbeitung.
- Verstehen die Konzepte und Prinzipien, die für DSP und seine Anwendungen grundlegend sind.
- Sie machen sich mit DSP-Komponenten vertraut und setzen sie in elektronischen Systemen ein.
- Algorithmen und Betriebsfunktionen unter Verwendung der Ergebnisse von DSP zu erstellen.
- Grundlegende Funktionen von DSP-Softwareplattformen nutzen und Signalfilter entwerfen.
- Synthetisieren DSP-Simulationen und implementieren verschiedene Arten von Filtern für DSP.
Embedded C Application Design Principles for Automotive Professionals
14 StundenEin zweitägiger Kurs, der alle Designprinzipien mit Codebeispielen in Verbindung mit aktueller industrieller Technologie abdeckt; sehr nützlich für Softwareentwickler im Automobilbereich
Embedded C Application Design Principles
14 StundenDiese von einem Trainer geleitete Live-Schulung (online oder vor Ort) richtet sich an C-Entwickler, die die Designprinzipien von Embedded C erlernen möchten.
Am Ende dieses Kurses werden die Teilnehmer in der Lage sein
- die Designüberlegungen zu verstehen, die eingebettete C-Programme zuverlässig machen
- die Funktionalität eines eingebetteten Systems zu definieren
- die Programmlogik und -struktur zu definieren, um das gewünschte Ergebnis zu erzielen
- eine zuverlässige, fehlerfreie eingebettete Anwendung zu entwerfen
- Optimale Leistung von der Zielhardware zu erhalten
Format des Kurses:
- Interaktive Vorlesung und Diskussion
- Übungen und Praxis
- Praktische Umsetzung in einer Live-Laborumgebung
Optionen zur Kursanpassung:
- Wenn Sie eine maßgeschneiderte Schulung für diesen Kurs wünschen, nehmen Sie bitte Kontakt mit uns auf, um dies zu vereinbaren.
Electronic Control Unit (ECU) - Practical Vector
28 StundenDieses von einem Trainer geleitete Live-Training in Schweiz (online oder vor Ort) richtet sich an fortgeschrittene Kfz-Ingenieure und -Techniker, die praktische Erfahrungen im Testen, Simulieren und Diagnostizieren von Steuergeräten mit Vector Tools wie CANoe und CANape sammeln möchten.
Am Ende dieser Schulung werden die Teilnehmer in der Lage sein:
- Die Rolle und Funktion von Steuergeräten in Automobilsystemen zu verstehen.
- Vector Tools wie CANoe und CANape einzurichten und zu konfigurieren.
- Steuergerätekommunikation in CAN- und LIN-Netzwerken zu simulieren und zu testen.
- Analysieren von Daten und Durchführen von Diagnosen an Steuergeräten.
- Erstellen von Testfällen und Automatisieren von Testabläufen.
- Kalibrieren und Optimieren von Steuergeräten mit praktischen Ansätzen.
Electronic Control Unit (ECU) - Theoretical Vector
21 StundenDiese von einem Dozenten geleitete Live-Schulung in Schweiz (online oder vor Ort) richtet sich an fortgeschrittene Automobilingenieure und Entwickler von eingebetteten Systemen, die die theoretischen Aspekte von Steuergeräten verstehen möchten. Der Schwerpunkt liegt dabei auf vektorbasierten Werkzeugen und Methoden, die in der Automobilentwicklung eingesetzt werden.
Am Ende dieser Schulung werden die Teilnehmer in der Lage sein:
- Die Architektur und Funktionen von Steuergeräten in modernen Fahrzeugen zu verstehen.
- Kommunikationsprotokolle, die in der Steuergeräteentwicklung verwendet werden, zu analysieren.
- Vektorbasierte Werkzeuge und ihre theoretischen Anwendungen zu erforschen.
- Modellbasierte Entwicklungsprinzipien auf die Steuergeräteentwicklung anzuwenden.
FreeRTOS: Programming for Real Time Operating Systems
14 StundenIn dieser Live-Schulung in Schweiz lernen die Teilnehmer, wie man mit FreeRTOS programmiert, während sie Schritt für Schritt ein einfaches RTOS-Projekt mit einem Mikrocontroller entwickeln.
Am Ende dieses Kurses werden die Teilnehmer in der Lage sein
- Die grundlegenden Konzepte von Echtzeitbetriebssystemen verstehen.
- Die Umgebung von FreeRTOS kennen.
- Lernen, wie man mit FreeRTOS programmiert.
- Eine FreeRTOS-Anwendung mit Hardware-Peripheriegeräten verbinden.
Learning Vivado
14 StundenDiese von einem Trainer geleitete Live-Schulung in Schweiz (online oder vor Ort) richtet sich an FPGA-Entwickler, die Vivado zum Entwerfen, Debuggen und Implementieren von Hardware-Lösungen verwenden möchten.
Am Ende dieser Schulung werden die Teilnehmer in der Lage sein:
- HDL-Systeme mit C-Code und Vivado-Tools zu entwickeln.
- Softprozessoren in Vivado zu generieren und zu implementieren.
- C-Code mit Vivado zu testen und zu simulieren.
LEDE: Set Up a Linux Wireless Router
7 StundenDas LEDE-Projekt ( Linux Embedded Development Environment) ist ein Linux Betriebssystem, das auf OpenWrt basiert. Es ist ein vollständiger Ersatz für die vom Hersteller gelieferte Firmware einer Vielzahl von WLAN-Routern und Nicht-Netzwerkgeräten.
In diesem von einem Kursleiter geleiteten Live-Training lernen die Teilnehmer, wie ein LEDE-basierter WLAN-Router eingerichtet wird.
Publikum
- Netzwerkadministratoren und Techniker
Format des Kurses
- Teilvorlesung, Teildiskussion, Übungen und viel praktisches Üben
Yocto Project
28 StundenIn dieser von einem Trainer geleiteten Live-Schulung in Schweiz lernen die Teilnehmer, wie man ein Build-System für eingebettete Linux auf der Grundlage von Yocto Project erstellt.
Am Ende dieser Schulung werden die Teilnehmer in der Lage sein:
- Die grundlegenden Konzepte eines Yocto Project-Build-Systems zu verstehen, einschließlich Rezepten, Metadaten und Schichten.
- Ein Linux-Image zu erstellen und es unter Emulation laufen zu lassen.
- Zeit und Energie bei der Erstellung eingebetteter Linux-Systeme zu sparen.
The Yocto Project - An Overview - hands-on
28 StundenBeschreibung
Diese viertägige Schulung kombiniert Theorie mit praktischen Übungen, um die Yocto Project einzuführen.
Es werden häufig gestellte Fragen beantwortet wie:
- Ist es wirklich notwendig, für jedes einzelne GNU/Linux-Projekt eine andere Version der Toolchain/Bibliotheken/Pakete zu verwenden und darüber hinaus einen anderen Arbeitsablauf zu befolgen?
- Kann man sicherstellen, dass die Entwicklungsumgebung für alle Entwickler/Lieferanten identisch ist und dass man auch in 10+ Jahren noch identische Builds wie heute erstellen kann?
- Kann der YP dabei helfen, herauszufinden, unter welchen Softwarelizenzen die von Ihnen verwendeten Pakete lizenziert sind?
Die praktischen Übungen werden auf der Zielhardware durchgeführt (z.B. Beagle Bone Black Rev. C - http://beagleboard.org/BLACK). Nach der Schulung können Sie ein Docker-Image mit Ubuntu 14.x und allen vorinstallierten Abhängigkeiten sowie den Beispielen herunterladen, um mit dem Kursmaterial in Ihren eigenen Labs zu arbeiten. Bitte beachten Sie, dass dies kein Einführungskurs in Embedded GNU/Linux ist. Sie sollten bereits wissen, wie Embedded GNU/Linux funktioniert und wie man den GNU/Linux Kernel und die Kernel-Treiber konfiguriert/erstellt.
Wer sollte teilnehmen?
Sie setzen GNU/Linux bereits für Ihre Projekte ein und haben vielleicht schon von der Yocto Project gehört, sich aber nicht getraut, sich näher damit zu befassen, oder hatten Schwierigkeiten damit. Sie wissen nicht, ob und wie sich Ihre täglichen Arbeitsabläufe im YP unterbringen lassen und finden das YP generell eher kompliziert. Wozu brauchen wir das alles, wo doch früher alles (vermeintlich) viel einfacher war? Nach der Schulung sollten Sie in der Lage sein zu entscheiden, ob Sie das YP brauchen oder nicht. Der Workshop richtet sich an Software-, Entwicklungs-, Systemingenieure, Tester, Administratoren, Ingenieure und andere am YP Interessierte mit soliden Kenntnissen von Embedded GNU/Linux.