2017年2月14日火曜日

mbed InterruptInのテスト

割り込み入力のInterruptInは「Nucleo F401REでmbedのInterruptInが動作しない。」でスイッチの割込みを試してみたが、外部信号で割込みをかけるテストをしてみた。


自作の「矩形波だけのファンクションジェネレータ」で矩形波を出力して、割込みをかけた。

main.cpp

#include "mbed.h"
#include "rtos.h"

DigitalOut led(LED1);

InterruptIn Int1(PC_4);

void flip()
{
    led = !led;
}
    
int main()
{
    printf("InterruptIn_Test2\n");
    Int1.rise(&flip);
    
    while(1) {
        Thread::wait(1);
    }
}

割り込み信号のRising Edgeで割り込みをかけ、LEDを反転させている。


ch1:割込み信号 ch2:LEDへの出力

Int1.fall(&flip); としてFalling Edgeも試したが動作した。