📄 t10a2_other_disp.c
字号:
Display_Proc(HT_TV_Mode_DisMode);
}
}
void input_select_autojia(void)
{
input_select++;
if(input_select>=13)input_select=0;
switch(input_select)
{
case 0:
break;
case 1:
if(!(ht_input_f&BIT(HT_COAXIAL_ON)))
input_select+=1;
else {break;}
case 2:
if(!(ht_input_f&BIT(HT_5CH1_ON)))
input_select+=1;
else {break;}
case 3:
break;
case 4:
if(!(tv_input_f&BIT(TV_COAXIAL_ON)))
input_select+=1;
else {break;}
case 5:
if(!(tv_input_f&BIT(TV_5CH1_ON)))
input_select+=1;
else {break;}
case 6:
break;
case 7: if(!(cd_input_f&BIT(USB_INSERT_F)))
input_select+=1;
else {break;}
case 8: if(!(cd_input_f&BIT(USB_INSERT_F)))
input_select+=1;
else {break;}
case 9: if(!(cd_input_f&BIT(USB_INSERT_F)))
input_select+=1;
else {break;}
case 10: if(!(cd_input_f&BIT(CARD_INSERT_F)))
input_select+=1;
else {break;}
case 11: if(!(cd_input_f&BIT(CARD_INSERT_F)))
input_select+=1;
else {break;}
case 12: if(!(cd_input_f&BIT(CARD_INSERT_F)))
input_select=0;
else {break;}
break;
default:
break;
}
}
/***********************************************
函 数 名:input_select
功 能:四个输入选择
说 明:
返 回 值:
修 改:
************************************************/
void input_select_disposal(void)
{
bdata7_flag|=BIT(kaiji);
data_4094&=~BIT(MUTE_ALL);
data_4094&=~BIT(MUTE_SURROUND);
write4094(data_4094);
decode_counter=0;
switch(input_select)
{
case 0://光纤
bdata1_flag&=~BIT(CHANNLE_2AND5_F);
if(output_state_ht==0)bdata1_flag|=BIT(CHANNLE_2AND5_F);
if(!(bdata7_flag&BIT(mode_adj_f)))
{
bdata3_flag|=BIT(DECODER_START);//启动解码板 暂不用 //521
}
PORTG|=BIT(SEL_5_A);
PORTA&=~BIT(SEL_5_B);
// PORTB&=~BIT(SEL_5_INH);//SEL_5_INH=0;
bdata1_flag|=BIT(SELECT_MULTI);//SELECT_MULTI=1;
PORTG|=BIT(SPDIF_SEL);
theatre_mode=1;
bdata3_flag&=~BIT(USB_CARD_PLAYER_F);
break;
case 1://HT coaxial
bdata1_flag&=~BIT(CHANNLE_2AND5_F);
if(output_state_ht==0)bdata1_flag|=BIT(CHANNLE_2AND5_F);
if(!(bdata7_flag&BIT(mode_adj_f)))
{
bdata3_flag|=BIT(DECODER_START);//启动解码板 暂不用 //521
}
PORTG|=BIT(SEL_5_A);
PORTA&=~BIT(SEL_5_B);
// PORTB&=~BIT(SEL_5_INH);
bdata1_flag|=BIT(SELECT_MULTI);//SELECT_MULTI=1; LIN输入
PORTG&=~BIT(SPDIF_SEL);
theatre_mode=1;
// bdata3_flag|=BIT(DECODER_START);//启动解码板 暂不用 //521
bdata3_flag&=~BIT(USB_CARD_PLAYER_F);
break;
case 2://HT 5.1CH
PORTG&=~BIT(SEL_5_A);//SEL_5_A=0;
PORTA|=BIT(SEL_5_B);//SEL_5_B=0;
// PORTB&=~BIT(SEL_5_INH);//SEL_5_INH=0;
r2s15_input_select=0xc0;
bdata1_flag&=~BIT(SELECT_MULTI);//SELECT_MULTI=1;
bdata1_flag|=BIT(CHANNLE_2AND5_F);
theatre_mode=1;
bdata3_flag&=~BIT(USB_CARD_PLAYER_F);
bdata7_flag&=~BIT(decode_mute);
bdata3_flag&=~BIT(DECODER_START);
break;
case 3://AUX
bdata1_flag&=~BIT(CHANNLE_2AND5_F);
if(output_state_ht==0)bdata1_flag|=BIT(CHANNLE_2AND5_F);
PORTG|=BIT(SEL_5_A);
PORTA|=BIT(SEL_5_B);
// PORTB&=~BIT(SEL_5_INH);//SEL_5_INH=0; //电路板改 原为1
r2s15_input_select=0x40;
bdata1_flag&=~BIT(SELECT_MULTI);//SELECT_MULTI=0;
theatre_mode=1;
bdata3_flag&=~BIT(USB_CARD_PLAYER_F);
bdata7_flag&=~BIT(decode_mute);
bdata3_flag&=~BIT(DECODER_START);
break;
case 4://附加 coaxial
bdata1_flag&=~BIT(CHANNLE_2AND5_F);
if(output_state_tv==0)bdata1_flag|=BIT(CHANNLE_2AND5_F);
if(!(bdata7_flag&BIT(mode_adj_f)))
{
bdata3_flag|=BIT(DECODER_START);//启动解码板 暂不用 //521
}
PORTG|=BIT(SEL_5_A);
PORTA&=~BIT(SEL_5_B);
// PORTB&=~BIT(SEL_5_INH);//SEL_5_INH=0;
bdata1_flag|=BIT(SELECT_MULTI);//SELECT_MULTI=1; LIN输入
PORTG&=~BIT(SPDIF_SEL);
theatre_mode=0;
// bdata3_flag|=BIT(DECODER_START);//启动解码板 暂不用 //521
bdata3_flag&=~BIT(USB_CARD_PLAYER_F);
break;
case 5://TV5.1
PORTG&=~BIT(SEL_5_A);//SEL_5_A=0;
PORTA&=~BIT(SEL_5_B);//SEL_5_B=0;
// PORTB&=~BIT(SEL_5_INH);//SEL_5_INH=0;
r2s15_input_select=0x20;
bdata1_flag&=~BIT(SELECT_MULTI);//SELECT_MULTI=1;
bdata3_flag&=~BIT(USB_CARD_PLAYER_F);
bdata1_flag|=BIT(CHANNLE_2AND5_F);
theatre_mode=0;
bdata7_flag&=~BIT(decode_mute);
bdata3_flag&=~BIT(DECODER_START);
break;
case 6://TV2.1 //声场2.1and5.1
bdata1_flag&=~BIT(CHANNLE_2AND5_F);
if(output_state_tv==0)bdata1_flag|=BIT(CHANNLE_2AND5_F);
PORTG|=BIT(SEL_5_A);
PORTA|=BIT(SEL_5_B);
// PORTB&=~BIT(SEL_5_INH);//SEL_5_INH=0; //电路板改 原为1
bdata1_flag&=~BIT(SELECT_MULTI);//SELECT_MULTI=0;
r2s15_input_select=0x80;
theatre_mode=0;
bdata3_flag&=~BIT(USB_CARD_PLAYER_F);
bdata7_flag&=~BIT(decode_mute);
bdata3_flag&=~BIT(DECODER_START);
break;
case 7://CD USB 修改//
case 8:
case 9:
bdata1_flag&=~BIT(CHANNLE_2AND5_F);
cd_input_select=input_select-7;//附加
PORTG|=BIT(SEL_5_A);
PORTA&=~BIT(SEL_5_B);
// PORTB&=~BIT(SEL_5_INH);//SEL_5_INH=0;
r2s15_input_select=0x00;
bdata1_flag|=BIT(SELECT_MULTI);
bdata3_flag|=BIT(USB_CARD_PLAYER_F);
bdata7_flag&=~BIT(decode_mute);
bdata3_flag&=~BIT(DECODER_START);
break;
case 10://CD CARD 修改
case 11:
case 12:
bdata1_flag&=~BIT(CHANNLE_2AND5_F);
cd_input_select=input_select-7;//附加
PORTG|=BIT(SEL_5_A);
PORTA&=~BIT(SEL_5_B);
// PORTB&=~BIT(SEL_5_INH);//SEL_5_INH=0;
r2s15_input_select=0x00;
bdata1_flag|=BIT(SELECT_MULTI);
bdata3_flag|=BIT(USB_CARD_PLAYER_F);
theatre_mode=2;
bdata7_flag&=~BIT(decode_mute);
bdata3_flag&=~BIT(DECODER_START);
break;
default:
break;
}
sendbyte1_r2s15902();
/*
switch(input_select)
{
case 0://光纤
PORTG|=BIT(SEL_5_A);
PORTA&=~BIT(SEL_5_B);
PORTG|=BIT(SPDIF_SEL);
break;
case 1://HT coaxial
PORTG|=BIT(SEL_5_A);
PORTA&=~BIT(SEL_5_B);
PORTG&=~BIT(SPDIF_SEL);
break;
case 2://HT 5.1CH
PORTG&=~BIT(SEL_5_A);//SEL_5_A=0;
PORTA|=BIT(SEL_5_B);//SEL_5_B=0;
break;
case 3://AUX
PORTG|=BIT(SEL_5_A);
PORTA|=BIT(SEL_5_B);
break;
case 4://附加 coaxial
decode_counter=0;
PORTG|=BIT(SEL_5_A);
PORTA&=~BIT(SEL_5_B);
PORTG&=~BIT(SPDIF_SEL);
break;
case 5://TV5.1
PORTG&=~BIT(SEL_5_A);//SEL_5_A=0;
PORTA&=~BIT(SEL_5_B);//SEL_5_B=0;
break;
case 6://TV2.1 //声场2.1and5.1
PORTG|=BIT(SEL_5_A);
PORTA|=BIT(SEL_5_B);
break;
case 7://CD USB 修改//
case 8:
case 9:
PORTG|=BIT(SEL_5_A);
PORTA&=~BIT(SEL_5_B);
break;
case 10://CD CARD 修改
case 11:
case 12:
PORTG|=BIT(SEL_5_A);
PORTA&=~BIT(SEL_5_B);
break;
default:
break;
}
*/
}
void mode_select_disposal(void)
{
uchar temp_mode;
if(theatre_mode!=0)return;
temp_mode=ram[10*pingduan+7];//ram[10*pingduan+10];
if(ram[10*pingduan+7]>5)
temp_mode=ram[10*pingduan+7]-6;
ram[10*pingduan+3]=tv_mode_parameter[temp_mode][0];
ram[10*pingduan+4]=tv_mode_parameter[temp_mode][1];
ram[10*pingduan+8]=tv_mode_parameter[temp_mode][2];
ram[10*pingduan+9]=tv_mode_parameter[temp_mode][3];
}
void output_disposal(void)//这里显示会有问题,ram_cd 改
{
uchar temp_out;
switch(theatre_mode)
{
case 0:
//temp_out=ram[10*pingduan+10];
temp_out=output_state_tv;
if(input_select==5)temp_out=0;
break;
case 1:
//temp_out=ram_ht[9*mode_select_ht+9];
temp_out=output_state_ht;
if(input_select==2)temp_out=0;
break;
case 2:
//temp_out=ram_cd[9];
temp_out=1;
break;
default:
break;
}
switch(temp_out)
{
case 0:
// if(bdata7_flag&BIT(adj_5_2))
// {
bdata1_flag|=BIT(CHANNLE_2AND5_F);//CHANNLE_2AND5_F=1;
// bdata7_flag&=~BIT(adj_5_2);
// }
if(!(bdata7_flag&BIT(kaiji)))
{
if(!(bdata0_flag&BIT(MUTE_F)))
{
if(!(bdata0_flag&BIT(decode_mute)))
{
data_4094|=BIT(MUTE_SURROUND);//打开环绕
write4094(data_4094);
}
}
}
//byte2_4094&=~BIT(SW_SWITCH);
// PORTB&=~BIT(SEL_5_INH);
// PORTE|=BIT(MUTE_EAR);
if((input_select==0)||(input_select==1)||(input_select==4))
{
if(digital_coding_format==2)//PCM
{osd_byte[0]=table_deBT_Sel_command[4][0];//prologicII
osd_byte[1]=table_deBT_Sel_command[4][1];
deBT_Sel_output_bak[0]=osd_byte[0];
deBT_Sel_output_bak[1]=osd_byte[1];
remote_usbcard_on_disposal_1();
}
else if(digital_coding_format==0)//ac3
{
switch(digital_signal_x_x)
{
case 5:
case 6:
case 7:
case 8:
osd_byte[0]=table_deBT_Sel_command[1][0];//standard output
osd_byte[1]=table_deBT_Sel_command[1][1];
deBT_Sel_output_bak[0]=osd_byte[0];
deBT_Sel_output_bak[1]=osd_byte[1];
remote_usbcard_on_disposal_1();
break;
default:
osd_byte[0]=table_deBT_Sel_command[4][0];//prologic II
osd_byte[1]=table_deBT_Sel_command[4][1];
deBT_Sel_output_bak[0]=osd_byte[0];
deBT_Sel_output_bak[1]=osd_byte[1];
remote_usbcard_on_disposal_1();
break;
}
}
else if(digital_coding_format==1)//dts
{
osd_byte[0]=table_deBT_Sel_command[1][0];//standard
osd_byte[1]=table_deBT_Sel_command[1][1];
deBT_Sel_output_bak[0]=osd_byte[0];
deBT_Sel_output_bak[1]=osd_byte[1];
remote_usbcard_on_disposal_1();
}
else asm("nop");
}
break;
case 1:
bdata1_flag&=~BIT(CHANNLE_2AND5_F);//CHANNLE_2AND5_F=1;
if((input_select==0)||(input_select==1)||(input_select==4))
{
if(digital_coding_format==2)//PCM
{osd_byte[0]=table_deBT_Sel_command[1][0];//标准
osd_byte[1]=table_deBT_Sel_command[1][1];
deBT_Sel_output_bak[0]=osd_byte[0];
deBT_Sel_output_bak[1]=osd_byte[1];
remote_usbcard_on_disposal_1();
}
else if(digital_coding_format==0)//ac3
{
switch(digital_signal_x_x)
{
case 5:
case 6:
case 7:
case 8:
osd_byte[0]=table_deBT_Sel_command[0][0];//downmix
osd_byte[1]=table_deBT_Sel_command[0][1];
deBT_Sel_output_bak[0]=osd_byte[0];
deBT_Sel_output_bak[1]=osd_byte[1];
remote_usbcard_on_disposal_1();
break;
default:
osd_byte[0]=table_deBT_Sel_command[1][0];//标准
osd_byte[1]=table_deBT_Sel_command[1][1];
deBT_Sel_output_bak[0]=osd_byte[0];
deBT_Sel_output_bak[1]=osd_byte[1];
remote_usbcard_on_disposal_1();
break;
}
}
else if(digital_coding_format==1)//DTS
{
osd_byte[0]=table_deBT_Sel_command[0][0];//downmix
osd_byte[1]=table_deBT_Sel_command[0][1];
deBT_Sel_output_bak[0]=osd_byte[0];
deBT_Sel_output_bak[1]=osd_byte[1];
remote_usbcard_on_disposal_1();
}
else asm("nop");
}
break;
default:break;
}
}
void input_select_init(void)
{
bdata0_flag|=BIT(VOL_DOWN_FLAG);
vol_max();
//output_disposal();
bdata0_flag|=BIT(INPUT_FLAG);
}
void video_disposal(void)
{
switch(video_select)
{
case 0:
PORTC&=~BIT(VSEL_A);
PORTC&=~BIT(VSEL_B);
break;
case 1:
PORTC|=BIT(VSEL_A);
PORTC&=~BIT(VSEL_B);
break;
case 2:
PORTC&=~BIT(VSEL_A);
PORTC|=BIT(VSEL_B);
break;
case 3:
PORTC|=BIT(VSEL_A);
PORTC|=BIT(VSEL_B);
break;
default:
break;
}
}
void static_state_disposal(void) //无信号待机屏蔽
{
uchar i;
if((static_counter_10ms<1000)&&(static_state_counter>800))
{
if(!(bdata3_flag&BIT(STATIC_STATE_F)))
{
bdata3_flag|=BIT(STATIC_STATE_F);
display_state=1;
// write_data_display(0,13,blank);
static_counter_10ms=0;
static_state_counter=0;
bdata4_flag|=BIT(DISPLAY_SLOW_F);
state_reg=0x25;
state_counter=6;//控制时间 ,要调试 上次是1
for(i=0;i<65;i++)
//{disp_reg_copy[i]=0;}//清0
// display_state=3; 2007年3/26根据谢锋的提示改
// write_data_display(0,13,&long_avlight[13]);
disp_reg_line=0;
}
}
}
void turn_on_init(void)//开机初化始
{
uchar i;
bdata7_flag|=BIT(kaiji);
bdata6_flag&=~BIT(TOUCH_6930_FLAG);
//bdata6_flag|=BIT(OUT_PUT_FLAG0);
if((input_select==0)||(input_select==1)||(input_select==4))
{bdata6_flag|=BIT(OUT_PUT_FLAG0);}
bdata6_flag|=BIT(KAIJI_FLAG);
display_state=1;
// write_data_display(0,13,blank);
//王明文添加
CLEAR_VFD();
PORTC&=~BIT(STANDBY);//继电器开机??????
delay_ms(10);
PORTC|=BIT(POWER_DECODER);
//data_4094|=BIT(coder);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -