winringpiISR中断未启动

时间:2019-12-19 20:53:54

标签: raspberry-pi raspberry-pi3 wiringpi

在以下代码中,函数处理程序将无法启动。此代码以前运行了几个月。重新启动后,它突然停止工作。任何想法,如果这可能是缺少的库或类似的东西?编译工作没有任何错误。

#include <wiringPi.h>
#include <stdlib.h>
#include <stdio.h>
#include <unistd.h>


#define DATA_PIN 8  // wiringPi GPIO 2 (P1.13)

void handler(){

    printf("start handler\n");
    fflush(stdout);
}

int main(int argc, char *argv[]){

    int retS = wiringPiSetup();
    if(retS == -1){
            printf("no wiring pi detected\n");
            return 0; 
    }

    printf("retS: %d\n",retS);
    fflush(stdout);

    int ret =  wiringPiISR(DATA_PIN,INT_EDGE_BOTH,&handler) ;

    if (ret < 0) 
    {
            printf("Ret: %d\n",ret);
            exit(0);
    }

    while(true){
    usleep(1000);
    }  

    exit(0);
}

0 个答案:

没有答案