Embedded Systems - Softwareentwicklung C/C++
Aktualisiert am 04.10.2024
Profil
Freiberufler / Selbstständiger
Remote-Arbeit
Verfügbar ab: 15.10.2024
Verfügbar zu: 100%
davon vor Ort: 100%
Embedded C/C++
Hardwarenahe Softwareentwicklung
Bare Metal Softwareentwicklung
Softwareentwicklung in C/C++
Deutsch
Muttersprache
Englisch
Fortgeschritten

Einsatzorte

Einsatzorte

möglich

Projekte

Projekte

4 Monate
2024-07 - 2024-10

Dokumentationsupgrade von ASIL-A zu ASIL-B

Technische Evaluierung der Software und entsprechende Anpassung der Dokumente C
Technische Evaluierung der Software und entsprechende Anpassung der Dokumente
Eine teilweise vorhandene Dokumentation mit dem Ziel ASIL-A sollte ergänzt bzw. korrigiert werden, um den Anforderungen der ISO 26262 auf dem Niveau ASIL-B gerecht zu werden. Meine Aufgabe war es, den Sourcecode durchzugehen und alle sicherheitsrelevanten Teile in der Dokumentation gesondert hervorzuheben und zu diskutieren. Auch sollte für diese Teile jeweils eine Call-Hierarchy erstellt werden, um die Einordnung der jeweiligen Funktionen in das Gesamtsystem beurteilen zu können. Zum Abschluß wurde die Software mittels der Mathworks-Tools BugFinder und Code-Prover getestet, um die funktionale Sicherheit des Codes in der Dokumentation darstellen zu können.
Mathworks-Tools BugFinder und Code-Prover
C
1 Jahr 2 Monate
2022-11 - 2023-12

Konfiguration LIN-Bus / Requirements-Management / HSI-Erstellung mittels Polarion

LDF-Konfiguration Embedded C Requirements Engineering ...

Anpassung der LDF-Beschreibungs-Dateien: Erstellung neuer LIN-Bus-Signale und -Frames. Ergänzung von Type-Definitionen für bereits vorhandene und neu hinzu gekommene Signale. Entsprechende Anpassung der Software.

Erstellung von System-Requirements.

Ergänzung des HSI (Hardware Software Interface) aus verschiedenen Projektquellen und Eintrag des HSI in Polarion

Anpassung / Entwicklung der Controller-Software in C

Definition neuer Befehle für CAN-Bus-Protokoll

LDF-Konfiguration Embedded C Requirements Engineering Polarion CAN-Bus
Mittelständischer Automobilzulieferer
10 Monate
2022-01 - 2022-10

Steuergeräte-Entwicklung Automotive

Software Entwickler Softwareentwicklung C/C++
Software Entwickler
Entwicklungsunterstützung im Embedded-Bereich für ein verteiltes µC-System (RH850 / PIC16), das über CAN- und LIN-Bus kommuniziert / Debugging einzelner Komponenten / Gesamtsystem für Einsatz in Automotive Umfeld vorgesehen / Anpassung von Pre- u. Post-Build-Batchprozessen / Anpassung von Hilfssoftware mittel Embarcadero C/C++ / Dokumentation / Requirements-Management mittels Polarion / Redmine zur Workflow-Kontrolle


IAR Embedded Workbench MPLab vector Tools Embacadero C/C++ Redmine Polarion
Softwareentwicklung C/C++
11 Monate
2020-06 - 2021-04

Entwicklung Android-App zur Auswertung von Bilddaten

Software Entwickler Algorithmenentwicklung Softwareentwicklung C/C++
Software Entwickler

Auswertung der Bilddaten zur Analyse bestimmter Bildinhalte

WIN 7 Android Studio C/C++
Algorithmenentwicklung Softwareentwicklung C/C++
Eigenes Projekt
4 Monate
2018-09 - 2018-12

PWM-Entwicklung für eine H-Brückensteuerung

Industrieunternehmen
Industrieunternehmen

Implementierung einer frequenz- und phasengeregelten PWM (+ invertierter PWM mit Totzeit) zur Ansteuerung einer IGBT-H-Brücke zwecks Wechselspannungsversorgung induktiver Lasten

8 Monate
2017-12 - 2018-07

Entwicklungsunterstützung EMVCo Zertifizierung

Mittelständisches Industrie-Unternehmen
Mittelständisches Industrie-Unternehmen

Erweiterung / Anpassung von μC-Software und Durchführung von Tests gemäß EMVCo Level 1 V4.3 sowie Entwicklung von Ansteuerungs-Software für diverse Hopt+Schuler Smartcard-Dispenser (inkl. Smarctcard-Reader)

Aus- und Weiterbildung

Aus- und Weiterbildung

Studium der Physik
Abschluß Diplom
Promotion 1997

Kompetenzen

Kompetenzen

Top-Skills

Embedded C/C++ Hardwarenahe Softwareentwicklung Bare Metal Softwareentwicklung Softwareentwicklung in C/C++

Produkte / Standards / Erfahrungen / Methoden

Algorithmenentwicklung

Projekt-Spezifizierung und Softwareentwicklung 

  • Softwareentwicklung im Bereich Regelungstechnik für Strom- bzw. Spannungswandler
  • LIN Bus Konfiguration für verteilte Systeme im Automotivumfeld
  • Softwareentwicklung für EMVCo Zertifierung eines Smartcard Lesegerätes
  • Fachliche Begleitung der Zertifizierung nach ITSEC (bzw. Common Criteria)
  • Kenntnisse kryptographischer Methoden und der notwendigen kryptographischen Infrastruktur für Zertifikate und Smartcards
  • Implementierung einer vollständigen Langzahlarithmetik und darauf aufbauend einer Software zur Erzeugung und Verwendung von RSA-Schlüsseln (digitale Signatur und asymmetrische Verschlüsselung, Handling von X509-Zertifikaten) in C/C++ und x86 Assembler
  • Implementierung diverser kryptographischer Verfahren (u.a. 3DES, AES) zur symmetrischen Verschlüsselung, HASH-Erzeugung (u.a. MD5, SHA), Schlüsselgenerierung (u.a. PBKDF2) und symmetrischen Signatur (HMAC)
  • Ansteuerung eines Smartcard-Readers (via RS232 direkt bzw. mittels Windows PC/SC-API)

 

Eingesetzte Werkzeuge u.a.:

  • Test Equipment Micropass STAR 3150 / CardSim 4.02.01-T

  • Renesas H8 High Performance Embedded Workshop 4
  • XAMPP / phpMyAdmin
  • Visual C++ (2005/10/13/15) mit MFC als graphischem User-Interface
  • DebugView      
  • Eclipse IDE
  • Texas Instruments Code Composer 5.x (RM48) und Essentials (MSP430)
  • IAR Embedded Workbench for MSP430
  • Keil µVision 4 (STM32)
  • MatLab und Simulink zur modellbasierten Codegenerierung
  • Notepad++
  • UltraEdit
  • WinMerge
  • BeyondCompare
  • winIDEA
  • OLIMEX USB JTAG-Flashprogrammer
  • Elprotronic FET-Pro430-Lite JTAG-Flashprogrammer
  • Lauterbach Emulator
  • Keil ULINK
  • Texas Instruments CC2540 USB Dongle & Software (BLE Sender / Empfänger)
  • Oszilloskope / Logikanalysatoren / Multimeter

 

  • Sourcecodeverwaltung mittels Subversion (SVN / Tortoise, GIT und IMS)
  • Darstellung von Messwerten und Auswertungen mittels Mat Lab (Entwicklung von Mat Lab-Scripten)
  • Einsatz von Redmine sowie Jira zur Projektsteuerung
  • Makroprogrammierung für MS Excel (VBA)

Betriebssysteme

WIN 7 / 10

Kleines Betriebssystem für Z80-Computer sowie mikroprozessorbasiertes Gerät.

Softwareentwicklung auf einem TI MSP430 unter Verwendung eines proprietären eventgesteuerten Betriebssystems

Programmiersprachen

Assembler
Z80, 80x86, M68000, 87C 51/52/251 (IDE: Keil µVision2)
Basic
Visual Basic, VBA, GFA-Basic
C
Viel Erfahrung
C++
Gute Kenntnisse
Makrosprachen
VBA: Word, Excel
Pascal
Turbo (schon länger her)

Datenkommunikation

Proprietäre Protokolle
Bluetooth Low Energy (GattServer & Profil - Entwicklung)
RS232
Detailkenntnisse
LIN-Bus
LDF-Konfiguration / Softwareeinbindung
CAN-Bus
Softwareeinbindung

Hardware

Embedded Systeme
Messsystemsteuerung und -erfassung mittels TI MSP430 in C/SPS mittels RM48 u. STM32 in C
Mikrocontroller
RH850 in C, PIC16 in C, TI MSP430, RM48 in C, STM32 in C, Intel 87C51, C52, C251 in Assembler
Motorola
M68000 in Assembler
PC
Anwendungsprogrammierung in Visual C/C++, Visual Basic, VBA, Embacadero C/C++ und 80x86 Assembler
Texas Instruments
MSP430 in mehreren Projekten

Branchen

Branchen

Alle

Einsatzorte

Einsatzorte

möglich

Projekte

Projekte

4 Monate
2024-07 - 2024-10

Dokumentationsupgrade von ASIL-A zu ASIL-B

Technische Evaluierung der Software und entsprechende Anpassung der Dokumente C
Technische Evaluierung der Software und entsprechende Anpassung der Dokumente
Eine teilweise vorhandene Dokumentation mit dem Ziel ASIL-A sollte ergänzt bzw. korrigiert werden, um den Anforderungen der ISO 26262 auf dem Niveau ASIL-B gerecht zu werden. Meine Aufgabe war es, den Sourcecode durchzugehen und alle sicherheitsrelevanten Teile in der Dokumentation gesondert hervorzuheben und zu diskutieren. Auch sollte für diese Teile jeweils eine Call-Hierarchy erstellt werden, um die Einordnung der jeweiligen Funktionen in das Gesamtsystem beurteilen zu können. Zum Abschluß wurde die Software mittels der Mathworks-Tools BugFinder und Code-Prover getestet, um die funktionale Sicherheit des Codes in der Dokumentation darstellen zu können.
Mathworks-Tools BugFinder und Code-Prover
C
1 Jahr 2 Monate
2022-11 - 2023-12

Konfiguration LIN-Bus / Requirements-Management / HSI-Erstellung mittels Polarion

LDF-Konfiguration Embedded C Requirements Engineering ...

Anpassung der LDF-Beschreibungs-Dateien: Erstellung neuer LIN-Bus-Signale und -Frames. Ergänzung von Type-Definitionen für bereits vorhandene und neu hinzu gekommene Signale. Entsprechende Anpassung der Software.

Erstellung von System-Requirements.

Ergänzung des HSI (Hardware Software Interface) aus verschiedenen Projektquellen und Eintrag des HSI in Polarion

Anpassung / Entwicklung der Controller-Software in C

Definition neuer Befehle für CAN-Bus-Protokoll

LDF-Konfiguration Embedded C Requirements Engineering Polarion CAN-Bus
Mittelständischer Automobilzulieferer
10 Monate
2022-01 - 2022-10

Steuergeräte-Entwicklung Automotive

Software Entwickler Softwareentwicklung C/C++
Software Entwickler
Entwicklungsunterstützung im Embedded-Bereich für ein verteiltes µC-System (RH850 / PIC16), das über CAN- und LIN-Bus kommuniziert / Debugging einzelner Komponenten / Gesamtsystem für Einsatz in Automotive Umfeld vorgesehen / Anpassung von Pre- u. Post-Build-Batchprozessen / Anpassung von Hilfssoftware mittel Embarcadero C/C++ / Dokumentation / Requirements-Management mittels Polarion / Redmine zur Workflow-Kontrolle


IAR Embedded Workbench MPLab vector Tools Embacadero C/C++ Redmine Polarion
Softwareentwicklung C/C++
11 Monate
2020-06 - 2021-04

Entwicklung Android-App zur Auswertung von Bilddaten

Software Entwickler Algorithmenentwicklung Softwareentwicklung C/C++
Software Entwickler

Auswertung der Bilddaten zur Analyse bestimmter Bildinhalte

WIN 7 Android Studio C/C++
Algorithmenentwicklung Softwareentwicklung C/C++
Eigenes Projekt
4 Monate
2018-09 - 2018-12

PWM-Entwicklung für eine H-Brückensteuerung

Industrieunternehmen
Industrieunternehmen

Implementierung einer frequenz- und phasengeregelten PWM (+ invertierter PWM mit Totzeit) zur Ansteuerung einer IGBT-H-Brücke zwecks Wechselspannungsversorgung induktiver Lasten

8 Monate
2017-12 - 2018-07

Entwicklungsunterstützung EMVCo Zertifizierung

Mittelständisches Industrie-Unternehmen
Mittelständisches Industrie-Unternehmen

Erweiterung / Anpassung von μC-Software und Durchführung von Tests gemäß EMVCo Level 1 V4.3 sowie Entwicklung von Ansteuerungs-Software für diverse Hopt+Schuler Smartcard-Dispenser (inkl. Smarctcard-Reader)

Aus- und Weiterbildung

Aus- und Weiterbildung

Studium der Physik
Abschluß Diplom
Promotion 1997

Kompetenzen

Kompetenzen

Top-Skills

Embedded C/C++ Hardwarenahe Softwareentwicklung Bare Metal Softwareentwicklung Softwareentwicklung in C/C++

Produkte / Standards / Erfahrungen / Methoden

Algorithmenentwicklung

Projekt-Spezifizierung und Softwareentwicklung 

  • Softwareentwicklung im Bereich Regelungstechnik für Strom- bzw. Spannungswandler
  • LIN Bus Konfiguration für verteilte Systeme im Automotivumfeld
  • Softwareentwicklung für EMVCo Zertifierung eines Smartcard Lesegerätes
  • Fachliche Begleitung der Zertifizierung nach ITSEC (bzw. Common Criteria)
  • Kenntnisse kryptographischer Methoden und der notwendigen kryptographischen Infrastruktur für Zertifikate und Smartcards
  • Implementierung einer vollständigen Langzahlarithmetik und darauf aufbauend einer Software zur Erzeugung und Verwendung von RSA-Schlüsseln (digitale Signatur und asymmetrische Verschlüsselung, Handling von X509-Zertifikaten) in C/C++ und x86 Assembler
  • Implementierung diverser kryptographischer Verfahren (u.a. 3DES, AES) zur symmetrischen Verschlüsselung, HASH-Erzeugung (u.a. MD5, SHA), Schlüsselgenerierung (u.a. PBKDF2) und symmetrischen Signatur (HMAC)
  • Ansteuerung eines Smartcard-Readers (via RS232 direkt bzw. mittels Windows PC/SC-API)

 

Eingesetzte Werkzeuge u.a.:

  • Test Equipment Micropass STAR 3150 / CardSim 4.02.01-T

  • Renesas H8 High Performance Embedded Workshop 4
  • XAMPP / phpMyAdmin
  • Visual C++ (2005/10/13/15) mit MFC als graphischem User-Interface
  • DebugView      
  • Eclipse IDE
  • Texas Instruments Code Composer 5.x (RM48) und Essentials (MSP430)
  • IAR Embedded Workbench for MSP430
  • Keil µVision 4 (STM32)
  • MatLab und Simulink zur modellbasierten Codegenerierung
  • Notepad++
  • UltraEdit
  • WinMerge
  • BeyondCompare
  • winIDEA
  • OLIMEX USB JTAG-Flashprogrammer
  • Elprotronic FET-Pro430-Lite JTAG-Flashprogrammer
  • Lauterbach Emulator
  • Keil ULINK
  • Texas Instruments CC2540 USB Dongle & Software (BLE Sender / Empfänger)
  • Oszilloskope / Logikanalysatoren / Multimeter

 

  • Sourcecodeverwaltung mittels Subversion (SVN / Tortoise, GIT und IMS)
  • Darstellung von Messwerten und Auswertungen mittels Mat Lab (Entwicklung von Mat Lab-Scripten)
  • Einsatz von Redmine sowie Jira zur Projektsteuerung
  • Makroprogrammierung für MS Excel (VBA)

Betriebssysteme

WIN 7 / 10

Kleines Betriebssystem für Z80-Computer sowie mikroprozessorbasiertes Gerät.

Softwareentwicklung auf einem TI MSP430 unter Verwendung eines proprietären eventgesteuerten Betriebssystems

Programmiersprachen

Assembler
Z80, 80x86, M68000, 87C 51/52/251 (IDE: Keil µVision2)
Basic
Visual Basic, VBA, GFA-Basic
C
Viel Erfahrung
C++
Gute Kenntnisse
Makrosprachen
VBA: Word, Excel
Pascal
Turbo (schon länger her)

Datenkommunikation

Proprietäre Protokolle
Bluetooth Low Energy (GattServer & Profil - Entwicklung)
RS232
Detailkenntnisse
LIN-Bus
LDF-Konfiguration / Softwareeinbindung
CAN-Bus
Softwareeinbindung

Hardware

Embedded Systeme
Messsystemsteuerung und -erfassung mittels TI MSP430 in C/SPS mittels RM48 u. STM32 in C
Mikrocontroller
RH850 in C, PIC16 in C, TI MSP430, RM48 in C, STM32 in C, Intel 87C51, C52, C251 in Assembler
Motorola
M68000 in Assembler
PC
Anwendungsprogrammierung in Visual C/C++, Visual Basic, VBA, Embacadero C/C++ und 80x86 Assembler
Texas Instruments
MSP430 in mehreren Projekten

Branchen

Branchen

Alle

Vertrauen Sie auf Randstad

Im Bereich Freelancing
Im Bereich Arbeitnehmerüberlassung / Personalvermittlung

Fragen?

Rufen Sie uns an +49 89 500316-300 oder schreiben Sie uns:

Das Freelancer-Portal

Direktester geht's nicht! Ganz einfach Freelancer finden und direkt Kontakt aufnehmen.