Instructions
- 10 -
Je nach Chiptyp kann das Programm in einem permanenten ROM
3
 -Speicher, 
der nur während der Fertigung des Chips beschrieben werden kann, oder in 
einem immer wieder beschreibbaren Flash – oder mehrfach beschreibbarem 
ROM-Speicher gespeichert werden.
Ursprünglich hat man Mikrocontroller nur in Assemblersprache programmiert, 
aber zur Zeit sind auch verschiedene höheren Programmiersprachen für die 
Programmierung der Mikrocontroller verfügbar. Diese Sprachen sind entwe-
der Spezialsprachen oder Varianten der allgemeinen Hochsprachen wie zum 
Beispiel C. Verkäufer der Mikrocontroller bieten oft gratis Werkzeuge an um 
die Implementierung der Hardware zu vereinfachen. Das Arduino-System stellt 
uns etwa 16 kBytes Flash-Speicher für die sogenannten Sketch-Programme 
zur Verfügung, die in C programmiert werden können.
2.5 Schnittstellenarchitektur
Mikrocontroller verfügen in der Regel über verschiedenen bis Dutzenden von 
frei programmierbaren Ein-/Ausgangspins (GPIO). Die GPIO-Anschlüsse sind 
mittels Softwarekommandos programmierbar als Eingangs- beziehungsweise 
Ausgangspins. Bei Programmierung als Eingangspins werden sie oft zum 
Ablesen der Sensoren oder externen Signalen verwendet. Programmiert man 
sie als Ausgangspins kann man sie zum Beispiel zur LED- oder Motoransteu-
erung verwenden.
Eine Vielzahl an eingebetteten Systemen benötigt die Ablesemöglichkeit der 
Analogsignalen von den Sensoren. Zu diesem Zweck werden Analog/Digital-
wandler (A/D-Wandler oder in Englisch ADC
4
) eingesetzt. 
Da die Prozessoren speziell zur Verarbeitung von Digitaldaten, das heißt Nul-
len und Einsen, entwickelt worden sind, können sie mit den Analogsignalen 
der Sensoren an sich nichts anfangen. Deshalb werden die A/D-Wandler ein-
gesetzt um die eintreffenden Daten in eine für den Prozessor lesbaren Form 
zu verwandeln.
3
 ROM = Read Only Memory (nur lesbarer Speicher)
4
 Analog-to-digital converter (ADC)










