From d8b27510426e95470f9579395f50f353bd105d83 Mon Sep 17 00:00:00 2001 From: Gediminas Jakutis Date: Thu, 10 Nov 2016 09:16:35 +0200 Subject: gpio: implement some more features. --- include/rin/gpio.h | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'include/rin') diff --git a/include/rin/gpio.h b/include/rin/gpio.h index 83ca934..1ca2169 100644 --- a/include/rin/gpio.h +++ b/include/rin/gpio.h @@ -21,16 +21,32 @@ #ifndef LIBRIN_GPIO_INCLUDED #define LIBRIN_GPIO_INCLUDED +#include +#include + enum rin_gpiotype { rin_gpio_in, rin_gpio_out, rin_gpio_closed }; +struct rin_gpio_dataset { + unsigned int signalpin; + unsigned int clockpin; + struct timespec *pulseduration; + struct timespec *delay; + void *data; + size_t len; +}; + unsigned int rin_gpio_open(const unsigned int num, const enum rin_gpiotype type); unsigned int rin_gpio_close(const unsigned int num); unsigned int rin_gpio_setval(const unsigned int num, const unsigned int val); unsigned int rin_gpio_readval(const unsigned int num, unsigned int * const val); +unsigned int rin_gpio_writesequence(const struct rin_gpio_dataset * const dataset); +unsigned int rin_gpio_on(const unsigned int num); +unsigned int rin_gpio_off(const unsigned int num); +unsigned int rin_gpio_pulse(const unsigned int num, const struct timespec * const pulselen); unsigned int rin_gpio_pin_exists(const unsigned int pin); unsigned int rin_gpio_get_pincount(void); -- cgit v1.2.3