c't 18/2018
S. 156
Know-how
Einplatinenrechner

Grundlagen zu Einplatinenrechnern

Aufbau und Funktionsweise von Raspberry Pi und Co.

Die scheckkartengroßen Einplatinenrechner erfreuen sich nicht zuletzt wegen ihrer geringen Kosten großer Beliebtheit. Wir zeigen, was auf einer solchen Kleinstrechnerplatine sitzt und wozu es gut ist.

Die Idee ist bestechend und war erfolgreich: Auf einer kaum mehr als scheckkartengroßen Platine kommt beim „Raspi“ alles zusammen, was man für einen PC unbedingt braucht. Und das für maximal 40 Euro. Möglich werden solche Bastelrechner vor allem durch die Entwicklung von so genannten Systems on Chip (SoCs) mit Prozessorkernen mit ARM-Architektur. Die stecken auch in Milliarden von Tablet-PCs und Smartphones und sind deshalb sehr günstig zu bekommen.

Obwohl sich die Chips deutlich weiterentwickelt haben und immer mehr Peripherie-Komponenten wie WLAN und Bluetooth hinzugekommen sind, sind nicht nur der Preis, sondern auch der Formfaktor und die Anschlüsse über die Raspi-Versionen (aktuell 3 B+) kompatibel geblieben.

Sonderlich rechenstark sind die auf den Bastelrechnern verbauten Chips allerdings nicht. Die Taktfrequenz liegt um die 1 GHz, ältere Modelle enthalten nur einen ARM-Kern, modernere (Version 3B+) immerhin schon vier. Für die Aufgaben eines Büro-PC reicht das nur knapp, nicht zuletzt weil der Arbeitsspeicher lediglich 1 GByte fasst.

Einige Funktionen der Handy-Chips machen sich auch die Raspi-Entwickler zunutze: Die im Chip integrierten Standard-Ports für Touchscreen (DSI) und Kamera (CSI-2) sind jeweils über Buchen für Flachbandkabel herausgeführt. Auf dem Markt gibt es dafür günstige Displays und Kameras, die direkt auf die Platine gesteckt werden können. Damit eignet sich der Raspi bestens für die Konstruktion individueller Bedienelemente oder für Überwachungsaufgaben.

Aufbau Raspberry Pi Version 3 B+

Ein- und Ausgang

Eine Besonderheit unterscheidet den Bastelrechner von anderen Geräten mit ähnlichem Prozessor: die an eine 40-polige Stiftleiste herausgeführten Ports eines im Chip integrierten Mikrocontrollers – die so genannten GPIOs (General Purpose Input/Output). Sie lassen sich über bestimmte Register des Controllers als Ein- oder Ausgang nutzen und können Schalt- und Steueraufgaben ebenso übernehmen wie die Überwachung von Eingaben über Bedienelemente oder von Sensoren. So hat sich ein vielfältiger Markt günstiger Sensoren für Temperatur über Gewicht bis hin zu Licht oder UV-Strahlung entwickelt, die sich einfach anschließen und in eigenen Programmen auswerten lassen.

Einfachstes Beispiel für die Ausgabe ist der Anschluss einer LED, die ein GPIO-Pin direkt schalten kann. Für größere Lasten benötigt man Verstärker oder Relais-Schaltungen. Die Eingänge des Raspi sind nicht 5-Volt-tolerant. Spannungen über 3,3 Volt oder auch Kurzschlüsse an den GPIO-Pins zerstören das SoC; angeschlossene Schaltungen sollten deshalb unbedingt Strom und Spannung begrenzen und wo immer möglich galvanisch trennen.

Einige der PINs übernehmen zusätzlich Spezialaufgaben als serielle Schnittstelle (TTL, I2C, SPI), über die weitere Peripherie, zum Beispiel LED-Treiber oder Porterweiterungen angeschlossen werden kann. Außerdem sind auf der Stiftleiste auch Anschlüsse für Versorgungspannungen (3,3 und 5 Volt) enthalten. Die Leistungsfähigkeit dieser Spannungsversorgung ist aber gering.

Die analoge Sound-Ausgabe über die Kopfhörerbuchse (3,5 Millimeter) ist nicht sonderlich gut, da sie nicht von einem Sound-Chip, sondern direkt vom SoC mittels Pulsweitenmodulation kommt. Auf dem HDMI-Port liegt aber ein digitaler Audioausgang, über den der Raspi auch als MP3-Player oder dergleichen fungiert.

Weichteile

Der Raspi benötigt ein auf seinen Chip und dessen ARM-Architektur zugeschnittenes Betriebssystem. In Betracht kommen verschiedene angepasste Linux-Distributionen wie Raspian oder Pidora, die es im Netz zum freien Download gibt. Eine spezielle ARM-Version von Windows 10 läuft ebenfalls auf neueren Raspis, ist aber nur für IoT-Sensoren gedacht (siehe c’t 13/15, S. 148).

Das Betriebssystem kommt auf eine MicroSD-Karte; der Slot dafür befindet sich auf der Unterseite der Platine. Sonstige PC-Peripherie wird per USB 2.0 angebunden – USB 3.0, SATA oder PCIe kennt der Raspi nicht. Ein USB-Ethernet-Adapter ist bereits auf der Platine verbaut und als RJ45-Anschluss herausgeführt. Ebenso vier USB-A-Buchsen. Tastatur, Maus, aber auch etwa WLAN- oder Bluetooth-Adapter und andere Peripherie kann man darüber nachrüsten. Die beiden Funkverbindungen sind ab Raspi-Version 3 bereits auf der Platine mit verbaut.

Eine eigene Stromversorgung hat der Raspi nicht. Er benötigt ein handelsübliches USB-Netzteil, das mindestens 1 Ampere Strom liefert und über eine Micro-USB-Buchse angeschlossen wird. Ein Spannungsregler-IC wandelt die Eingangsspannung in die vom SoC und den weiteren Chips benötigten 3,3 und 1,8 Volt um. (tig@ct.de)