Beispiel #1
0
void idle_mode(void)
{
    u8 key;
//deg_str("idle_mode \n");

    //dac_out_select(DAC_MUSIC, 0);
    //clear_all_event();
    dac_mute_control(1,1);    
#ifdef PLAY_STATUS_LED_FUNC
    set_play_status_led_spark(PLED_OFF);
#endif	
    KT_AMFMStandby();
    usb_suspend();
	
    flush_all_msg();
    disp_port(MENU_POWER_OFF);
    input_number_en=0;
    vol_change_en=0;

#ifdef DEFAULT_VOL
    sys_main_vol=DEFAULT_VOL;
#endif
    delay_10ms(20);

#ifdef SYS_SOFT_WARE_GOIN_STANDBY
    if(sys_pwr_flag==0){
		put_msg_fifo(MSG_SYS_CORE_SLEEP);		
    }
#endif	
   while (1)
    {
        key = app_get_msg();

        switch (key)
        {
#ifdef SYS_SOFT_WARE_GOIN_STANDBY        
        case MSG_SYS_CORE_SLEEP:
    		core_power_off();			
		break;
#endif		
        case MSG_CHANGE_WORK_MODE:
	     	clear_all_event();
    	     	flush_all_msg();
            	return;
        case MSG_MUSIC_NEW_DEVICE_IN:							//有新设备接入
	 	break;
        default:
            	ap_handle_hotkey(key);        
            	break;
        }
    }
}
void radio_chip_standby()
{
#ifdef USE_KT_FM_CHIP
	if(radio_chip_id== "KT"){

		KT_AMFMStandby();
	}
#endif
	if(radio_chip_id== RDAFM_ID){

		RDA5807P_PowerOffProc();

	}	
}
Beispiel #3
0
void idle_mode(void)
{
    u8 key;
    //deg_str("idle_mode \n");

    //dac_out_select(DAC_MUSIC, 0);
    //clear_all_event();
    KT_AMFMStandby();
    usb_suspend();
	
    flush_all_msg();
    disp_port(MENU_POWER_OFF);
    input_number_en=0;
    vol_change_en=0;

    SYS_POWER_OFF();	
    LCD_BACKLIGHT_OFF();		
    //core_power_off();
	
   while (1)
    {
        key = app_get_msg();

        switch (key)
        {
    	  	case MSG_POWER:
        		work_mode = MUSIC_MODE;
        	case MSG_CHANGE_WORK_MODE:
	     		clear_all_event();
    	     		flush_all_msg();
			irkey_activated =0;
			sys_pwr_flag =1;
           	 	return;

       	case MSG_MUSIC_NEW_DEVICE_IN:							//有新设备接入
		  	//put_msg_lifo(MSG_CHANGE_WORK_MODE);		
	 		break;
        	default:
           	 	//ap_handle_hotkey(key);        
            		break;
        }
    }
}
Beispiel #4
0
void idle_mode(void)
{
    u8 key;
    //dac_out_select(DAC_MUSIC, 0);
    //clear_all_event();
#ifdef UART_ENABLE
	sys_printf(" SYS GO IN IDLE MODE");
#endif
    
#ifdef PWR_CTRL_IN_IDLE_MODE

#if defined(PWR_CTRL_WKUP)
	wkup_pin_ctrl(0);
#else
	PWR_CTRL_GPIO_INIT();
	PWR_CTRL_DIS();
#endif

#endif


    flush_all_msg();


    KT_AMFMStandby();

    sys_sleep_mode();
	
#ifdef RTC_DISP_IN_IDLE_MODE
	disp_scenario = DISP_RTC_SCEN;
	Disp_Con(DISP_RTC);
#else
    Disp_Con(DISP_POWER_OFF);
#endif

#if 0
        alm_flag = 1;
	 put_msg_lifo(INFO_ALM_BELL);
#endif	 

#ifdef ADKEY_SELECT_MODE
   mode_switch_protect_bit=0;
#endif


   while (1)
    {
	key = get_msg();
	//suspend_sdmmc();

#ifndef RTC_DISP_IN_IDLE_MODE
	if(sys_pwr_flag){
		if(key!=(INFO_POWER | KEY_SHORT_UP)){
			key = NO_KEY;
		}
	}
#endif	
        switch (key)
        {
#if 0        
	       case INFO_PLAY| KEY_SHORT_UP :	

		        alm_flag = 1;
	 put_msg_lifo(INFO_ALM_BELL);
	 	break;
#endif		
	       case INFO_POWER | KEY_SHORT_UP :	
			if(sys_pwr_flag){

				//sys_mute_flag =0;
	        		dac_mute_control(0,1);					//调节音量时,自动UNMUTE
				sys_pwr_flag =0;
				//work_mode =  SYS_IDLE;
			}
			break;
	       case INFO_HALF_SECOND :
#ifdef RTC_DISP_IN_IDLE_MODE
#if defined(USE_BAT_MANAGEMENT)
	     		bmt_hdlr();
#endif
            	    set_brightness_fade_out();

		     rtc_setting_exit();

		    if(disp_scenario == DISP_RTC_SCEN){

				if(curr_menu != DISP_RTC){
	            			return_cnt++;
	            			if (RETURN_TIME == return_cnt){
						rtc_disp_hdlr();
					}
					break;
				}
				rtc_disp_hdlr();
				break;
		     }
#ifdef USE_RTC_ALARM_FUNCTION
		    else if(disp_scenario == DISP_ALM_SCEN){

				rtc_disp_hdlr();
		     }
#endif			
#endif			
			break;
			
        	case INFO_NEXT_SYS_MODE:
            		return;
#ifdef USE_RTC_ALARM_FUNCTION
    		case INFO_ALM_BELL:
		    	sys_restore_mode();
			alm_bell_mode();
		    	//sys_sleep_mode();
#ifdef ALARM_USE_MULTI_SOURCE_FUNC
			if(get_cur_select_func()==SYS_MP3DECODE_USB){

				if(get_device_online_status()>0){
					alarm_power_on_protect =1;
					work_mode = SYS_MP3DECODE_USB;
    					flush_all_msg();					
		 			put_msg_lifo(INFO_NEXT_SYS_MODE);
					break;
				}
			}
			else if(get_cur_select_func()==SYS_FMREV){
				
				work_mode = SYS_FMREV;
				alarm_power_on_protect =1;	
    				flush_all_msg();									
		 		put_msg_lifo(INFO_NEXT_SYS_MODE);
				break;
			}
#endif			
			break;
#endif
    		case MSG_USB_DISK_IN  :
    		case MSG_SDMMC_IN :
	 		break;
	        default:
	            ap_handle_hotkey(key);        
	            break;
        }
    }
}
Beispiel #5
0
void radio_device_standby(void)
{
    	KT_AMFMStandby();
}