Documentation
Includes
stdint.h
#include "stdint.h"
stdbool.h
#include "stdbool.h"
tuya_cloud_types.h
#include "tuya_cloud_types.h"
tuya_hal_mutex.h
#include "tuya_hal_mutex.h"
tuya_hal_semaphore.h
#include "tuya_hal_semaphore.h"
uni_log.h
#include "uni_log.h"
Macros
Marco __TUYA_DRV_H__
#define __TUYA_DRV_H__
Marco TUYA_DRV_ASSRET(__EXPRESS)
#define TUYA_DRV_ASSRET(__EXPRESS) \
if (!(__EXPRESS)) { \
PR_ERR("TUYA DRV ASSERT "#__EXPRESS""); \
return OPRT_INVALID_PARM; \
}
Functions
Func tuya_driver_find
void *tuya_driver_find(uint8_t type, uint8_t port);
Func tuya_driver_register
int tuya_driver_register(tuya_drv_node_t *node, uint8_t type, uint8_t port);
Vars
Consts
Types
Typedefs
Typedef tuya_drv_flag_t;
typedef enum {
TUYA_DRV_INT_RX_FLAG = 1,
TUYA_DRV_INT_TX_FLAG = 2,
TUYA_DRV_DMA_RX_FLAG = 4,
TUYA_DRV_DMA_TX_FLAG = 8,
TUYA_DRV_NONBLOCK_FLAG = 16,
} tuya_drv_flag_t;
Typedef tuya_drv_cmd_t;
typedef enum {
TUYA_DRV_RESUME_CMD = 1,
TUYA_DRV_SUSPEND_CMD,
TUYA_DRV_SET_INT_CMD,
TUYA_DRV_CLR_INT_CMD,
TUYA_DRV_SET_ISR_CMD,
TUYA_DRV_CONFIG_CMD,
TUYA_DRV_ISR_MODE_CMD,
TUYA_DRV_CUSTOM_CMD,
} tuya_drv_cmd_t;
Typedef tuya_drv_type_t;
typedef enum {
TUYA_DRV_PIN = 1,
TUYA_DRV_UART,
TUYA_DRV_PWM,
TUYA_DRV_TIMER,
TUYA_DRV_ADC,
TUYA_DRV_I2C,
TUYA_DRV_RTC,
TUYA_DRV_CUSTOM,
} tuya_drv_type_t;
Typedef tuya_drv_event_t;
typedef enum {
TUYA_DRV_TX_EVENT = 1,
TUYA_DRV_RX_EVENT,
TUYA_DRV_DMARX_EVENT,
TUYA_DRV_DMATX_EVENT
} tuya_drv_event_t;
Typedef SLIST_HEAD_DRIVER;
typedef struct slist_head_driver {
struct slist_head *next;
}SLIST_HEAD_DRIVER;
Typedef tuya_drv_node_t;
typedef struct {
SLIST_HEAD_DRIVER list;
uint8_t port;
uint8_t type;
} tuya_drv_node_t;