From 39d053ef74f32a5cc11ba0f8f4d64faab1036ac9 Mon Sep 17 00:00:00 2001 From: zhangkai25 Date: Thu, 25 Apr 2024 14:16:44 +0800 Subject: [PATCH] apps/examples: Add test of edges counting at capture Description: Add test of the function of counting cap edges Signed-off-by: zhangkai25 --- examples/capture/cap_main.c | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/examples/capture/cap_main.c b/examples/capture/cap_main.c index d584dad03..f8a47cda5 100644 --- a/examples/capture/cap_main.c +++ b/examples/capture/cap_main.c @@ -213,6 +213,7 @@ int main(int argc, FAR char *argv[]) { int8_t dutycycle; int32_t frequence; + int32_t edges; int fd; int exitval = EXIT_SUCCESS; int ret; @@ -290,6 +291,24 @@ int main(int argc, FAR char *argv[]) printf("pwm frequence: %"PRId32" Hz \n", frequence); } + /* Get the edges data using the ioctl */ + + ret = ioctl(fd, CAPIOC_EDGES, + (unsigned long)((uintptr_t)&edges)); + if (ret < 0) + { + printf("cap_main: ioctl(CAPIOC_EDGES) failed: %d\n", errno); + exitval = EXIT_FAILURE; + goto errout_with_dev; + } + + /* Print the sample data on successful return */ + + else + { + printf("pwm edges counting: %"PRId32" \n", edges); + } + /* Delay a little bit */ usleep(g_capexample.delay * 1000);