[기타] [타이젠] 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
이 글을 페이스북으로 퍼가기 이 글을 트위터로 퍼가기 이 글을 카카오스토리로 퍼가기 이 글을 밴드로 퍼가기

임베디드 보드

번호 제목 글쓴이 날짜 조회수
52 아두이노 [강좌] 51. 와이파이 통신 (5) - WebServer 예제 (2) icon 양재동메이커 03-21 22,552
51 아두이노 [강좌] 50. 와이파이 통신 (4) - WebServer 예제 icon 양재동메이커 03-21 22,438
50 아두이노 [강좌] 49. 와이파이 통신 (3) - WebClient 예제 icon 양재동메이커 03-21 26,128
49 아두이노 [강좌] 48. 와이파이 통신 (2) - 커맨드 모드 사용하기 (WiFly 쉴드) icon 양재동메이커 03-20 20,728
48 아두이노 [강좌] 47. 와이파이 통신 (1) - 와이파이란 무엇인가 icon 양재동메이커 03-20 25,791
47 아두이노 [강좌] 46. 블루투스 통신 (5) - 프로토콜 만들기 (2) icon 양재동메이커 03-20 20,739
46 아두이노 [강좌] 45. 블루투스 통신 (4) - 프로토콜 만들기 (1) icon 양재동메이커 03-20 21,813
45 아두이노 [강좌] 44. 블루투스 통신 (3) - RN42 모듈에서 직접 접속하기 icon 양재동메이커 03-20 18,734
44 아두이노 [강좌] 43. 블루투스 통신 (2) - 스마트폰과 통신하기 icon 양재동메이커 03-20 20,934
43 아두이노 [강좌] 42. 블루투스 통신 (1) - RN42 블루투스 모듈 실습하기 icon 양재동메이커 03-20 23,209
42 아두이노 [강좌] 41. 서보 모터 (2) - Servo 함수 알아보기 icon 양재동메이커 03-20 24,513
41 아두이노 [아두이노 강좌] 40. 서보 모터 (1) - 서보 모터 동작 방식 icon 양재동메이커 03-20 25,209
40 아두이노 [강좌] 39. 스텝 모터 (3) - 모터 드라이버 EasyDriver(A3967) 사용하기 icon 양재동메이커 03-20 20,445
39 아두이노 [강좌] 38. 스텝 모터 (2) - Stepper 함수 알아보기 icon 양재동메이커 03-20 24,603
38 아두이노 [강좌] 37. 스텝 모터 (1) - 스텝 모터 동작 방식 icon 양재동메이커 03-20 21,743
37 아두이노 [강좌] 36. DC 모터 (2) - DC 모터 드라이버 실습하기 (TB6612FNG) icon 양재동메이커 03-20 20,823
36 아두이노 [강좌] 35. DC 모터 (1) - DC 모터 동작 방식 icon 양재동메이커 03-20 23,492
35 아두이노 [강좌] 34. SPI 통신 (3) - 기압 센서(MPL115A1) 실습하기 icon 양재동메이커 03-20 19,769
34 아두이노 [강좌] 33. SPI 통신 (2) – SPI 함수 알아보기 icon 양재동메이커 03-20 28,614
33 아두이노 [강좌] 32. SPI 통신 (1) - SPI 통신이란 무엇인가 icon 양재동메이커 03-20 32,866