Nach den Vorstellungen der Entwickler sollte ein erster Zugriff auf die programmierbaren Pins über die Ecken des Calliope erfolgen, wie das beispielhaft in der unteren Abbildung zu sehen ist:
Die Kontaktringe links (-) und rechts (+) neben dem USB-Port liefern Gleichspannung von etwa 3 Volt. Die kurzen Beinchen der LEDs sind allesamt über selbstklebendes Kupferband mit dem Minuspol verbunden. Die langen Beinchen haben Kontakt mit den Ringen P0, P1 und P2 unterhalb des USB-Ports. Mit einer passenden Programmierung können die LEDs zum Leuchten gebracht werden.
Statt Klebeband können auch Verbindungsleitungen mit Krokodilklemmen verwendet werden, wie das aus der Abbildung rechts ersichtlich ist.
Wer es noch professioneller mag, lötet in die Ösen auf dem Calliope Stifte (siehe unten) ein, die es ermöglichen, mit Hilfe von Drahtbrücken Verbindungen zwischen dem Breadboard und den externen Komponenten herzustellen.
Der für die Programmierung nötige Blockcode findet sich im MakeCode-Editor auf der Mittelleiste unter „Fortgeschritten” und „Pins”. Zum An- und Ausschalten dient der Block mit der Beschriftung“Schreibe digitalen Wert von Pin …. auf ….“. Die Bezeichnungen der Pins muss über das zum jeweiligen Board passende Pinout ermittelt werden. Die Pinouts finden sich auf der Calliope-Homepage und entsprechen in etwa der Abbildung unten. In dem weißen Feld auf dem Block steht die „1“ für angeschaltet, die „0“ für ausgeschaltet.
Eine mögliche Anwendung, bei der sechs programmierbare und ein GND-Pin benötigt werden, ist die Nachbildung einer Verkehrsampel. Hier der Aufbau mit Hilfe eines Steckbretts …
… und die dazu passende Block-Programmierung.
Wer sich das Blöcke schieben ersparen möchte, der kopiert den nachfolgenden Java-Script und lässt ihn vom MakeCode-Editor in obigen Blockcode umwandeln.
pins.digitalWritePin(DigitalPin.P1, 1)
pins.digitalWritePin(DigitalPin.P2, 1)
basic.pause(5000)
pins.digitalWritePin(DigitalPin.P3, 1)
basic.pause(2000)
pins.digitalWritePin(DigitalPin.P1, 0)
pins.digitalWritePin(DigitalPin.P3, 0)
pins.digitalWritePin(DigitalPin.P0, 1)
basic.pause(5000)
pins.digitalWritePin(DigitalPin.P0, 0)
pins.digitalWritePin(DigitalPin.P3, 1)
basic.pause(2000)
pins.digitalWritePin(DigitalPin.P3, 0)
pins.digitalWritePin(DigitalPin.P1, 1)
basic.pause(2000)
pins.digitalWritePin(DigitalPin.C17, 1)
basic.pause(2000)
pins.digitalWritePin(DigitalPin.P2, 0)
pins.digitalWritePin(DigitalPin.C17, 0)
pins.digitalWritePin(DigitalPin.C16, 1)
basic.pause(5000)
pins.digitalWritePin(DigitalPin.C16, 0)
pins.digitalWritePin(DigitalPin.C17, 1)
basic.pause(2000)
pins.digitalWritePin(DigitalPin.C17, 0)
Kauftipps: Anschlusskabel mit Krodilklemmen, Steckbrücken, LEDs und Siftleisten.