Entwicklungsboard

BeagleBone Black - kompaktes Linux-Board

5. Dezember 2013, 14:01 Uhr | Von Kyle Borgerson
Diesen Artikel anhören

Fortsetzung des Artikels von Teil 1

Entwicklungsumgebung on Board

Die einfachste Möglichkeit, mit dieser GPIO zu experimentieren, ist die Verwendung der Cloud9-IDE. Cloud9 startet automatisch beim Booten, und der Zugriff erfolgt über den Black-eigenen Webserver. Der Browser Epiphany scheint die IDE beim Start zu finden, allerdings kann http:<BeagleBoneBlack-IP-address>:3000 in jedem Browser eingestellt werden. Die Anwendung ist zwar mit der IDE von Arduino vergleichbar, allerdings muss hier kein Code auf die Platine geladen werden. Er wird automatisch im Dateisystem gespeichert. Der Webserver des Black bietet zudem mehrere nützliche Seiten, die auf die Cloud9-IDE verlinken und einige einfache Bonescript-Code-Beispiele erhalten, die interaktiv mit der Platine verwendet werden können.

passend zum Thema

Code-Beispiel „blinked.js“ zur Ansteuerung einer LED.
Listing 1. Code-Beispiel „blinked.js“ zur Ansteuerung einer LED.
© DigiKey

Wie die meisten traditionellen IDEs für eingebettete Anwendungen verfügt auch Cloud9 über Arbeitsbereiche für die Bearbeitung, Validierung, das Debuggen und Testen von Code. Das Schreiben von Code ist ein interaktiver Prozess, der die Prüfung von Variablen und Syntax während der Eingabe umfasst. Cloud9 bietet viele einfache Beispiele, die in node.js JavaScript geschrieben wurden und die Bonescript-Library umfassen. Das Code-Beispiel „blinked.js“ (siehe Listing 1) aktiviert eine der benutzerseitigen LEDs (USR3). Dies kann auf die Verwendung einer der GPIO-Pins erweitert werden, indem eine LED und ein zugehöriger Pull-up-Widerstand dem entsprechenden GPIO-Pin hinzugefügt und die Zuweisung der Veriable ledPin zum jeweiligen GPIO geändert wird, z.B. bone.P8_3.

Als Einstiegs-IDE bietet die Cloud9 eine schnelle und einfache Möglichkeit, kurze Code-Projekte zu schreiben, diese auszuführen und zu debuggen. Das An- und Ausschalten einer LED scheint zwar eine einfache Aufgabe zu sein, es ist jedoch ein wichtiger Schritt, um sich mit der Platine vertraut zu machen.

Die Verwendung von node.js JavaScript scheint die bevorzugte Art der Programmierung des Beagle-Bone Black zu sein. Sie bietet jedenfalls eine einfache Einführung für alle, die nicht mit Programmierung oder anspruchsvolleren Programmiersprachen vertraut sind. Sie stellt aber auch eine einfache Möglichkeit dar, schnell einen Prototyp zu entwickeln. Wer jedoch über eine größere Programmiererfahrung verfügt und auf ein komplexeres Design aus ist, kann auch auf die Programmiersprachen Python und C zurückgreifen. So wie Bonescript die mit Arduino vergleichbaren digitalen und analogen I/O-Befehle in node.js hinzufügt, ist die PyBBIO Library für Python-Entwickler verfügbar.

Im Mittelpunkt des BeagleBone Black steht ein TI-Sitara-Mikroprozessor mit ARM-Cortex-A8-Kern und umfangreicher, integrierter Peripherie.
Bild 2. Im Mittelpunkt des BeagleBone Black steht ein TI-Sitara-Mikroprozessor mit ARM-Cortex-A8-Kern und umfangreicher, integrierter Peripherie.
© DigiKey

Auf die GPIO kann zudem direkt aus dem Linux-Betriebssystem heraus zugegriffen werden. Dies kann direkt über die Platine oder über Remote-Zugriff via SSH erfolgen. Es erfordert zunächst eine korrekte Linux-Signalbezeichnung, die von einem speziellen GPIO-Pin erkannt wird. Weiterhin erfordert es fundierte Kenntnisse über die Arbeit auf Linux-Befehlszeilenebene. Jeder GPIO-Pin verfügt, wenn er verwendet wird, über ein Verzeichnis im Parent-Verzeichnis /sys/class, das die Linux-Signalbezeichnung enthält. So können potenzielle Signal-/GPIO-Konflikte erkannt werden, wenn eines oder mehrere Capes verwendet werden. Beispielsweise wird der Anschluss P8.pin 16 als GPIO46 gekennzeichnet - siehe Listing 2.

Im Listing ist zu erkennen, dass kein Verzeichnis gpio46 vorhanden ist, daher ist das Signal zur Verwendung verfügbar. Bei der Steuerung einer LED, die mit dem Pin verbunden ist, kann man diese durch Hinzufügen einer „1“ in die Linux-Wertetabelle anschalten und mit „0“ abschalten. Nach der Verwendung darf man nicht vergessen, den Export des Verzeichnisses rückgängig zu machen („unexport“), um die Verwendung des Pins freizugeben. Diese Shell-Befehle können auch in die Python-Anweisungen aufgenommen werden.

Egal ob unerfahrener Entwickler eingebetteter Anwendungen, der ein neues Projekt durch Verwendung einer gut dokumentierten Open-Source-Plattform beschleunigen möchte, oder Hobby-Entwickler, der nur etwas Spaß haben will: Das BeagleBone Black stellt eine hervorragende Auswahl dar, auf der man sein Design aufbauen kann.

Der Autor:

Kyle Borgerson 
ist Product Manager bei Digi-Key. Er ist zuständig für Halbleiterprodukte und arbeitet seit 2010 bei Digi-Key. 

kyle.borgerson@digikey.com



  1. BeagleBone Black - kompaktes Linux-Board
  2. Entwicklungsumgebung on Board

Lesen Sie mehr zum Thema


Das könnte Sie auch interessieren

Jetzt kostenfreie Newsletter bestellen!

Weitere Artikel zu Texas Instruments

Weitere Artikel zu Texas Instruments Deutschland GmbH

Weitere Artikel zu Digi-Key Corporation