📄 radio_mv114_kst.c
字号:
case IRC_PREV:
//printf("left\n");
#ifdef SUPPORT_RDS_FUNCTION//xyy 2003-12-4 16:18
rds_clear_var();
#endif
if(tuner.bandswitch)//am
{
if(tuner.am_ch>1)
tuner.am_ch--;
else
tuner.am_ch = 1;
set_station(tuner.am_ch);
}
else //fm
{
if(tuner.fm_ch>=1)
tuner.fm_ch--;
else
// tuner.fm_ch = 1;
tuner.fm_ch = 0;
set_station(tuner.fm_ch);
}
write2mem =1;
break;
case IRC_NEXT:
#ifdef SUPPORT_RDS_FUNCTION//xyy 2003-12-4 16:18
rds_clear_var();
#endif
if(tuner.bandswitch) //am
{
if(tuner.am_ch<MAX_MEM_BAND)
tuner.am_ch++;
else
tuner.am_ch = MAX_MEM_BAND;
set_station(tuner.am_ch);
}
else //fm
{
if(tuner.fm_ch<MAX_MEM_BAND)
tuner.fm_ch++;
else
tuner.fm_ch = MAX_MEM_BAND;
set_station(tuner.fm_ch);
}
write2mem =1;
break;
case IRC_RCVR_BAND: /* serach- */
{
search_dir=0;
tuner.bandswitch=(!tuner.bandswitch);
//printf("band\n");
set_band(tuner.bandswitch);
write2mem=1;
break;
}
#ifdef SUPPORT_APOGEE_AMP
case IRC_VOLUME_UP:
// ircmd_volume_up();
// set_volume(1);
break ;
case IRC_VOLUME_DN:
// ircmd_volume_down();
// set_volume(0);
break ;
#endif
default:
break;
}
}
#elif defined(ORITRON_DVD_RECEIVER)
void tuner_key(BYTE key)
{
static BYTE enter_flag=0;
static BYTE stereo = 1;
//return;
switch(key)
{
case IRC_MUTE:
{
int id;
//rds_decoder_init();
//return;
//printf("size of :%d\n",sizeof(tuner));
user_mute=!user_mute;
tuner_mute(user_mute);
if(user_mute)
{
id=STR_OS_MUTE;
PrintOsdMsg(id,REGION1,0,0);
}
else
// id=STR_OS_SPACE;
OSD_OnOffRegion(OSD_OFF,1);//xyy 2003-10-13 17:15
break;
}
/* //xyy mask 2004-11-9
case IRC_GOTO:
tuner_oper_mode = AUTO_SEARCH;
timeout_vfd = 0;
if(tuner.bandswitch == 1)
{
auto_search_all_am();
tuner.am_ch = 0;
set_station(tuner.am_ch);
}
else
{
auto_search_all_fm();
tuner.fm_ch = 0;
set_station(tuner.fm_ch);
}
save_tuner_E2PROM();
tuner_oper_mode = NORMAL_TUNE;
disfreq();
break;
case IRC_SETUP:
search_station = 1;
tuner_oper_mode = RECALL_OR_STORE;
timeout_vfd = 6000;
break;
*/
case IRC_RCVR_EQ:
stereo = !stereo;
if(!tuner.bandswitch)
{
set_mono_stereo(stereo);
timeout_vfd = 4000;
}
break;
case IRC_FORWARD:/* auto search up */
case IRC_VFD_RIGHT:
tuner_oper_mode = NORMAL_TUNE;
tuner.Istuning[tuner.bandswitch]=1;
timeout_vfd = 0;
// to avoid the noise when enter auto search mode
tuner_mute_flag = 0;
search_dir=1;
break;
case IRC_BACKWARD: /* auto search down */
case IRC_VFD_LEFT:
// to avoid the noise when enter auto search mode
tuner_oper_mode = NORMAL_TUNE;
timeout_vfd = 0;
tuner_mute_flag = 0;
search_dir=2;
break;
case IRC_LEFT:
search_dir = 0;
search(SEARCHDEC);
break;
case IRC_RIGHT:
search_dir = 0;
search(SEARCHADD);
break;
case IRC_PREV:
//printf("left\n");
if(tuner.bandswitch)//am
{
if(tuner.am_ch>1)
tuner.am_ch--;
else
tuner.am_ch = 1;
set_station(tuner.am_ch);
}
else //fm
{
if(tuner.fm_ch>=1)
tuner.fm_ch--;
else
// tuner.fm_ch = 1;
tuner.fm_ch = 0;
set_station(tuner.fm_ch);
}
write2mem =1;
break;
case IRC_NEXT:
if(tuner.bandswitch) //am
{
if(tuner.am_ch<MAX_MEM_BAND)
tuner.am_ch++;
else
tuner.am_ch = MAX_MEM_BAND;
set_station(tuner.am_ch);
}
else //fm
{
if(tuner.fm_ch<MAX_MEM_BAND)
tuner.fm_ch++;
else
tuner.fm_ch = MAX_MEM_BAND;
set_station(tuner.fm_ch);
}
write2mem =1;
break;
case IRC_P_SCAN: /* serach- */
{
search_dir=0;
tuner.bandswitch=(!tuner.bandswitch);
//printf("band\n");
set_band(tuner.bandswitch);
write2mem=1;
disfreq();
break;
}
default:
break;
}
}
#else
void tuner_key(BYTE key)
{
static BYTE enter_flag=0;
//return;
switch(key)
{
case IRC_MUTE:
{
int id;
//rds_decoder_init();
//return;
//printf("size of :%d\n",sizeof(tuner));
user_mute=!user_mute;
tuner_mute(user_mute);
if(user_mute)
{
id=STR_OS_MUTE;
OSD1000ISP_STATUS(OSDISP_MUTE, OSDIR_MUTE);
PrintOsdMsg(id,REGION1,0,0);
}
else
{
// id=STR_OS_SPACE;
OSD1000ISP_STATUS(OSDISP_CLEAR, OSDIR_GLOBAL);
OSD_OnOffRegion(OSD_OFF,1);//xyy 2003-10-13 17:15
}
break;
}
#ifdef SUPPORT_RDS_FUNCTION
case IRC_SELECT:
if(rds_func_flag >= 4)
{
rds_func_flag = 0;
}
else
{
rds_func_flag++;
}
disp_rds_func(rds_func_flag);
break;
#endif /*SUPPORT_RDS_FUNCTION*/
case IRC_UP:/* auto search up */
#ifdef SUPPORT_RDS_FUNCTION//xyy 2003-12-4 16:18
rds_clear_var();
#endif
{
tuner.Istuning[tuner.bandswitch]=1;
if(search_dir&&(rep_ir_times<INC_SPEED_TIMES))
{
search_dir=0;
//tuner_mute( 0 ); // demute when auto search
tuner_mute_flag = 1; // auto demute after 500ms
}else
{
if(rep_ir_times<INC_SPEED_TIMES)
{
#ifdef TUNER_DBG
//printf("add\n");
#endif
search(SEARCHADD);
}else
{
// to avoid the noise when enter auto search mode
tuner_mute_flag = 0;
search_dir=1;
}
}
break;
}
case IRC_DOWN: /* auto search down */
#ifdef SUPPORT_RDS_FUNCTION//xyy 2003-12-4 16:18
rds_clear_var();
#endif
{
tuner.Istuning[tuner.bandswitch]=1;
if(search_dir&&(rep_ir_times<INC_SPEED_TIMES))
{
search_dir=0;
//tuner_mute( 0 ); //demute when auto search
tuner_mute_flag = 1; // auto demute after 500ms
}else
{
if(rep_ir_times<INC_SPEED_TIMES)
{
#ifdef TUNER_DBG
//printf("dec\n");
#endif
search(SEARCHDEC);
}else
{
// to avoid the noise when enter auto search mode
tuner_mute_flag = 0;
search_dir=2;
}
}
break;
}
case IRC_LEFT:
//printf("left\n");
#ifdef SUPPORT_RDS_FUNCTION//xyy 2003-12-4 16:18
rds_clear_var();
#endif
if(tuner.bandswitch)//am
{
if(tuner.am_ch>0)
tuner.am_ch--;
else
tuner.am_ch = 0;
set_station(tuner.am_ch);
}
else //fm
{
if(tuner.fm_ch>0)
tuner.fm_ch--;
else
tuner.fm_ch = 0;
set_station(tuner.fm_ch);
}
write2mem =1;
disfreq();
break;
case IRC_RIGHT:
#ifdef SUPPORT_RDS_FUNCTION//xyy 2003-12-4 16:18
rds_clear_var();
#endif
if(tuner.bandswitch) //am
{
if(tuner.am_ch<(MAX_MEM_BAND-1))
tuner.am_ch++;
else
tuner.am_ch = (MAX_MEM_BAND-1);
set_station(tuner.am_ch);
}
else //fm
{
if(tuner.fm_ch<(MAX_MEM_BAND-1))
tuner.fm_ch++;
else
tuner.fm_ch = (MAX_MEM_BAND-1);
set_station(tuner.fm_ch);
}
write2mem =1;
disfreq();
break;
case IRC_FORMAT:
tuner_st_mono();
break;
case IRC_ZOOM: /* serach- */
{
search_dir=0;
tuner.bandswitch=(!tuner.bandswitch);
//printf("band\n");
set_band(tuner.bandswitch);
write2mem=1;
break;
}
case IRC_PROGRAM:
#ifndef NEW_AUTO_SEARCH_ALL
auto_search_all();
#else
auto_search_all_am();
auto_search_all_fm();
tuner.fm_ch = 0;
set_station(tuner.fm_ch); //goto the 1st station
#endif //NEW_AUTO_SEARCH_ALL
break;
#ifdef SUPPORT_APOGEE_AMP
case IRC_VOLUME_UP:
// ircmd_volume_up();
// set_volume(1);
break ;
case IRC_VOLUME_DN:
// ircmd_volume_down();
// set_volume(0);
break ;
#endif
default:
break;
}
}
#endif
#include "sysmain2_inc.h"
#include "kernel.h"
#include "tvif.h"
//#include "radio_rds.h"//xyy 2003-12-1 13:28
void tuner_main(void)
{
osd_init();//xyy 2003-9-23 16:36
#ifdef NEW_AUTO_SEARCH_ALL
//change_system_clock(19);
#endif
#ifdef TUNER_DISABLE_VIDEO//xyy 2004-11-9
/// disable_video();
tv_dacoff(0x3f);
#endif
load_tuner_E2PROM();//marked by xyy 2003-9-23 9:01
tunerflag = 0;
station_input_index = 0;
tuner_oper_mode = NORMAL_TUNE;
init_tuner();
if(test_tuner())
{
psprintf(RegionValStr[2],"TUNER NOT READY");
PrintOsdMsg(STR_OS_SPACE,0x2,0,1);
#ifdef XINGQIU_RECEIVER_PANNEL //xyy 2004-8-5
vfd_set_str(0,0,0,"NOT READY");
#endif
while (system_state != SYSTEM_OPEN)
{
polling();
}
}
erase_vfd_mem();
while (system_state != SYSTEM_OPEN)
{
#ifdef SUPPORT_RDS_FUNCTION //xyy
rds_collect_data();
disp_rds(rds_func_flag);
#endif
disfreq();
polling();//i=keyscan()
#if 0
if(RDS_PS_RDY())
{
//printf("ps:%s\n",rds_get_ps());
psprintf(RegionValStr[REGION1],"PS : %s",rds_get_ps());
PrintOsdMsg(0, REGION1, 1, 1);
RDS_PS_CLR_RDY();
}
#endif
#ifdef SUPPORT_STEREO_DETECT
if(is_stereo())
{
printf("stereo\n");
}
else
{
printf("mono\n");
}
#endif //SUPPORT_STEREO_DETECT
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -