V124 1.修正功率配置过程,避免升功率或降功率时配置瞬间可能超出目标功率值的问题;2.修正上一版本配置功率时按下确认键,导致瞬间功率下降问题;3.调整LCD配置功率上限为衰减器最大上限;4.修正RS485通讯问题;

This commit is contained in:
2026-07-21 17:30:38 +08:00
parent 7601c270d5
commit b03e270dab
17 changed files with 310 additions and 53 deletions
+37 -16
View File
@@ -916,6 +916,7 @@ static void calc_fwd(void)
}
/* PR10 DEBUG: 端到端验证用,标定确认后可删 */
#if DBG_PR_FSSI_FWD
{
static uint8 dbg_cnt = 0;
if(++dbg_cnt >= 5){ dbg_cnt = 0;
@@ -925,6 +926,7 @@ static void calc_fwd(void)
atsc_para.ad3_para.power_ref, atsc_para.rf_para.rf);
}
}
#endif
#endif
}
@@ -3660,6 +3662,36 @@ static void refresh_sys1(void *parg,void *parv)
#endif
}
void apply_rf_power_para(S_RF_PARA *ppara)
{
uint16 limited_power;
uint16 rejected_steps;
limited_power = fpga_limit_power_target(&atsc_para.we_para,
&atsc_para.rf_para,
ppara->power);
if(limited_power < ppara->power)
{
rejected_steps = ppara->power - limited_power;
ppara->power = limited_power;
if(ppara->db >= rejected_steps)
ppara->db -= rejected_steps;
else
ppara->db = 0;
}
if(ppara->power == atsc_para.rf_para.power)
return;
turn_off_rf_agc_state(E_CHG_TX_POWER);
ppara->agc = 0;
fpga_save_power(&atsc_para.we_para, ppara);
atsc_para.rf_para.power = ppara->power;
atsc_para.rf_para.db = ppara->db;
e2rom_save_power(&atsc_para.rf_para);
}
//" TX RF POWER AGC SSREF LVL: "
static void refresh_rf1(void *parg,void *parv)
{
@@ -3757,20 +3789,7 @@ static void refresh_rf1(void *parg,void *parv)
if(para_change_flag==TRUE)
{
if(ppara->power!=atsc_para.rf_para.power)
{
turn_off_rf_agc_state(E_CHG_TX_POWER);
ppara->agc = 0;
fpga_save_power(&atsc_para.we_para,ppara);
atsc_para.rf_para.power = ppara->power;
atsc_para.rf_para.db = ppara->db;
e2rom_save_power(&atsc_para.rf_para);
/*if(ppara->agc) //由OFF->ON时发送 判断有效标志
{
fpga_save_agc_vol();
}*/
}
apply_rf_power_para(ppara);
}
}
@@ -8132,7 +8151,8 @@ static BOOL proc_key_rf1(void *parg,uint8 key)
#endif
if(atsc_para.wj_para.p_c)
{
if((ppara->power<RF_POWER_P_C_ON)&&(ppara->db<RF_POWER_DB_MAX)&&(ppara->power<atsc_para.ad3_para.max_power))
if((ppara->power<RF_POWER_P_C_ON)&&(ppara->db<RF_POWER_DB_MAX)&&(ppara->power<atsc_para.ad3_para.max_power) &&
(fpga_limit_power_target(&atsc_para.we_para, ppara, ppara->power+1)>ppara->power))
{
ppara->power++;
ppara->db++;
@@ -8140,7 +8160,8 @@ static BOOL proc_key_rf1(void *parg,uint8 key)
}
else
{
if((ppara->power<RF_POWER_MAX)&&(ppara->db<RF_POWER_DB_MAX)&&(ppara->power<atsc_para.ad3_para.max_power))
if((ppara->power<RF_POWER_MAX)&&(ppara->db<RF_POWER_DB_MAX)&&(ppara->power<atsc_para.ad3_para.max_power) &&
(fpga_limit_power_target(&atsc_para.we_para, ppara, ppara->power+1)>ppara->power))
{
ppara->power++;
ppara->db++;