feat 更新角度闭环相关功能

This commit is contained in:
2024-01-16 20:03:21 +08:00
parent 16ead48bba
commit 3bc5e3cf93
19 changed files with 908 additions and 92 deletions

View File

@@ -1,32 +1,25 @@
#include "jj_param.h"
#include "./page/page_ui_widget.h"
#include "./page/page.h"
#include "zf_common_headfile.h"
#include "jj_motion.h"
PARAM_INFO Param_Data[DATA_NUM];
soft_iic_info_struct eeprom_param;
TYPE_UNION iic_buffer[DATA_IN_FLASH_NUM];
float data0 = 10.0f;
float data1 = 10.0f;
float data2 = 15;
float data3 = 100.01f;
float data4 = 1.04f;
float data5 = 4.0f;
float data6 = 5.1f;
void jj_param_eeprom_init()
{
soft_iic_init(&eeprom_param, K24C02_DEV_ADDR, K24C02_SOFT_IIC_DELAY, K24C02_SCL_PIN, K24C02_SDA_PIN); // eeprom初始化
PARAM_REG(DATA0, &data0, EFLOAT, 1, "m0_p"); // 注冊
PARAM_REG(DATA1, &data1, EFLOAT, 1, "m1_p"); // 注冊
PARAM_REG(DATA2, &data2, EFLOAT, 1, "m1_i"); // 注冊
PARAM_REG(DATA3, &data3, EFLOAT, 1, "m1_d"); // 注冊
PARAM_REG(DATA4, &data4, EFLOAT, 1, "m2_p"); // 注冊
PARAM_REG(DATA5, &data5, EFLOAT, 1, "m2_i"); // 注冊
PARAM_REG(DATA6, &data6, EFLOAT, 1, "m2_d"); // 注冊
PARAM_REG(angle_Kp, &an_Kp, EFLOAT, 1, "an_P"); // 注冊
PARAM_REG(angle_Ki, &an_Ki, EFLOAT, 1, "an_I"); // 注冊
PARAM_REG(angle_Kd, &an_Kd, EFLOAT, 1, "an_D"); // 注冊
PARAM_REG(imgax_Kp, &im_Kp, EFLOAT, 1, "im_P"); // 注冊
PARAM_REG(imgax_Ki, &im_Ki, EFLOAT, 1, "im_I"); // 注冊
PARAM_REG(imgax_Kd, &im_Kd, EFLOAT, 1, "im_D"); // 注冊
for (uint8 i = 0; i < DATA_IN_FLASH_NUM ; i++) {
for (uint8 i = 0; i < DATA_IN_FLASH_NUM; i++) {
soft_iic_read_8bit_registers(&eeprom_param, 4*i, (uint8 *)&iic_buffer[i], 4);
soft_iic_read_8bit_registers(&eeprom_param, 4 * i, (uint8 *)&iic_buffer[i], 4);
switch (Param_Data[i].type) {
case EFLOAT:
*((float *)(Param_Data[i].p_data)) =
@@ -43,7 +36,7 @@ void jj_param_eeprom_init()
default:
break;
}
system_delay_ms(10);
system_delay_ms(10);
}
}
/**
@@ -66,7 +59,7 @@ void jj_param_update()
default:
break;
}
soft_iic_write_8bit_registers(&eeprom_param, 4*i , (uint8 *)&iic_buffer[i], 4);
system_delay_ms(10);
soft_iic_write_8bit_registers(&eeprom_param, 4 * i, (uint8 *)&iic_buffer[i], 4);
system_delay_ms(10);
}
}