NEU: WHITE PAPER
NEU: WHITE PAPER
NEU: WHITE PAPER
NEU: WHITE PAPER
NEU: WHITE PAPER

Neue Anforderungen aus dem "Consumer Umfeld" steigern die Komplexität von eingebetteten Systemen immer weiter, hinzu kommt ein überhitzter Bauteilemarkt.

In diesem White Paper stellen wir Ihnen drei Wege vor, die zu einer erfolgreichen und robusten Embedded-Plattform führen.

>> zum White Paper

09.02.2016 | Fachthema

Programmierung von Embedded Systemen

Verwendete Tags:
Embedded System
Embedded Linux
Elektronik
Technik

Wie werden Embedded Systeme programmiert?

Ein Embedded System ist ein programmierbares elektronisches System, das für einen ganz bestimmten Zweck eingesetzt wird. Denken Sie an einen Drucker in Ihrem Büro. Innerhalb dieses Druckers arbeiten ein oder mehrere Mikroprozessoren, mit einem begrenzten Umfang an Speicher und Peripherieelektronik um Daten zu übernehmen und diese auf Papier auszudrucken. Die Aufgaben dieses Embedded Systems sind vielfältig:

  • Kommunikation mit dem PC über Netzwerk, USB o.ä.
  • Reaktion auf Tasteneingaben am Drucker
  • Rückmeldung am Druckerdisplay
  • Steuerung der gesamten Druckermechanik (Motoren, Sensoren usw.)
  • Kontrolle und Überwachung des Gesamtsystems

Je nach gewünschter Druckerleistung (Farbe, Auflösung, Seiten/Minute) müssen diese Aufgaben mehr oder weniger schnell ausgeführt werden. Dafür gibt es, wie bei den PCs, Prozessoren unterschiedlicher Leistungsklassen. Bekannte Prozessorfamilien sind ARM, MIPS, Coldfire, 8051, aber auch die aus der PC-Welt bekannte Intel x86 Baureihe.

Programmierbare elektronische Systeme

Programmierbare elektronische Systeme

Früher wurden Embedded Systeme direkt in Assembler, der Maschinensprache des Prozessors programmiert. Speicher war damals noch teuer und sehr beschränkt. Die Assembler Programmierung war in diesem Umfang noch handhabbar und man konnte die Programme bis ins letzte Bit optimieren. Lesen, Analysieren und Warten der Programme war nur mit hohem Aufwand machbar. Mit wachsendem Funktionsumfang war dieser Weg nicht mehr praktikabel. Die Komplexität von zigtausenden Zeilen Assemblercode führte zum Einsatz neuer „höherer“ Programmiersprachen wie C, C++ oder Java auch in der Embedded Welt. Höhere Programmiersprachen und Programmbibliotheken erlauben die schnellere Realisierung von Embedded Programmen.

So kann sich ein Druckerhersteller z.B. eine Programmbibliothek für alle in seinen Geräten Displays vorbereiten und diese dann einfach in unterschiedlichen Geräten wieder verwenden. Mit der Zeit zogen dann auch die Betriebssysteme in die Embedded Systeme ein. Wie in einem PC übernehmen diese fundamentale Aufgaben im System um Daten über Netzwerke auszutauschen, Speicher zu verwalten oder auf Eingaben zu reagieren. Die Embedded Betriebssysteme unterscheiden sich in vielen Bereichen von den bekannten PC-Betriebssystemen, sind meistens viel schlanker und reagieren genau vorhersehbar auf Ereignisse (echtzeitfähig). Bekannte Vertreter von Embedded Betriebssystemen sind VxWorks, Nucleus, QNX aber auch verschiedene Linux-Varianten. Neuerdings fassen auch bekannte Systeme wie Windows oder Android im Embedded Bereich Fuß.

 

Bei Fragen stehen Ihnen unsere Experten jederzeit zur Verfügung. Gerne können Sie auch die Kommentar-Funktion nutzen.

Kontakt

Sie haben Fragen

oder möchten Kontakt aufnehmen?