📄 remkey.c
字号:
/******** DSP MODE 键,子程序 ********/
void key_dsp(bit lr_flag)
{
if ((input_att!=INPUT_AC3)&&(ch_att!=C2_CH)) /*如果为AC-3输入则出错*/
{
kdel=KTIME2; /* 0.6S初始按键延时计算数 */
/******** 存贮高低音子程序 ********/
tre_bass_save();
if (lr_flag)
{
if (dsp_att<8)
dsp_att++; /* DSP_POPS环绕模式为反回开头 */
}
else
{
if (dsp_att>0)
dsp_att--; /* DSP_POPS环绕模式为反回开头 */
}
if (dsp_att==DSP_NO)
tre_bass_restore();
else
dsp_tone_do(); /*取出DSP的高低音*/
string_num=dsp_att+27;
dsp_display();
}
else dis_seterr(); /* 显示出错 */
}
void dsp_display(void)
{
string_att=STRING_PROMPT; /* 设显示为提示方式 */
string_del=STRDEL_PA2; /* 设显示停留时间,大约为1.5秒,1.5秒后为机器状态*/
rkey_speed=RKEY_SP4; /* 设置遥控连发速度 */
par[0]=&dsp_att;
write_abyte();
}
void key_lound(void)
{
if((ch_att!=C2_CH)||(input_att==INPUT_AC3))
{
b_lound=~b_lound;
if(b_lound) screen_num=30; /*ERROR*/
else screen_num=31;
input_data_scroll();
}
else dis_seterr();
}
/******** 存贮高低音子程序 ********/
void tre_bass_save(void)
{
if(dsp_att==DSP_NO)
{
tre_val_bak=tre_val;
bass_val_bak=bass_val; /*保存原先的高低音*/
par[0]=&tre_val_bak;
write_abyte();
par[0]=&bass_val_bak;
write_abyte();
}
}
/******** 高低音恢复子程序 ********/
void tre_bass_restore(void)
{
tre_val=tre_val_bak;
bass_val=bass_val_bak; /*保存原先的高低音*/
dsp_att=DSP_NO;
par[0]=&tre_val;
write_abyte();
par[0]=&bass_val;
write_abyte();
par[0]=&dsp_att;
write_abyte();
}
/***========================== 遥控部分程序 ================================***/
/********* 遥控键主调用程序 ********/
void remote_do(void) /*由主函数调用*/
{
if (b_rkey) /* 有remote key时被置1, 注:主程序检测该位后清0 */
{
b_rkey=0; /*清除遥控键有键标志*/
if(b_close_mach==0)
{
if(rkey_num!=0x1d)
{
return;
}
}
ton_num=VOL_F;
screen_num=0;
peng_flg=0;
test_c=0;
if(rkey_num!=0x1c)
{
b_mute=0; /*如果按了MUTE以外其它键则取消静音*/
}
sys_start=0;
switch (rkey_num) /*RKEY_NUM为键号*/
{
case 0x1c: /******按键散转*****/
key_mute(); /* MUTE 键 */
rkey_speed=RKEY_SP4; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x19:
input_att=INPUT_DVD;
input_control();
rkey_speed=RKEY_SP4; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x16:
input_att=INPUT_AC3;
input_control();
rkey_speed=RKEY_SP4; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x15:
input_att=INPUT_VCD;
input_control();
rkey_speed=RKEY_SP4; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x11:
input_att=INPUT_TAPE;
input_control();
rkey_speed=RKEY_SP4; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x12:
input_att=INPUT_AUX;
input_control();
rkey_speed=RKEY_SP4; /* 设置遥控连发速度 */
goto remdo_p0;
/*输入选择控制电平*/
case 0x10:
key_surround();
rkey_speed=RKEY_SP4;
goto remdo_p0;
case 0x14:
key_3_stereo();
rkey_speed=RKEY_SP4;
goto remdo_p0;
case 0x18:
key_stereo();
rkey_speed=RKEY_SP4;
goto remdo_p0;
case 0x57: /****** AUTO键 按下的处理 ****/
key_dim(); /*5声道处理*/
rkey_speed=RKEY_SP4; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x4c: /****** AUTO键 按下的处理 ****/
key_dim_sub();
rkey_speed=RKEY_SP4; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x5d:
mic1_vol_add();
rkey_speed=RKEY_SP2; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x5e:
mic1_vol_sub();
rkey_speed=RKEY_SP2; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x59:
mic2_vol_add();
rkey_speed=RKEY_SP2; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x5a:
mic2_vol_sub();
rkey_speed=RKEY_SP2; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x13:
mic_echo_add();
rkey_speed=RKEY_SP2; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x55:
mic_tre_add();
rkey_speed=RKEY_SP2; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x56:
mic_tre_sub();
rkey_speed=RKEY_SP2; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x50:
mic_echo_sub();
rkey_speed=RKEY_SP2; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x51:
mic_bass_add();
rkey_speed=RKEY_SP2; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x52:
mic_bass_sub();
rkey_speed=RKEY_SP2; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x4b:
rkey_balan_r();
rkey_speed=RKEY_SP2; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x0b:
rkey_balan_l();
rkey_speed=RKEY_SP2; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x09:
if (((ch_att==C2_CH)||(ch_att==C3_CH))&&(dsp_att==DSP_NO)&&(input_att!=INPUT_AC3)) dis_seterr();
else sl_vol_add();
rkey_speed=RKEY_SP2; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x0a:
if (((ch_att==C2_CH)||(ch_att==C3_CH))&&(dsp_att==DSP_NO)&&(input_att!=INPUT_AC3)) dis_seterr();
else sl_vol_sub();
rkey_speed=RKEY_SP2; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x4d:
if (((ch_att==C2_CH)||(ch_att==C3_CH))&&(dsp_att==DSP_NO)&&(input_att!=INPUT_AC3)) dis_seterr();
else sr_vol_add();
rkey_speed=RKEY_SP2; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x4e:
if (((ch_att==C2_CH)||(ch_att==C3_CH))&&(dsp_att==DSP_NO)&&(input_att!=INPUT_AC3)) dis_seterr();
else sr_vol_sub();
rkey_speed=RKEY_SP2; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x49:
if ((ch_att==C2_CH)&&(dsp_att==DSP_NO)&&(input_att!=INPUT_AC3)) dis_seterr();
else cen_vol_add();
rkey_speed=RKEY_SP2; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x4a:
if ((ch_att==C2_CH)&&(dsp_att==DSP_NO)&&(input_att!=INPUT_AC3)) dis_seterr();
else cen_vol_sub();
rkey_speed=RKEY_SP2; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x0c:
key_dsp(1);
rkey_speed=RKEY_SP3; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x0f:
// cw2_flg=1;
// ccw2_flg=0;
if(master_val<80) master_val++;
if(sl_val<80) sl_val++;
if(sr_val<80) sr_val++;
if(cen_val<80) cen_val++;
string_num=5; /*"mvol"*/
ton_num=0;
adj_display();
rkey_speed=RKEY_SP1; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x4f:
// cw2_flg=0;
// ccw2_flg=1;
if(master_val!=0) master_val--;
if(sl_val!=0) sl_val--;
if(sr_val!=0) sr_val--;
if(cen_val!=0) cen_val--;
string_num=5; /* "mvol " */
ton_num=0;
adj_display();
rkey_speed=RKEY_SP1; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x5b:
bass_add();
rkey_speed=RKEY_SP2; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x48:
bass_sub();
rkey_speed=RKEY_SP2; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x5f:
treble_add();
rkey_speed=RKEY_SP2; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x08:
treble_sub();
rkey_speed=RKEY_SP2; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x1e:
if(b_mic)
{
ok_mode=0;
key_ok_mode();
}
else dis_seterr();
rkey_speed=RKEY_SP4; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x1a:
if(b_mic)
{
ok_mode=1;
key_ok_mode();
}
else dis_seterr();
rkey_speed=RKEY_SP4; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x1f:
if(b_mic)
{
ok_mode=2;
key_ok_mode();
}
else dis_seterr();
rkey_speed=RKEY_SP4; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x1b:
if(b_mic)
{
ok_mode=3;
key_ok_mode();
}
else dis_seterr();
rkey_speed=RKEY_SP4; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x17:
if(b_mic)
{
mic_delay_add();
}
else dis_seterr();
rkey_speed=RKEY_SP4; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x5c:
if(b_mic)
{
ok_mode=4;
key_ok_mode();
}
else dis_seterr();
rkey_speed=RKEY_SP4; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x58:
if(b_mic)
{
ok_mode=5;
key_ok_mode();
}
else dis_seterr();
rkey_speed=RKEY_SP4; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x54:
if(b_mic)
{
mic_delay_sub();
}
else dis_seterr();
rkey_speed=RKEY_SP4; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x53:
key_lound();
rkey_speed=RKEY_SP4; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x1d:
rkey_speed=RKEY_SP4; /* 设置遥控连发速度 */
close_mach();
test_c=0;
b_rkey_close=b_close_mach; /*=0为按键关机,=1为自动关机*/
rkey_speed=RKEY_SP4; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x0d:
disp_add();
rkey_speed=RKEY_SP4; /* 设置遥控连发速度 */
goto remdo_p0;
case 0x0e:
disp_sub();
rkey_speed=RKEY_SP4; /* 设置遥控连发速度 */
goto remdo_p0;
remdo_p0:
/* 音频的音量、音调数据有效输出处理(IC: m62446) */
if (!b_mute && !b_intmute) /*临时静音和机器静音有一者静音则不开通主音量*/
{
audio_ref();
}
break;
}
}
}
/******** BALANCE-L 遥控键,子程序 ********/
void rkey_balan_l(void)
{
kdel=KTIME2; /* 初始按键延时计算数 */
if (balan_val<18)
{
balan_val++; /* 平衡调节, 0-32格 */
}
balan_display();
adj_display();
}
/******** BALANCE-R 遥控键,子程序 ********/
void rkey_balan_r(void)
{
kdel=KTIME2; /* 初始按键延时计算数 */
if (balan_val!=0)
{
balan_val--; /* 平衡调节, 0-32格 */
}
balan_display();
adj_display();
}
void adj_display(void)
{
string_att=STRING_ADJ; /* 设为机器方式 */
string_del=STRDEL_PA3; /* 设置停留时间 */
}
void balan_display(void)
{
string_num=25;
string_att=STRING_ADJ; /* 设显示为调节方式 */
string_del=STRDEL_PA; /* 设显示停留时间 */
}
void china_disp(void) /*string_num?*/
{
string_num=22;
copy_string(tab_string1_p(string_num)); /* " MUTE " 静止不动!!! */
display_do();
dog_time0=DOG_TIME0; /* 恢复time0看门狗计数数 */
dog_main=DOG_MAIN; /* 恢复main看门狗计数数 */
pub_delay_do(400); /* 延时0.1S时间, 按键去抖 */
}
void china_scroll(void)
{
string_num=0;
do
{
copy_string(&tab_string23[string_num]); /* 复制字符串to显示缓冲 */
string_num++; /* 下一步显示字符串头的表--数组号 */
string_num++;
string_scr_step--; /* 步数减 */
display_do();
dog_time0=DOG_TIME0; /* 恢复time0看门狗计数数 */
dog_main=DOG_MAIN; /* 恢复main看门狗计数数 */
par0_0=0;
par0_1=0;
par0_2=0;
b_mic=~b_mic;
par0_3=b_mic;
wled_6311();
par[0]=0;
twled_6311();
pub_delay_do(50); /* 延时0.1S时间, 按键去抖 */
//led_control();
}
while (string_scr_step!=0);
}
void key_ok_mode(void)
{
switch(ok_mode)
{
case 0:
screen_num=22;
mic1_val=17;
mic2_val=17;
mtre_val=4;
mbass_val=4;
mecho_val=0;
delay_val=0;
break;
case 1:
screen_num=23;
mic1_val=13;
mic2_val=13;
mtre_val=4;
mbass_val=4;
mecho_val=0;
delay_val=0;
break;
case 2:
screen_num=24;
mic1_val=15;
mic2_val=15;
mtre_val=6;
mbass_val=6;
mecho_val=15;
delay_val=3;
break;
case 3:
screen_num=25;
mic1_val=17;
mic2_val=17;
mtre_val=7;
mbass_val=3;
mecho_val=17;
delay_val=2;
break;
case 4:
screen_num=26;
mic1_val=14;
mic2_val=14;
mtre_val=8;
mbass_val=6;
mecho_val=17;
delay_val=3;
break;
case 5:
screen_num=27;
mic1_val=19;
mic2_val=19;
mtre_val=2;
mbass_val=8;
mecho_val=18;
delay_val=1;
break;
}
input_data_scroll();
}
void close_mach(void)
{
b_close_mach=~b_close_mach;
peng_flg=0; /*2002-07-31 01:20PM*/
if(b_close_mach==0)
{
string_num=23;
copy_string(tab_string1_p(string_num)); /* " MUTE " 静止不动!!! */
display_do();
dog_time0=DOG_TIME0; /* 恢复time0看门狗计数数 */
dog_main=DOG_MAIN; /* 恢复main看门狗计数数 */
bc_jin=1; /* 预置过载检测口高电平 */
bc_jout=1; /* 继电器控制脚, 0=合上 */
pub_delay_do(400); /* 延时0.1S时间, 按键去抖 */
b_rkey=0; /*清除遥控键有键标志*/
}
else
{
string_num=24;
copy_string(tab_string1_p(string_num)); /* " MUTE " 静止不动!!! */
display_do();
setup_6311(); /* 初始荧光屏 !!!!! */
dim_vfd(); /* 打开荧光显示 */
tsetup_6311(); /* 初始荧光屏 */
tdim_vfd(); /*清除11格,17段数据显示(清荧光屏) */
bc_jin=1; /* 预置过载检测口高电平 */
bc_jout=0; /* 继电器控制脚, 0=合上 */
dog_time0=DOG_TIME0; /* 恢复time0看门狗计数数 */
dog_main=DOG_MAIN; /* 恢复main看门狗计数数 */
pub_delay_do(400); /* 延时0.1S时间, 按键去抖 */
start_dis(); /* 冷启动, 开机走屏显示 */
restore();
get_peng_flg=0;
auto_select_flg=1;
input_att_bak=input_att;
auto_cout=AUTO_COUNT1;
mach_display();
b_rkey=0; /*清除遥控键有键标志*/
ton_num = 0;
lrk_del = 0;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -