From 276856de6c63bbbf3e56cc08dcca00ba10080b7e Mon Sep 17 00:00:00 2001 From: Sadeep Madurange Date: Sun, 7 Sep 2025 17:04:34 +0800 Subject: Door lock with MOSFETs and and without RFM. --- door_lock/fpm.h | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 door_lock/fpm.h (limited to 'door_lock/fpm.h') diff --git a/door_lock/fpm.h b/door_lock/fpm.h new file mode 100644 index 0000000..f424c56 --- /dev/null +++ b/door_lock/fpm.h @@ -0,0 +1,46 @@ +#ifndef FPM_R503_H +#define FPM_R503_H + +#include + +struct fpm_cfg { + uint16_t status; + uint16_t sysid; + uint16_t cap; + uint16_t sec_level; + uint8_t addr[4]; + uint16_t pkt_size; + uint16_t baud; +}; + +typedef enum { + NIL = 0x00, + RED = 0x01, + BLUE = 0x02, + PURPLE = 0x03 +} LED_COLOR; + +typedef enum { + BREATHE = 0x01, + FLASH = 0x02, + ON = 0x03, + OFF = 0x04, + GRAD_ON = 0x05, + GRAD_OFF = 0x06, +} LED_CTRL; + +uint8_t fpm_init(void); + +uint8_t fpm_get_cfg(struct fpm_cfg *cfg); + +uint8_t fpm_set_pwd(uint32_t pwd); + +uint16_t fpm_get_count(void); + +uint8_t fpm_enroll(void); + +uint16_t fpm_match(void); + +void fpm_led(LED_CTRL ctrl, LED_COLOR color, uint8_t count); + +#endif /* FPM_R50_H */ -- cgit v1.2.3