Пример #1
0
void IR_Debug_func()
{

	WDTCON |= BIT(7);
	while(1){

		if(irda_state==32){
		        printf_u16(user_code,'C');
		        deg_str("\r\n");
		        printf_u16(irda_data,'D');
			deg_str("\r\n");
			delay_10ms(50);
		}
	}
		
}
Пример #2
0
/*----------------------------------------------------------------------------*/
void rec_mic_fun(void)
{
#ifdef UART_ENABLE
	deg_str("encode \n");
#endif

    dac_mute_control(1,1);
    input_number_en = 0;
    //vol_change_en=1;
    main_menu = MENU_RECWORKING;
    disp_port(MENU_SCAN_DISK);
    delay_10ms(50);
    SYSTEM_CLK_DIV2();
    encode_channel = REC_MIC;
    encode_vol = 7;
    key_table_sel(0);
    flush_all_msg();
    if(RECODE_INIT == encode_status)
    {
        	put_msg_lifo(MSG_REC_FIND);
        	//put_msg_lifo(MSG_REC_START);
    }
    //put_msg_lifo(MSG_REC_START);
    set_max_vol(MAX_ANOLOG_VOL,MAX_DIGITAL_VOL);///设置最大音量
    rec_mic_main();
    dac_mute_control(0,0);
    break_encode();
    lcd_clr_flash_icon();	
}
Пример #3
0
void sys_init(void)
{
#if defined(UART_ENABLE)
    uart_init();
    deg_str("power on\n");
#endif
    SYS_POWER_OFF();	

    core_power_on();
    OTP_CLK_DIV2();
    DECODER_DIV2();
    SYSTEM_CLK_DIV4();
#if (NO_DISP != monitor)
    init_display();
#endif
    sd_speed_init(0,100);

//#if SDMMC_CMD_MODE
//    sd_chk_ctl(SET_SD_H_CHK);
//#endif
    init_port_sd();
    //kv_init(); ///按键音初始化函数

#if RTC_ENABLE
    rtc_init();			//RTC初始化,检测是否闹钟开机
    //{
        //work_mode = RTC_MODE;
    //}
#else
    {
        u8 rtc_reg = read_rtc_reg();
        if (rtc_reg & BIT(7))					//检测是否掉电
        {
            rtc_reg &= ~BIT(7); 				//清零PDFLAG
            write_rtc_reg(rtc_reg);
#if USE_RTC_RAM
            reset_rtc_ram();
#endif
        }
    }
#endif

    SYS_POWER_OFF();	
    key_init();
    bsp_init();
    SYS_POWER_OFF();	
    //interrupt_init(15, rtcisr);
    interrupt_init(3, timer3isr);
    interrupt_init(0, timer0isr);
#if defined(BLUE_TOOTH_UART_FUNC)
    interrupt_init(7, uart_isr);
#endif
    enable_interrupt();
   /// flashled(3);
}
Пример #4
0
void EPPROM_TEST(void)
{
	u16 addr=0,w_data=0,r_data=0;

	deg_str(" EPPROM_TEST START\n");
	
	deg_str(" EPPROM_WRITE START \n");
#if 1
	w_data = 0xA0;

	for(addr=0;addr<0x3FF;){
		
		write_eerom(addr,w_data);
		printf_u16(w_data, 'W');
		printf_u16(addr, 'A');
		addr++;		
		if((addr%0xFF)==0){
			w_data++;
			deg_str(" W --------------- W  \n");
		}
	}

	deg_str(" EPPROM_WRITE END \n");
#endif	
	deg_str(" EPPROM_READ ...   \n");

	for(addr=0;addr<0x3FF;){
		r_data = read_eerom(addr);
		delay_10ms(2);
#ifdef UART_ENABLE
		printf_u16(r_data, 'R');
		printf_u16(addr, 'A');
#endif
		if((addr%0xFF)==0){
			deg_str(" R --------------- R  \n");
		}		

		addr++;
	}	


	deg_str(" EPPROM_TEST END \n");
	
}
Пример #5
0
/*----------------------------------------------------------------------------*/
void aux_main(void)
{
#ifdef AUX_DETECT_FUNC
    if(!aux_online){
		work_mode = MUSIC_MODE;
		return ;
    }
#endif

#ifdef UART_ENABLE
	deg_str("aux \n");
#endif
    aux_detect_protect(FALSE);

    set_delay_mute(DELAY_MUTE_1000MS);

    key_table_sel(SYS_DEFUALT_KEY_TABLE);
    sys_mute_flag=0;
    input_number_en = 0;
    vol_change_en=1;
    main_menu = MENU_AUX_MAIN;
    disp_port(MENU_AUX_MAIN);
    amux_dsp_eq();
    SYSTEM_CLK_DIV2();
    encode_channel = REC_LINEIN;
    encode_vol = 3;
    key_table_sel(0);
    flush_all_msg();
    set_max_vol(MAX_ANOLOG_VOL,MAX_DIGITAL_VOL);///设置最大音量
    aux_main_handlr();
	
    ext_amp_mute(MUTE);

    main_vol_set(0, CHANGE_VOL_NO_MEM);
    sys_mute_flag=0;
    break_encode();
}
Пример #6
0
void sys_init(void)
{
#if 0
    uart_init();
    deg_str("AC309N-C\n");
#endif	
    core_power_on();
    OTP_CLK_DIV2();
    DECODER_DIV2();
    sys_clk_div(4);//SYSTEM_CLK_DIV4();
    set_vol_tab_ptr(analog_vol_tab, digital_vol_tab);
                                    
#if (NO_DISP != monitor)
  	init_display();
#endif
    sd_speed_init(0,100);

//#if SDMMC_CMD_MODE
//    sd_chk_ctl(SET_SD_H_CHK);
//#endif
    init_port_sd();
    kv_init(); ///按键音初始化函数

#if RTC_ENABLE
    if (rtc_init())			//RTC初始化,检测是否闹钟开机
    {
        work_mode = RTC_MODE;
    }
#else
    {
        u8 rtc_reg = read_rtc_reg();
        if (rtc_reg & BIT(7))					//检测是否掉电
        {
            rtc_reg &= ~(BIT(7)); 				//清零PDFLAG
            write_rtc_reg(rtc_reg);
#if USE_RTC_RAM

#if RTC_ENABLE
            reset_rtc_ram();
#else
            {
                u8 i;
                for (i = 0; i < 64; i++)
                {
                    write_rtc_ram(i, 0);
                }
            }
#endif   ///<RTC_ENABLE
            

#endif ///<USE_RTC_RAM
        }
    }
#endif
    key_init();
    bsp_init();
#if ECHO_ENABLE
    dec_analog_vol_sel(1);
    echo_ptr = (REVERB_CTL _xdata *)get_echo_var_ptr(1);
    encode_msg = (ENCODE_MSG _xdata *)get_encode_msg_ptr();
    app_echo.strong = 150;
    app_echo.deep = 40;
#else
    dec_analog_vol_sel(0);
    get_echo_var_ptr(0);///<传参0,不适用混响功能
#endif
    interrupt_init(15, rtcisr);
    interrupt_init(3, timer3isr);
    interrupt_init(0, timer0isr);
    enable_interrupt();
}