|
|
@@ -53,29 +53,13 @@ static const s8 g_ac_index[BOARD_TYPE_KZ_NUM][EQU_SLOT_AC_CHN] =
|
|
|
//遥信转换表
|
|
|
s8 g_change_di_index[BOARD_TYPE_KZ_NUM][EQU_DB_YX_NUM] =
|
|
|
{
|
|
|
- {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32}, // 13
|
|
|
- {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32}, // 14 FB_V3_22_8 21,20,19,22,23,24,25,26,27,28,29,30,31,32}
|
|
|
- {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32}, // 15
|
|
|
- {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 00, 00, 00, 00, 00, 00, 00, 00, 00, 00, 00, 00, 00}, // 16 FBV1_19_6
|
|
|
- {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32}, // 17 FB_V3_22_12
|
|
|
- {1, 2, 3, 5, 7, 9, 11, 13, 15, 19, 21, 23, 24, 18, 17, 4, 6, 8, 10, 12, 14, 16, 20, 22, 00, 00, 00, 00, 00, 00, 00, 00}, // 18 null
|
|
|
- {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32}, // 19 null
|
|
|
- {1, 2, 3, 5, 7, 9, 11, 13, 15, 19, 21, 23, 24, 18, 17, 4, 6, 8, 10, 12, 14, 16, 20, 22, 00, 00, 00, 00, 00, 00, 00, 00}, // 20 FB_V4_24_12
|
|
|
- {1, 2, 3, 5, 7, 9, 11, 13, 15, 19, 21, 23, 24, 18, 17, 4, 6, 8, 10, 12, 14, 16, 20, 22, 00, 00, 00, 00, 00, 00, 00, 00}, // 21 FB_V4.1_24_12
|
|
|
- {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 24, 23, 21, 22, 25, 26, 27, 28, 29, 30, 31, 32}, // 22 FB_V3.1_22_12
|
|
|
- {2, 4, 6, 8, 10, 12, 14, 15, 16, 1, 3, 5, 7, 9, 11, 13, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32}, // 23 FB_V3D_122_12
|
|
|
- {1, 3, 5, 7, 9, 11, 13, 15, 19, 21, 25, 27, 29, 2, 4, 6, 8, 10, 12, 14, 16, 20, 22, 26, 28, 30, 17, 18, 23, 24, 00, 00}, // 24 V4_D_30_12
|
|
|
+ {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32},
|
|
|
};
|
|
|
|
|
|
// 开出对应关系
|
|
|
static const s8 g_do_index[BOARD_TYPE_KZ_NUM][DO_NUM] =
|
|
|
{
|
|
|
{-1,-1,-1,-1-1,-1,-1,-1-1,-1,-1,-1},
|
|
|
-
|
|
|
- {DO_OUT8,DO_OUT0,DO_OUT1,DO_OUT6,DO_OUT5,DO_OUT2,DO_OUT3,DO_OUT4,DO_OUT7,-1}, //14
|
|
|
- {DO_OUT9,DO_OUT0,DO_OUT2,DO_OUT4,DO_OUT6,DO_OUT1,DO_OUT3,DO_OUT5,DO_OUT7,-1}, //15
|
|
|
- {-1,-1,-1,-1-1,-1,-1,-1-1,-1,-1,-1}, // 18 老版本分布式主板类型,不起作用
|
|
|
- {-1,-1,-1,-1-1,-1,-1,-1-1,-1,-1,-1}, // 19 老版本分布式主板类型,不起作用
|
|
|
};
|
|
|
|
|
|
|
|
|
@@ -118,19 +102,18 @@ unsigned int change_di_ch(unsigned int di)
|
|
|
*/
|
|
|
int equ_config_di_yd(void)
|
|
|
{
|
|
|
- u32 i;
|
|
|
- struct equ_config_di *ecd;
|
|
|
+ u32 i;
|
|
|
+ struct equ_config_di *ecd;
|
|
|
|
|
|
- // 用户配置的保持时间、拥有者、类型
|
|
|
- ecd = g_equ_config_di;
|
|
|
- for(i=0;i<g_equ_config->di_num;i++)
|
|
|
- {
|
|
|
- // 开入扫描在156us中断,通过以下算法,得出对应不同防抖延时的最佳动态转换系数,理论误差为156us左右
|
|
|
- g_di_st[ecd->slot][ecd->index].tm_filter = (u32)tRunPara.wYXFD * 1000 / 156;
|
|
|
- ecd++;
|
|
|
- }
|
|
|
+ // 用户配置的保持时间、拥有者、类型
|
|
|
+ ecd = g_equ_config_di;
|
|
|
+ for (i = 0; i < g_equ_config->di_num; i++)
|
|
|
+ {
|
|
|
+ g_di_st[ecd->slot][ecd->index].tm_filter = (u32)tRunPara.wYXFD * 1000;
|
|
|
+ ecd++;
|
|
|
+ }
|
|
|
|
|
|
- return 0;
|
|
|
+ return 0;
|
|
|
}
|
|
|
|
|
|
int equ_config_do_yd(void)
|
|
|
@@ -425,6 +408,7 @@ int equ_get_do_channel(u32 index)
|
|
|
return g_do_index[g_brd_type_kz][index];
|
|
|
}
|
|
|
|
|
|
+#ifdef CPU_FUXI
|
|
|
/**
|
|
|
* @brief 初始化rv核数据
|
|
|
* @author lch (lch_work@foxmail.com)
|
|
|
@@ -438,21 +422,41 @@ int equ_get_do_channel(u32 index)
|
|
|
*/
|
|
|
int equ_init_rv_di(void)
|
|
|
{
|
|
|
-#ifdef CPU_FUXI
|
|
|
struct t_shmdata_di_astime t_di_cfg = {0};
|
|
|
struct equ_config_di *ecd;
|
|
|
|
|
|
ecd = g_equ_config_di;
|
|
|
- rt_printf("g_equ_config->di_num = %d\r\n", g_equ_config->di_num);
|
|
|
+ // rt_printf("g_equ_config->di_num = %d\r\n", g_equ_config->di_num);
|
|
|
for (int i = 0; i < g_equ_config->di_num; i++)
|
|
|
{
|
|
|
t_di_cfg.us_as_time[i] = ecd->filter_time;
|
|
|
ecd++;
|
|
|
}
|
|
|
return shm_packet_write_v2(SHM_ADDR_R_DI_ASTIME, (uint8_t *)&t_di_cfg, sizeof(struct t_shmdata_di_astime));
|
|
|
-#endif
|
|
|
}
|
|
|
|
|
|
+/**
|
|
|
+ * @brief 初始化rv核数据
|
|
|
+ * @author lch (lch_work@foxmail.com)
|
|
|
+ * @version 1.0
|
|
|
+ * @date 20251222
|
|
|
+ * @return * int
|
|
|
+ * @retval none
|
|
|
+ *
|
|
|
+ * @warning none
|
|
|
+ * @note none
|
|
|
+ */
|
|
|
+int equ_reinit_rv_di(void)
|
|
|
+{
|
|
|
+ struct t_shmdata_di_astime t_di_cfg = {0};
|
|
|
+ for (int i = 0; i < g_equ_config->di_num; i++)
|
|
|
+ {
|
|
|
+ t_di_cfg.us_as_time[i] = tRunPara.wYXFD;
|
|
|
+ }
|
|
|
+ return shm_packet_write_v2(SHM_ADDR_R_DI_ASTIME, (uint8_t *)&t_di_cfg, sizeof(struct t_shmdata_di_astime));
|
|
|
+}
|
|
|
+#endif
|
|
|
+
|
|
|
|
|
|
|
|
|
|