Technische Informatik; Hardwarenahe Programmierung

DigitalIn Program

Inhalt

Anschließend wird ein Programm für die digitale Eingabe (z.B. drücken eines Tasters) gezeigt. Vergleichen Sie bzw. ergänzen Sie das Programm mit Komponenten der Klassenreferenz der DigitalIn :

Kopiere das Programm in den mbed-Simulator.

DigitalIn.cpp

// Flash an LED while a DigitalIn is true
#include "mbed.h"
DigitalIn enable(BUTTON1);
DigitalOut led(LED1);

int main() {
    while(1) {
        if(enable) {
            led = !led;
        }
        wait(0.25);
    }
}

Import programDigitalIn

Show DigitalIn class with BUTTON1 from mbed simulator

Information

Der Simulator verwendet als Taster den Reset-Knopf des LPC1768 Boards, der in der realen Hardware allerdings wirklich einen Rest des Boards auslöst. Deshalb sollten Sie, wenn Sie Programme aus dem Simulator in der Online IDE verwenden, folgende Zeile an den Anfang Ihres Programmes kopieren:

#define BUTTON1 p14  // push joystick pin

Beim NUCLEO-Board NUClight ist es:

#define BUTTON1 A1  // Taster A1

Ein anderes Programm zeigt wieder den überladenen Operator, wie elegant man den Status eines Tasters einlesen und auf eine Led ausgeben kann (kopiere das Programm in den mbed-Simulator):

#include "mbed.h"

DigitalOut led(LED1);
DigitalIn  button(BUTTON1);

int main() {
    while (1) {
        led = button;   // Equivalent to led.write(button.read())
        wait_ms(50);
    }
}

All wikipages