2024-01-08 22:30:20 +08:00
|
|
|
|
#ifndef _JJ_PARAM_H_
|
|
|
|
|
|
#define _JJ_PARAM_H_
|
|
|
|
|
|
|
2024-01-16 20:03:21 +08:00
|
|
|
|
#include "stdio.h"
|
|
|
|
|
|
#include "ch32v30x.h"
|
|
|
|
|
|
#include "zf_driver_soft_iic.h"
|
2024-01-08 22:30:20 +08:00
|
|
|
|
/**
|
|
|
|
|
|
* @brief 注册需调参数
|
2024-03-02 16:17:34 +08:00
|
|
|
|
*
|
2024-01-08 22:30:20 +08:00
|
|
|
|
*/
|
2024-03-02 16:17:34 +08:00
|
|
|
|
#define PARAM_REG(_data_tag_, _p_data_, _type_, _cmd_, _text_) \
|
|
|
|
|
|
Param_Data[_data_tag_].p_data = (void *)_p_data_; \
|
|
|
|
|
|
Param_Data[_data_tag_].type = _type_; \
|
|
|
|
|
|
Param_Data[_data_tag_].cmd = _cmd_; \
|
2024-01-08 22:30:20 +08:00
|
|
|
|
Param_Data[_data_tag_].text = _text_;
|
2024-03-02 16:17:34 +08:00
|
|
|
|
|
2024-01-08 22:30:20 +08:00
|
|
|
|
typedef enum {
|
2024-03-02 16:17:34 +08:00
|
|
|
|
|
2024-03-23 18:26:03 +08:00
|
|
|
|
Page1_head = 0,
|
|
|
|
|
|
|
|
|
|
|
|
aim_common = Page1_head,
|
2024-03-23 16:53:58 +08:00
|
|
|
|
aim_cross,
|
|
|
|
|
|
aim_cricle,
|
2024-03-23 18:26:03 +08:00
|
|
|
|
aim_barrier,
|
|
|
|
|
|
offset_barrier,
|
2024-06-16 21:52:42 +08:00
|
|
|
|
aim_straight,
|
|
|
|
|
|
aim_turn,
|
|
|
|
|
|
aim_mid,
|
2024-03-02 16:17:34 +08:00
|
|
|
|
Page2_head,
|
|
|
|
|
|
// 第二页参数
|
2024-06-16 21:52:42 +08:00
|
|
|
|
baoguang = Page2_head,
|
2024-07-08 19:14:34 +08:00
|
|
|
|
auto_exp_param,
|
2024-07-13 19:10:00 +08:00
|
|
|
|
barr_time,
|
2024-03-02 16:17:34 +08:00
|
|
|
|
Page3_head,
|
2024-01-08 22:30:20 +08:00
|
|
|
|
DATA_IN_FLASH_NUM,
|
2024-03-02 16:17:34 +08:00
|
|
|
|
|
|
|
|
|
|
delta_x,
|
|
|
|
|
|
delta_y,
|
2024-01-08 22:30:20 +08:00
|
|
|
|
DATA_NUM,
|
|
|
|
|
|
} data_tag_t;
|
2024-01-09 17:20:08 +08:00
|
|
|
|
|
2024-01-08 22:30:20 +08:00
|
|
|
|
typedef enum {
|
|
|
|
|
|
EUINT32,
|
|
|
|
|
|
EINT32,
|
|
|
|
|
|
EFLOAT,
|
2024-03-02 16:17:34 +08:00
|
|
|
|
} ENUM_TYPE;
|
2024-01-08 22:30:20 +08:00
|
|
|
|
|
2024-03-02 16:17:34 +08:00
|
|
|
|
typedef union {
|
2024-01-16 20:03:21 +08:00
|
|
|
|
uint32_t u32;
|
|
|
|
|
|
int32_t s32;
|
2024-01-08 22:30:20 +08:00
|
|
|
|
float f32;
|
2024-03-27 10:58:09 +08:00
|
|
|
|
uint8_t u8[4];
|
2024-03-02 16:17:34 +08:00
|
|
|
|
} TYPE_UNION;
|
2024-01-08 22:30:20 +08:00
|
|
|
|
|
|
|
|
|
|
typedef struct {
|
|
|
|
|
|
void *p_data;
|
|
|
|
|
|
ENUM_TYPE type;
|
2024-03-23 18:26:03 +08:00
|
|
|
|
uint8_t cmd; // 01:仅存储 00:仅显示 02:传输并显示
|
2024-01-08 22:30:20 +08:00
|
|
|
|
char *text;
|
2024-03-02 16:17:34 +08:00
|
|
|
|
} PARAM_INFO;
|
2024-01-08 22:30:20 +08:00
|
|
|
|
extern soft_iic_info_struct eeprom_param;
|
|
|
|
|
|
extern PARAM_INFO Param_Data[DATA_NUM];
|
|
|
|
|
|
extern TYPE_UNION iic_buffer[DATA_IN_FLASH_NUM];
|
2024-03-02 18:17:30 +08:00
|
|
|
|
extern TYPE_UNION tiny_frame_param[20];
|
2024-03-02 16:17:34 +08:00
|
|
|
|
void jj_param_eeprom_init(void);
|
|
|
|
|
|
void jj_param_write(void);
|
|
|
|
|
|
void jj_param_read(void);
|
|
|
|
|
|
extern float data7;
|
2024-07-08 19:14:34 +08:00
|
|
|
|
extern float auto_exp;
|
2024-01-08 22:30:20 +08:00
|
|
|
|
#endif
|