[ embedded ]
 
  techniek
 
 
 
home
 
 
Embedded maatwerk....
 

Bij embedded ontwikkelwerk wordt bij ieder project maatwerk geleverd. Vanzelfsprekend, omdat de software zeer nauw aan moet sluiten bij de aanwezige hardware.
Voordat PragmaLab een bijdrage aan een product gaat leveren, is het hardware traject meestal al gestart. De inbreng van PragmaLab begint vaak bij de keuze van de processor en noodzakelijke randcomponenten. Vooraf moet een reëel beeld bestaan van de prestaties en functies die verwacht worden van het embedded product. Het ontwerpen van de software kan daarna beginnen: welke modules zijn er nodig, welke componenten binnen en buiten de processor moeten worden aangestuurd, welke soorten geheugen zijn beschikbaar, etc, etc.

Wanneer een hardware prototype beschikbaar is, kan code op het target worden uitgetest. Werd vroeger de binairy (gecompileerde en gelinkte code) nog vaak in een EEPROM gebrand en op het bord ingestoken, tegenwoordig wordt bijna altijd van een 'in-circuit' methode gebruik gemaakt. Hierbij wordt de code vanaf een PC via een programmer in de processor ge-upload. JTAG is bijvoorbeeld een techniek die dit mogelijk maakt. Tijdens de ontwikkeling zijn er diverse manier om code te testen en te debuggen. Het beproefde loggen met zogeheten 'printf-statements' wordt nog veel gebruikt en ook het 'debug-LEDje' doet nog uitstekend dienst. . Maar ook geavanceerdere technieken worden ingezet. PragmaLab maakt vaak gebruik van In-Circuit-Emulators (ICE) om op source-niveau te kunnen debuggen. Deze, vaak kostbare, debuggers zijn soms de enige manier om hardnekkige fouten boven water te krijgen. Soms zelfs gaat het om fouten in de compiler. Kennis van de processor, de compiler en de assembly-instructies zijn daarbij onontbeerlijk.

Hieronder in vogelvlucht een aantal korte beschrijvingen van recente embedded projecten van PragmaLab.

eventbox
     
omschrijving eventbox voor een audioproject
techniek PIC16F628 - HT-PIC compiler
  features
speelt mp3-audio
  triggermodule op 4 ingangen
  configureerbaar via PC
  seriele verbinding met PC
  4 inputs (0-5V)
  4 outputs (220V 10 Amp)
  gebruikt playlists op de PC
  universeel inzetbaar

 
 

internet radio 'SIR'
     
omschrijving webradio voor achtergrondmuziek
techniek ATmega256 - GNU compiler
  features
speelt internet audiostreams
  speelt van MMC/SD kaart
  auto-fallback mechanisme
  firmware update via internet
  encrypted streamsvan internet
  encrypted streams van kaart
  aanmelding met autenticatie
  RTC met scheduler

 
internet radio 'Lukas'
     
omschrijving webradio voor kerkdiensten
techniek ATmega128 - GNU compiler
  features
speelt internet audiostreams
  bediening zoals een radio
  configureerbaar via PC
  firmware update via internet
  DHCP - fixed IP
  modem/ netwerk bedrijf
  12 karakter LCD
  512 MB audio buffer

 
intelligente ovenbesturing
     
omschrijving modulaire ovenbesturing
techniek H8S/2320 - Hitachi compiler
  features
modulair ontwerp software
  1/4 VGA grafisch display
  16 softkeys
  schermdefinities in eigen taal
  RFID-tag voor opslag recepten
  intelligente bootloader
  receptbeheer applicatie op PC
  uploaden losse talen
  uploaden schermdefinities
  uploaden recepten

 
medicijn dispenser
     
omschrijving besturing medicijn doseermachine
techniek Rabbit 3000- Rabbit compiler
  features
TCP/IP verbinding met host
  embed in FPGA ontwerp
  geprogrammeerd in 'Dynamic C'
  standalone test-mode
  intelligente motorsturing
  server applicatie voor PC (test)
  uCOS realtime OS
  Rabbit TCP/IP stack

 
scootmobiel besturing
     
omschrijving besturing voor een scootmobiel
techniek PIC16F876A / PIC16F627A
HI-TECH compiler
  features
ontwerp met 2 PIC's
  interprocessor communicatie
  cruise-control
  afstanden tellers in EEPROM
  compleet programma in 8K
  beveiligingen in HW en SW
  5 x 7-segments display
  low-power mode (accu)