Technische Informatik; Hardwarenahe Programmierung

You are viewing an older revision! See the latest version

InterruptIn

Inhalt

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

Die InterruptIn-Schnittstelle wird verwendet, um ein Ereignis auszulösen, wenn sich ein digitaler Eingangspin ändert (kopiere das Programm in den mbed-Simulator):

#include "mbed.h"
//#define BUTTON1 p14  // push joystick pin mbed PC1768
//#define BUTTON1 A1  // Taster A1 NUCLEO-L432KC
 
InterruptIn button(BUTTON1);
DigitalOut led(LED1);
DigitalOut flash(LED4);
 
void flip() {
    led = !led;
}
 
int main() {
    button.rise(&flip);  // attach the address of the flip function to the rising edge
    while(1) {           // wait around, interrupts will interrupt this!
        flash = !flash;
        wait(0.25);
    }
}

All wikipages