wiringPi 로 종료버튼 만들어 사용하는 방법



  • 파이썬으로는 예제가 있는데 wiringPi 로 os.system("sudo shutdown -r now") 를 어떻게 호출해서 사용하죠?

    #include <stdio.h>
    #include <wiringPi.h>
    
    #define HALT_SW	23
    #define LED	 24
    
    void LED_Toggle(void);
    
    int main(void)
    {
    	unsigned char key;
    
      if(wiringPiSetupGpio() == -1)
        return 1;
    
      pinMode(HALT_SW, INPUT);
      pinMode(LED, OUTPUT);
    
      while(1) {
    	
    
    		if(digitalRead(HALT_SW) == 1) {
    			printf("key is high\r\n");	
    		}
    		else {
    			printf("key is low\r\n");	
    			os.system("sudo shutdown -h now");
    			sleep(1);
    		}
    
    		LED_Toggle();
    
        delay(500);
      }
    
      return 0;
    }
    
    void LED_Toggle(void)
    {
    	static unsigned char led = 0;
    
    	if(led == 0) {
    		led = 1;;
    		digitalWrite(LED, 0);
    	}
    	else {
    		led = 0;
    		digitalWrite(LED, 1);
    	}
    	
    }
    

    이렇게 사용하면 에러가 납니다.


  • Global Moderator

    @dreamely 안녕하세요.
    산딸기마을 이장 나무꾼 입니다.

    답글을 한 줄 알았는데, 놓친 것 같아 글을 남겨둡니다.


답글을 작성하기 위해 로그인
 

Rasplay Forum 사이트로의 연결이 끊어졌습니다. 다시 연결을 시도하는동안 잠시만 기다려 주십시오.