Početna

Tehnologije i platforme

Programski jezici, hardverske platforme, magistrale i alati — odabir slijedi zahtjeve projekta.

Ova stranica pruža kompaktan pregled tehnologija s kojima radim. Popis nije iscrpan.

Jezici

1. Programski i hardverski opisni jezici

Odabir jezika prema zadatku: blisko hardveru i štedljivo prema resursima u C ili asembleru, objektno orijentirano u C++.

  • C — glavni jezik za firmware mikrokontrolera
  • C++ — za složenije embedded aplikacije s objektnim strukturama
  • Asembler — pri ekstremnim graničnim uvjetima
  • VHDL — FPGA dizajni s jakom strukturalnom jasnoćom
  • SystemVerilog — moderan FPGA razvoj, testbenchevi, verifikacija
  • Verilog — klasičan opis FPGA
  • Python — automatizacija testova, skripte, analiza podataka
  • Kotlin — za Android aplikacije
  • JavaScript / HTML / CSS — web frontendi
MCU

2. Platforme mikrokontrolera

Iskustvo sa svim etabliranim platformama mikrokontrolera na embedded tržištu.

  • ARM Cortex-M — standardna platforma za srednje visoke zahtjeve
  • ARM Cortex-A — kad je potreban Linux ili više računarske snage
  • ESP32 — embedded aplikacije s Wi-Fi/Bluetooth
  • Atmel / Microchip AVR — npr. ATmega obitelj
  • Arduino — brzo prototipiranje, nastava i demonstracije
  • BeagleBone — ARM Cortex-A platforma s Linuxom
  • Mikrokontroleri s minimalnom memorijom — bare-metal, bez RTOS
  • ostale platforme na upit
FPGA

3. FPGA platforme

FPGA razvoj od specifikacije do verifikacije. Težište na Xilinx proizvodima.

  • Xilinx Artix-7 — troškovno učinkovit FPGA
  • Xilinx Zynq — kombinirana ARM+FPGA platforma
  • Vivado — lanac alata
  • Icarus Verilog / Verilator — open-source simulatori
  • SystemVerilog testbenchevi — strukturirana verifikacija
Magistrala

4. Magistrale i komunikacijski protokoli

Iskustvo s magistralama uspostavljenima u automotive, industrijskim i embedded okruženjima.

  • CAN / CAN FD — automotive i industrijski standard
  • MOST — infotainment magistrala
  • Ethernet / EtherCAT — industrijska komunikacija
  • SPI / I²C / UART — standardna sučelja
  • UDS (ISO 14229) — dijagnostički protokol
  • WebSocket / MQTT — za IoT i cloud veze
RTOS

5. Operativni sustavi stvarnog vremena i okviri

Odabir softverske arhitekture prema zahtjevu projekta.

  • Bare-metal — kad je važna memorija i determinizam
  • FreeRTOS — de facto standard za RTOS
  • Višejezgrene arhitekture — raspodjela zadataka na više jezgri
  • Embedded Linux — na platformama poput BeagleBone
Alati

6. Alati, testni okviri i IDE-ovi

Alati su sredstva. Radim s onim što odgovara projektu.

  • Vector CANoe / CAPL — standard za automotive testove
  • LabView — mjerni i upravljački softver
  • Robot Framework — end-to-end automatizacija testova
  • HIL postavke — hardware-in-the-loop
  • Pulsonix — alat za shemu i PCB layout
  • Vivado — Xilinx FPGA lanac alata
  • Git / GitLab — kontrola verzija i pregled koda
  • Wireshark — analiza mreže i magistrale
Web/App

7. Web i app tehnologije (prateći softver)

Kad embedded uređaji trebaju konfiguracijsko sučelje, nadzornu ploču ili mobilnu aplikaciju, mogu isporučiti i prateći softver.

  • JavaScript / HTML / CSS — web frontendi
  • Chart.js — vizualizacija podataka u pregledniku
  • Python / Flask — web backendi
  • Node.js — serverske komponente
  • Socket.IO / WebSocket / MQTT — prijenos podataka u stvarnom vremenu
  • Kotlin — Android aplikacije za embedded uređaje
  • REST API — standardizirana sučelja

Što na ovom popisu nedostaje

Ova stranica navodi često korištene tehnologije — to nije potpun katalog. U embedded razvoju na kraju manje je važno koji konkretan lanac alata se vlada, a više koliko se brzo može upoznati novi.

Shema boja

Jezik