Hardware Abstraction Layer for FreeRTOS
capture_software.h
Go to the documentation of this file.
1 #ifndef CAPTURE_SOFTWARE_H_
2 #define CAPTURE_SOFTWARE_H_
3 #include <gpio.h>
4 #include <rtc.h>
6 #include <capture.h>
7 #define CAPTURE_PRV
8 #include <capture_prv.h>
9 struct capture_software {
10  struct capture_generic gen;
11  struct gpio_pin *pin;
12  struct rtc *rtc;
13  bool (*callback)(struct capture *capture, uint32_t index, uint64_t tiem, void *data);
14  void *data;
15  struct timespec oldtime;
16  uint64_t time;
17  uint32_t index;
18 };
19 extern const struct capture_ops software_capture_ops;
21 int32_t capture_software_connect(struct capture *c, struct gpio_pin *pin, struct rtc *rtc);
22 
23 #define ADD_CAPTURE_SOFTWARE(id) \
24  struct capture_software capture_software_##id = { \
25  CAPTURE_INIT_DEV(software) \
26  HAL_NAME("Software Capture " #id) \
27  }; \
28  CAPTURE_ADDDEV(software, capture_software_##id)
29 #define CAPTURE_SOFTWARE_ID(id) HAL_GET_ID(capture, software, capture_software_##id)
30 #endif
capture.h
capture_prv.h
capture_software_connect
int32_t capture_software_connect(struct capture *c, struct gpio_pin *pin, struct rtc *rtc)
capture_generic
Definition: capture.h:43
gpio.h
rtc.h
timespec
Definition: rtc.h:87