Softwareentwicklung für Microcontroller
Wir bieten Entwicklungsunterstützung, Integrationsunterstützung und Beratung für
Board-Bringup und Peripherieintegration
Bootprocess und Hardwareinitialisierung
- Konfiguration der Timer und Clocks
- Konfiguration der Interrupts
- Speicherlayout
- Peripherieinitialisierung I2C, SPI, I3C, UART, CAN, GPIO, Timer
- Herstellerspezifische Treiber (STM, NXP, TI, Nordic, ..)
- Hersteller unabhängige Treiber (like Zephyr RTOS, Rust embedded-hal crate)
- Cortex M und RISC-V MCU's
Bare Metall oder RTOS
Event Loop - Bare Metall
- Eingabe, Verarbeitung, Ausgabe, Pause - Schleife
- Interrupt injizierte events
oder
RTOS
- Zephyr (bevorzugt)
- FreeRTOS
- µCOS II
- other
Programmiersprachen
- Rust (bevorzugt)
- Speichersicher,
- Threadsicher,
- Hoher Abstraktionsgrad
- C, C++
Kommunikationsprotokolle
- TCP/IP
- M2M, MQTT, COAP
- CAN, CANOpen
- RS485
- ISM, BLE, WiFi
Git, Build-Systeme und Continuous Integration
- Cmake, make für C, C++
- West für Zephyr OS
- Cargo / bindgen für Rust
- Headless Builds mit CI system (z.B. github action) für
- Code-Analyse
- Ausführung der Entwickler-Unittest, Berechnung der Testabdeckung
- Versions- und Abhängigkeitsverwaltung
- Release-Builds inklusive deren Automatisierung