30#include "stm32f4xx_hal.h"
34#define REG_MODULE_ID 1
35#define REG_FUNCTION_ID 2
36#define REG_ARG_TYPES 3
37#define REG_DATA_START 4
45#define API_ALIGN(x) ( ((x)+3) & 0xFFFC )
46#define STRUCT_COUNT(x) ( sizeof(x) / sizeof(x[0]) )
48#define ARGTYPE_MASK 0x7F
55#define ARGTYPE_PTR 0x80
57#define ARGLEN_PARAM 0x8000
77#define MODULE_GROUP_SHIFT 6
78#define MODULE_GROUP_MASK ( (0xFF << MODULE_GROUP_SHIFT) & 0xFF )
79#define MODULE_GROUP(m) ( (m) >> MODULE_GROUP_SHIFT )
80#define MODULE_ISGROUP(m, g) ( (m) & MODULE_GROUP_MASK == (g) )
81#define MODULE_INDEX(m) ( (m) & ~MODULE_GROUP_MASK )
82#define MODULE_GROUPS 4
83#define NONE_modules 0xff
85typedef HAL_StatusTypeDef (*fptr_0) (void);
86typedef HAL_StatusTypeDef (*fptr_1) (uintptr_t arg0);
87typedef HAL_StatusTypeDef (*fptr_2) (uintptr_t arg0, uintptr_t arg1);
88typedef HAL_StatusTypeDef (*fptr_3) (uintptr_t arg0, uintptr_t arg1, uintptr_t arg2);
89typedef HAL_StatusTypeDef (*fptr_4) (uintptr_t arg0, uintptr_t arg1, uintptr_t arg2, uintptr_t arg3);
90typedef HAL_StatusTypeDef (*fptr_5) (uintptr_t arg0, uintptr_t arg1, uintptr_t arg2, uintptr_t arg3, uintptr_t arg4);
113#define COMMAND_SIZE 1280
116 uint8_t buffer[COMMAND_SIZE];
121extern void exec_fn(uint8_t *data);
uint8_t nargs
Definition api.h:98
uint8_t task_id
Definition api.h:97
uint8_t function_id
Definition api.h:96
uint8_t module_id
Definition api.h:95
uint16_t arg_lens[MAX_ARGS]
Definition api.h:100
uint8_t arg_types[MAX_ARGS]
Definition api.h:99