37#ifndef DRIVER_IR_REMOTE_H
38#define DRIVER_IR_REMOTE_H
62#ifndef IR_REMOTE_MAX_RANGE
63 #define IR_REMOTE_MAX_RANGE 0.20f
155#define DRIVER_IR_REMOTE_LINK_INIT(HANDLE, STRUCTURE) memset(HANDLE, 0, sizeof(STRUCTURE))
163#define DRIVER_IR_REMOTE_LINK_TIMESTAMP_READ(HANDLE, FUC) (HANDLE)->timestamp_read = FUC
171#define DRIVER_IR_REMOTE_LINK_DELAY_MS(HANDLE, FUC) (HANDLE)->delay_ms = FUC
179#define DRIVER_IR_REMOTE_LINK_DEBUG_PRINT(HANDLE, FUC) (HANDLE)->debug_print = FUC
187#define DRIVER_IR_REMOTE_LINK_RECEIVE_CALLBACK(HANDLE, FUC) (HANDLE)->receive_callback = FUC
uint8_t ir_remote_irq_handler(ir_remote_handle_t *handle)
irq handler
uint8_t ir_remote_init(ir_remote_handle_t *handle)
initialize the chip
uint8_t ir_remote_info(ir_remote_info_t *info)
get chip's information
struct ir_remote_info_s ir_remote_info_t
ir_remote information structure definition
struct ir_remote_decode_s ir_remote_decode_t
ir_remote decode structure definition
struct ir_remote_handle_s ir_remote_handle_t
ir_remote handle structure definition
uint8_t ir_remote_deinit(ir_remote_handle_t *handle)
close the chip
ir_remote_status_t
ir_remote status enumeration definition
struct ir_remote_time_s ir_remote_time_t
ir_remote time structure definition
struct ir_remote_s ir_remote_t
ir_remote structure definition
@ IR_REMOTE_STATUS_REPEAT
@ IR_REMOTE_STATUS_FRAME_INVALID
@ IR_REMOTE_STATUS_CMD_ERR
@ IR_REMOTE_STATUS_ADDR_ERR
ir_remote decode structure definition
ir_remote handle structure definition
ir_remote_decode_t decode[128]
void(* delay_ms)(uint32_t ms)
void(* debug_print)(const char *const fmt,...)
uint8_t(* timestamp_read)(ir_remote_time_t *t)
void(* receive_callback)(ir_remote_t *data)
ir_remote_time_t last_time
ir_remote information structure definition
float supply_voltage_max_v
char manufacturer_name[32]
float supply_voltage_min_v
ir_remote structure definition
ir_remote time structure definition