[기타] [타이젠] GPIO의 디지탈 출력과 입력 인터럽트의 C++ Class 제작

타이젠의 How to Create Basic Smart Light App 기본 예제에서 GPIO의 디지털 출력과 입력 인터럽트를 처리 로직이 c로 작성 되어 있어 사용의 편의성을 주기 위하여 c++ 작성 하여 공유 합니다.


10bd188d5baa8beb8255f1c216f56ab1.jpg


GPIO_Digital_Out Class는 GPIO에 디지탈 출력 시 사용되며, 사용 PIN 할당 후 = 연산자를 사용하여 값을 넣으면 해당 포트에 데이타 전송하도록 구현

#define SENSOR_LED_GPIO_NUMBER (24)


GPIO_Digital_Out GPIOLedOut( SENSOR_LED_GPIO_NUMBER );


static void motion_interrupted_cb(peripheral_gpio_h gpio, peripheral_error_e error, void *user_data)

{

GPIOLedOut = MotionIn.read();

}


GPIO_Digital_Interrrupt Class는 GPIO의 디지털 입력시 사용 되며 상단에 사용 PIN 할당 후 인터럽트를 처리할 Call Back함수를 정의 후 입력 신호의 rise,fall,both을 선택하여 Call Back함수를 등록하여 줌 

호출 되는 Call Back 함수의 파라미터 값들은 tizen에서 정의 되어 있어 형식을 맞출어여 됨

#define SENSOR_MOTION_GPIO_NUMBER (18)


GPIO_Digital_Interrrupt MotionIn(SENSOR_MOTION_GPIO_NUMBER);


static void motion_interrupted_cb(peripheral_gpio_h gpio, peripheral_error_e error, void *user_data)

{

GPIOLedOut = MotionIn.read();

}


void service_app_control(app_control_h app_control, void *data)
{
MotionIn.both(motion_interrupted_cb );
}







0
0
이 글을 페이스북으로 퍼가기 이 글을 트위터로 퍼가기 이 글을 카카오스토리로 퍼가기 이 글을 밴드로 퍼가기

임베디드 보드

번호 제목 글쓴이 날짜 조회수
78 마이크로비트 아날로그 홀 센서 활용 (아두이노 센서 활용) icon HellMaker 08-08 19,394
77 마이크로비트 마이크로비트로 가위바위보 게임 일산메이커 08-01 18,679
76 마이크로비트 마이크로 비트로 led 문자 출력하기 2 #microbit #마이크로비트 #led Wavy 07-31 18,298
75 마이크로비트 마이크로비트 - led로 문자출력하기 #마이크로비트 #led #문자 #microbit +1 Wavy 07-30 17,923
74 마이크로비트 마이크로 비트로 간단하게 led켜기 (microbit easy led) #microbit #LED #led Wavy 07-24 18,414
73 마이크로비트 마이크로비트 교육자료 - 반응속도 게임 +1 일산메이커 07-19 20,115
72 아두이노 C 언어 비교문에서 == 사용 방법 icon 양재동메이커 04-12 20,806
71 아두이노 [아두이노 실습] 푸쉬버튼 long press, short press 판단하기 icon 양재동메이커 03-27 21,222
70 아두이노 [아두이노 실습] Push button 스위치로 FND 카운트 증가/감소 icon 양재동메이커 03-27 25,770
69 아두이노 Blynk를 사용해 아두이노에서 IoT 맛보기 icon 양재동메이커 03-27 22,512
68 아두이노 아두이노에서 u8glib로 0.96" OLED 사용하기 icon 양재동메이커 03-27 22,236
67 아두이노 아두이노에서 여러개의 스위치를 1개의 analog input핀으로 검사하기 icon 양재동메이커 03-27 20,948
66 아두이노 아두이노에서 RTOS 사용하기 (FreeRTOS in Arduino) icon 양재동메이커 03-27 25,076
65 아두이노 아두이노에서의 delay() 함수 icon 양재동메이커 03-27 19,570
64 아두이노 아두이노의 pinMode()에서 INPUT과 INPUT_PULLUP의 차이 icon 양재동메이커 03-27 21,906
63 아두이노 아두이노등의 임베디드 시스템의 변수 값 오버플로우 문제 icon 양재동메이커 03-27 19,463
62 아두이노 아두이노에서 외부 라이브러리 설치하기 (Install library in arduino) icon 양재동메이커 03-27 21,368
61 아두이노 WS2812 color LED 사용하기 icon 양재동메이커 03-27 19,856
60 아두이노 WS2812와 APA102의 차이 비교 (Comparison between WS2812 and APA102) icon 양재동메이커 03-27 23,007
59 아두이노 [강좌] 51. 와이파이 통신 (5) - WebServer 예제 (2) icon 양재동메이커 03-21 19,390