02.12.2024 aktualisiert
SG
Premiumkunde
100 % verfügbarSenior Embedded Software Entwickler
Braunschweig, Deutschland Master of Science (M.Sc., Computer Science)
Skills
ProgrammierungGerätetreiberEchtzeitbetriebssystemµControllerAssemblerVisual CC++PVCSTCP/IPNetzwerkWindowsLinuxEmbeddedEmbedded Systems / BetriebssystemeMikrocontrollerRTOSFirmwareAUTOSAR
+ Hardware Platforms
ARM Cortex M4, ARM Cortex R5, ARM Cortex A53, ARM SoCs, ESP32, Freescale MPC5643L (Leopard), Freescale MPC5744P (Panther), Renesas RH850/P1x, POWER QUICC, Motorola MPC55x, PowerPC 603, Motorola 68K, Infineon C16x, Intel 80x86, Intel IXF300xx
+ Software
* Languages: C, C++, RISC (ARM & PowerPC) Assembly, Motorola 68K Assembly, Intel x86 Assembly, Object Pascal, Perl, Java, Bare-metal programmierung
* Operating Systems: FreeRTOS, Linux, Linux–UBoot, Yocto, µCOS-II, VxWorks, Nucleus, OSE-Delta, OSEK, TEngine, Windows, UNIX, POSIX
* Peripherals, Buses and Protocols: DMA, ADC, PWM, SPI, USB, I2C, UART, Timers, CAN, LIN, FlexRay, MOST, TCP/IP, Ethernet, SDH/SONET, OTN, GSM
Norms und Standards: Automotive SPICE, V-Model, Waterfall Model, CMMI, ISO 26262 (FuSi), FEMA, MISRA, LINT, Polyspace
* GUI: LVGL, Visual C++/MFC, Borland C++/OWL, Visual Basic, Delphi
* Development Tools: Xilinx, Vivado, Platform Cable II USB (Xilinx Debugger), GCC, CMake, MontaVista LINUX tool-chain, Green Hills, Code Warrior, RVCT-ARM tool-chain, Wind River Diab, Lauterbach Trace32 Debugger, Single-Step Debugger, Tornado Tools, Tasking EDE, CrossView Debugger, Eclipse, NI Lab Windows/CVI, Vector CAN Tools (CANalyzer, CANdb, CANgen, CANoe), Windows DDK/SDK, Git, ClearCase, Synergy CM/CS, CVS, PVCS, Rational Rose, DOORS, Enterprise Architect, UML, OOA, OOD, ActiveX
* OO Technologies: Microsoft COM, DCOM, ActiveX
+ Expertise
* Embedded systems programming, Debugging and Trouble-Shooting
* Microcontroller Programming: ARM Cortex-M4, ARM Cortex-R5, ARM Cortex-A53, MPC 5xx, 56xx Leopard (Freescale), Renesas RH850/P1x, C167, C168 (Infineon), 68HCxx (Motorola), Power PC 603, 860 Processors architecture
* FlexRay, CAN, VW CAN Transport protocol, CAN Network Management, TCP/IP, SDH/SONET
ARM Cortex M4, ARM Cortex R5, ARM Cortex A53, ARM SoCs, ESP32, Freescale MPC5643L (Leopard), Freescale MPC5744P (Panther), Renesas RH850/P1x, POWER QUICC, Motorola MPC55x, PowerPC 603, Motorola 68K, Infineon C16x, Intel 80x86, Intel IXF300xx
+ Software
* Languages: C, C++, RISC (ARM & PowerPC) Assembly, Motorola 68K Assembly, Intel x86 Assembly, Object Pascal, Perl, Java, Bare-metal programmierung
* Operating Systems: FreeRTOS, Linux, Linux–UBoot, Yocto, µCOS-II, VxWorks, Nucleus, OSE-Delta, OSEK, TEngine, Windows, UNIX, POSIX
* Peripherals, Buses and Protocols: DMA, ADC, PWM, SPI, USB, I2C, UART, Timers, CAN, LIN, FlexRay, MOST, TCP/IP, Ethernet, SDH/SONET, OTN, GSM
Norms und Standards: Automotive SPICE, V-Model, Waterfall Model, CMMI, ISO 26262 (FuSi), FEMA, MISRA, LINT, Polyspace
* GUI: LVGL, Visual C++/MFC, Borland C++/OWL, Visual Basic, Delphi
* Development Tools: Xilinx, Vivado, Platform Cable II USB (Xilinx Debugger), GCC, CMake, MontaVista LINUX tool-chain, Green Hills, Code Warrior, RVCT-ARM tool-chain, Wind River Diab, Lauterbach Trace32 Debugger, Single-Step Debugger, Tornado Tools, Tasking EDE, CrossView Debugger, Eclipse, NI Lab Windows/CVI, Vector CAN Tools (CANalyzer, CANdb, CANgen, CANoe), Windows DDK/SDK, Git, ClearCase, Synergy CM/CS, CVS, PVCS, Rational Rose, DOORS, Enterprise Architect, UML, OOA, OOD, ActiveX
* OO Technologies: Microsoft COM, DCOM, ActiveX
+ Expertise
* Embedded systems programming, Debugging and Trouble-Shooting
* Microcontroller Programming: ARM Cortex-M4, ARM Cortex-R5, ARM Cortex-A53, MPC 5xx, 56xx Leopard (Freescale), Renesas RH850/P1x, C167, C168 (Infineon), 68HCxx (Motorola), Power PC 603, 860 Processors architecture
* FlexRay, CAN, VW CAN Transport protocol, CAN Network Management, TCP/IP, SDH/SONET
Sprachen
DeutschverhandlungssicherEnglischverhandlungssicher
Projekthistorie
Das Schwenk-Neige-Kamerasystem 4K-SNK (2 X Full HD 1920X1080, HDSDI, HDMI, 2 x PAL) wurde für die mobile Beweissicherung und Dokumentationsanforderungen der "Behörden" (Überwachungssystem) entwickelt.
Das ‘Bedienteil‘ dient zur Konfiguration des 4K-SNK-System. Ich bin verantwortlich für die Implementierung dieses 'Bedienteil'-Element (SW), das die folgenden Softwarekomponenten umfasst (außer 'board bring-up' und Einrichtung der Umgebung):
Das ‘Bedienteil‘ dient zur Konfiguration des 4K-SNK-System. Ich bin verantwortlich für die Implementierung dieses 'Bedienteil'-Element (SW), das die folgenden Softwarekomponenten umfasst (außer 'board bring-up' und Einrichtung der Umgebung):
-
- SPI-Treiber für die Verwendung eines Joysticks (Bewegungen nach links, rechts, oben und unten für die Kamerapositionierung, Drehkopf für das Zoomen und Tasten für die Aufnahme und Beleuchtung)
- Grafiktreiber und HMI-Anwendung zur Konfiguration des 4K-SNK-Systems und der Kameras, Drucktasten zur Verwendung des HMI-Bildschirms ohne Berührung, vordefinierte Tasten/Drucktasten zur Voreinstellung der Kamerapositionen und verschiedene Encoder zur Lautstärkeregelung und Navigation auf dem HMI-Bildschirm (Menüs)Speichern
- Kommunikationstreiber/-modul, das Befehle als CAN-Nachrichten an das 4K-SNK-System sendet und Informationen und Befehle als CAN-Nachrichten empfängt und verarbeitet. (Kamerabefehle sind bereits im VISCA-Protokoll kodiert und werden als CAN-Nachrichten gesendet und empfangen)
- ARM Cortex M4 (LPC54628), LVGL, FreeRTOS, C, Assembly, ARM GNU Tool-chain, MCUXpresso IDE (NXP), GUI Guider (NXP), SEGGER J-Link
Softwareentwicklung “Dashbike“:
Dashbike ist Ein ‘Dashcam für fahrad‘. Ich bin verantwortlich für das Design und die Implementierung (Low-Level-Programmierung) der folgenden Module auf dem ESP32 Mikrocontroller:
Development environment:
Dashbike ist Ein ‘Dashcam für fahrad‘. Ich bin verantwortlich für das Design und die Implementierung (Low-Level-Programmierung) der folgenden Module auf dem ESP32 Mikrocontroller:
-
- Kommunikation mit dem Smartphone (BT, Wi-Fi), verbunden mit einer App
- Kommunikation mit FPFA (I2C, SPI), verbunden mit vielen Sensoren (IMU, US, GPS, Bildsensor...)
- Behandlung von Interrupts von/zu verschiedenen Komponenten/Sensoren
- REST-Server-Implementierung zum Abrufen verschiedener Daten und Bilder vom FPGA
Development environment:
- ESP32-WROVER-IE, ICM_20948, FreeRTOS, C
Softwareentwicklung “Software für DreamChip“:
* FPGA mit 4 x ARM Cortex-A53 (APU) und 2 x ARM Cortex-R5 (RPU) Mikrocontrollern
* Mikrocontrollern Low-Level Programmierung
* Implementierung der Start-up der R5 Kerne (in ‚Split‘ Modus) und Interrupts-Handling in ‚Vector‘ Modus in Assembly
* Integration und Anpassung der eigene Betriebssystem (RTOS) für jede R5 Kerne - FreeRTOS
* Implementierung Low-Level Treibern für Mikrocontroller Units: ADC (PL), DMA, GIC, SPI (PL), TTC und UART
* Implementierung Low-Level Treiber für Kommunikation zwischen RPU und APU über IPI – Inter Processor Interrupt
* Implementierung Low-Level Treiber für ‚CPU-Load Rechner‘
* Integration, Konfiguration und Optimierung – FreeRTOS (Betriebssystem)
* System Run-time Performance und Optimierung
Umgebung: Xilinx UltraScale+ XCZU3EG (ARM Cortex-R5, -A53), FreeRTOS, Linux (UBoot, Yocto), Bare-metal, C, Assembly, GCC, CMake, Build system, Platform Cable II USB (Xilinx Debugger), Vivado (HW Design Tool), Xilinx SDK (Eclipse based)
* FPGA mit 4 x ARM Cortex-A53 (APU) und 2 x ARM Cortex-R5 (RPU) Mikrocontrollern
* Mikrocontrollern Low-Level Programmierung
* Implementierung der Start-up der R5 Kerne (in ‚Split‘ Modus) und Interrupts-Handling in ‚Vector‘ Modus in Assembly
* Integration und Anpassung der eigene Betriebssystem (RTOS) für jede R5 Kerne - FreeRTOS
* Implementierung Low-Level Treibern für Mikrocontroller Units: ADC (PL), DMA, GIC, SPI (PL), TTC und UART
* Implementierung Low-Level Treiber für Kommunikation zwischen RPU und APU über IPI – Inter Processor Interrupt
* Implementierung Low-Level Treiber für ‚CPU-Load Rechner‘
* Integration, Konfiguration und Optimierung – FreeRTOS (Betriebssystem)
* System Run-time Performance und Optimierung
Umgebung: Xilinx UltraScale+ XCZU3EG (ARM Cortex-R5, -A53), FreeRTOS, Linux (UBoot, Yocto), Bare-metal, C, Assembly, GCC, CMake, Build system, Platform Cable II USB (Xilinx Debugger), Vivado (HW Design Tool), Xilinx SDK (Eclipse based)