shark_xl.h 764 B

1234567891011121314151617181920212223242526272829303132333435
  1. #pragma once
  2. #include "shark_types.h"
  3. #define CONFIG_XL_MIN 50
  4. #define CONFIG_XL_MAX 100
  5. #define CONFIG_XL_TICKS 200
  6. #define GPIO_RCU_XL RCU_GPIOB
  7. #define GPIO_PORT_XL GPIOB
  8. #define GPIO_PIN_XL GPIO_PIN_7
  9. #define EXTI_PORT_XL GPIO_PORT_SOURCE_GPIOB
  10. #define EXTI_PIN_XL GPIO_PIN_SOURCE_7
  11. #define EXTI_XL EXTI_7
  12. #define SHARK_XL_DEBOUNCE 10
  13. extern shark_u16 shark_xl_ticks;
  14. extern shark_u8 shark_xl_skip;
  15. extern shark_u16 shark_xl_speed_max;
  16. extern shark_u16 shark_xl_speed_tmp;
  17. extern shark_u16 shark_xl_speed;
  18. extern shark_u8 shark_xl_detected;
  19. void shark_xl_init(void);
  20. void shark_xl_tick(void);
  21. void shark_xl_isr(void);
  22. static shark_bool shark_xl_check(void)
  23. {
  24. return shark_xl_speed > CONFIG_XL_MIN;
  25. }