From: kibak.yoon Date: Fri, 1 Sep 2017 09:28:57 +0000 (+0900) Subject: test X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=5392e5ebbea0814c3da405ad1026f3e0f2188089;p=platform%2Fcore%2Fapi%2Fperipheral-io.git test Change-Id: I12bf1eff8f6e938ddec786e5f1da37281396ce0e Signed-off-by: kibak.yoon --- diff --git a/test/test.c b/test/test.c new file mode 100644 index 0000000..c5580d8 --- /dev/null +++ b/test/test.c @@ -0,0 +1,54 @@ +#include +#include +#include +#include +#include + +#define RETURN_IF_ERROR(err) \ +if (err < 0) { \ + printf("[%d] Error : %d", __LINE__, err); \ + return 0; \ +} + +#define INT_PIN 19 + +GMainLoop *main_loop; + +static void gpio_test(gpio_isr_cb_s *data, void *user_data) +{ + int value; + peripheral_gpio_h gpio = user_data; + + peripheral_gpio_read(gpio, &value); + + printf("Interrupted : %d, %d\n", value, data->value); +} + +int main(int argc, char *argv[]) +{ + peripheral_gpio_h gpio = NULL; + int err; + + err = peripheral_gpio_open(INT_PIN, &gpio); + RETURN_IF_ERROR(err); + + err = peripheral_gpio_set_direction(gpio, PERIPHERAL_GPIO_DIRECTION_IN); + RETURN_IF_ERROR(err); + + err = peripheral_gpio_set_edge_mode(gpio, PERIPHERAL_GPIO_EDGE_RISING); + RETURN_IF_ERROR(err); + + err = peripheral_gpio_register_cb(gpio, gpio_test, gpio); + RETURN_IF_ERROR(err); + + printf("Success!!!!\n"); + + main_loop = g_main_loop_new(NULL, FALSE); + g_main_loop_run(main_loop); + g_main_loop_unref(main_loop); + + err = peripheral_gpio_close(gpio); + RETURN_IF_ERROR(err); + + return 0; +}