← Avaleht
Tehnoloogiad ja platvormid
Programmeerimiskeeled, riistvaraplatvormid, siinid ja tööriistad — valik järgib projekti nõudeid.
See lehekülg pakub kompaktset ülevaadet tehnoloogiatest, millega töötan. Loend pole ammendav.
Keeled
1. Programmeerimis- ja riistvarakirjelduskeeled
Keele valik ülesande järgi: riistvarale lähedane ja ressursisäästlik C-s või assembleris, objektorienteeritud C++-is.
- C — peamine keel mikrokontrolleri püsivara jaoks
- C++ — keerulisemate embedded rakenduste jaoks objektorienteeritud struktuuridega
- Assembler — äärmuslikes piiritingimustes
- VHDL — FPGA disainid tugeva struktuurselge selgusega
- SystemVerilog — kaasaegne FPGA arendus, testbench-id, verifitseerimine
- Verilog — klassikaline FPGA kirjeldus
- Python — testautomaatika, skriptid, andmete analüüs
- Kotlin — Android-rakenduste jaoks
- JavaScript / HTML / CSS — veebi-frontend
MCU
2. Mikrokontrolleri platvormid
Kogemus kõigi väljakujunenud mikrokontrolleri platvormidega embedded turul.
- ARM Cortex-M — standardplatvorm keskmiselt kõrgete nõuete jaoks
- ARM Cortex-A — kui Linux või rohkem arvutusvõimsust on vajalik
- ESP32 — embedded rakendused Wi-Fi/Bluetooth-iga
- Atmel / Microchip AVR — nt ATmega perekond
- Arduino — kiire prototüüpimine, õpetamine ja demonstratsioonid
- BeagleBone — ARM Cortex-A platvorm Linuxiga
- Mikrokontrollerid minimaalse mäluga — bare-metal, ilma RTOS-ita
- muud platvormid päringu peale
FPGA
3. FPGA platvormid
FPGA arendus spetsifikatsioonist verifitseerimiseni. Rõhk Xilinxi toodetel.
- Xilinx Artix-7 — kuluefektiivne FPGA
- Xilinx Zynq — kombineeritud ARM+FPGA platvorm
- Vivado — tööriistaahel
- Icarus Verilog / Verilator — open-source simulaatorid
- SystemVerilog testbench-id — struktureeritud verifitseerimine
Siin
4. Siinid ja sideprotokollid
Kogemus automotive, tööstuslike ja embedded keskkondade väljakujunenud siinidega.
- CAN / CAN FD — automotive ja tööstusstandard
- MOST — infotainment-siin
- Ethernet / EtherCAT — tööstusside
- SPI / I²C / UART — standardliidesed
- UDS (ISO 14229) — diagnostikaprotokoll
- WebSocket / MQTT — IoT ja pilve ühenduste jaoks
RTOS
5. Reaalaja-operatsioonisüsteemid ja raamistikud
Tarkvaraarhitektuuri valik projekti nõude järgi.
- Bare-metal — kui mälu ja determinism on olulised
- FreeRTOS — RTOS-i de facto standard
- Mitmetuumilised arhitektuurid — ülesannete jaotus mitmele tuumale
- Embedded Linux — sellistel platvormidel nagu BeagleBone
Tööriistad
6. Tööriistad, testraamistikud ja IDE-d
Tööriistad on vahendid. Töötan sellega, mis projektile sobib.
- Vector CANoe / CAPL — automotive testide standard
- LabView — mõõte- ja juhtimistarkvara
- Robot Framework — end-to-end testautomaatika
- HIL setupid — hardware-in-the-loop
- Pulsonix — skeemi ja PCB paigutuse tööriist
- Vivado — Xilinx FPGA tööriistaahel
- Git / GitLab — versioonihaldus ja koodiülevaatus
- Wireshark — võrgu- ja siinianalüüs
Web/App
7. Veebi- ja rakendustehnoloogiad (saatvara)
Kui embedded seadmed vajavad konfiguratsiooniliidest, juhtpaneeli või mobiilirakendust, võin tarnida ka saatvara.
- JavaScript / HTML / CSS — veebi-frontend
- Chart.js — andmete visualiseerimine brauseris
- Python / Flask — veebi-backend
- Node.js — serverkomponendid
- Socket.IO / WebSocket / MQTT — reaalajaline andmeedastus
- Kotlin — Android-rakendused embedded seadmetele
- REST API — standarditud liidesed
Mida sellest loendist puudu on
See lehekülg loetleb sageli kasutatud tehnoloogiaid — see pole täielik kataloog. Embedded arenduses loeb lõppkokkuvõttes vähem, millist konkreetset tööriistaahelat valdate, ja rohkem, kui kiiresti uue ahelaga sisse elate.