📄 usb_ap_main.c
字号:
//********************************************************************
// Name: MusicAPI.c
//
// Copyright (C) Sitronix TECHNOLOGY INC.
// All rights reserved by Sitronix TECHNOLOGY INC.
//
// Project: ST3110
// Author: Terry Wu
// Begin Date: 2008/01/01
// Last update: 2008/04/01
// $Header: $
// Description:
// music function
//
//
//********************************************************************
#include <intr6502.h>
#include "sys.h"
#include "MusicPlayer.h"
#include "img_position.h"
#include "ST3110_img_define.h"
#include "usbap.h"
#pragma codeseg(APP)
#ifdef BL_ADJUST
extern uint8 bl_frequency; //0: 1K 1:20K
extern uint8 bl_level; //0~31
#endif
extern uint8 selection,language,resume_flag,bg_music_state,state;
extern void _usb_main_menu(uint8 selection);
extern void _usb_connect_pc(void);
void _usb_disconnect_pc(uint8 resume_flag, uint8 state);
void _return_last_task(uint8 state);
uint8 _load_path(uint32 ram_path_adr);
void APP_MAIN(void)
{
if(API_OsCheckEventOccur(EVID_KEY_DOWN_60MS))
{
API_OsReleaseEvent(EVID_KEY_DOWN_60MS);
switch(API_OsGetKeyId())
{
/*
case KEYID_AB:
API_SysMixerOutputSelection(MIXER_MIC);
API_VoiceRecordStart("test.wav",2,0,FF_ID_WAV);
break;
case KEYID_SETTING:
API_SysMixerOutputSelection(MIXER_DAC);
API_VoiceRecordStop();
break;
*/
case KEYID_PLAY:
if(selection == USB_ITEM_PC)
{
_usb_connect_pc();
state = USB_ITEM_PC;
resume_flag = FALSE;
return;
}
else
{
//API_OsSetCurrentTask(API_SysReadValue(RAM_SHARING_ADR,LAST_TASK));
API_SysWriteValue(RAM_SHARING_ADR,VBUS_STATE,VBUS_SRC_ADAPTER);
_usb_disconnect_pc(resume_flag,state);
}
break;
case KEYID_UP:
if(selection == USB_ITEM_CHARGE)
{
selection = USB_ITEM_PC;
_usb_main_menu(selection);
//API_OsPendEvent(EVID_KEY_DOWN_60MS);
}
break;
case KEYID_DOWN:
if(selection == USB_ITEM_PC)
{
selection = USB_ITEM_CHARGE;
_usb_main_menu(selection);
//API_OsPendEvent(EVID_KEY_DOWN_60MS);
}
break;
#ifdef BL_ADJUST
case KEYID_MODE:
API_LcmDisableKeepBackGround();
API_LcmShowString("Please press Mode key to adjust BlackLight Frequency",0,0);
bl_frequency = !bl_frequency;
if(bl_frequency == 0) // 0:Frequency 1K
{
*((uint8*)(0x47)) = 0x4F;
API_LcmShowString("PWM: 1K",0,16);
}
else
{
*((uint8*)(0x47)) = 0x1F;
API_LcmShowString("PWM:20K",0,16);
}
API_LcmSetBackLight(bl_level);
API_LcmShowString("BlackLight:",0,32);
API_LcmShowNumber(bl_level,0,48,1);
break;
case KEYID_LEFT:
if(bl_level == 0)
bl_level = 31;
else
bl_level--;
API_LcmSetBackLight(bl_level);
API_LcmShowString("BlackLight:",0,32);
API_LcmShowNumber(bl_level,0,48,1);
break;
case KEYID_RIGHT:
if(bl_level == 31)
bl_level = 0;
else
bl_level++;
API_LcmSetBackLight(bl_level);
API_LcmShowString("BlackLight:",0,32);
API_LcmShowNumber(bl_level,0,48,1);
break;
#endif
}
API_OsPendEvent(EVID_KEY_DOWN_60MS);
}
#ifdef BL_ADJUST
if(API_OsCheckEventOccur(EVID_KEY_KEEP_DOWN))
{
API_OsReleaseEvent(EVID_KEY_KEEP_DOWN);
switch(API_OsGetKeyId())
{
case KEYID_LEFT:
if(bl_level == 0)
bl_level = 31;
else
bl_level--;
API_LcmSetBackLight(bl_level);
API_LcmShowString("BlackLight:",0,32);
API_LcmShowNumber(bl_level,0,48,1);
break;
case KEYID_RIGHT:
if(bl_level == 31)
bl_level = 0;
else
bl_level++;
API_LcmSetBackLight(bl_level);
API_LcmShowString("BlackLight:",0,32);
API_LcmShowNumber(bl_level,0,48,1);
break;
}
API_OsPendEvent(EVID_KEY_KEEP_DOWN);
}
#endif
/*
if(API_OsCheckEventOccur(EVID_BT_2HZ))
{
uint8 min,sec;
API_OsReleaseEvent(EVID_BT_2HZ);
API_MusicGetCurrentPlayTime(&hr,&min,&sec);
API_LcmDisableKeepBackGround();
API_LcmShowNumber(min,0,0,1);
API_LcmShowNumber(sec,16,0,1);
API_OsPendEvent(EVID_BT_2HZ);
}
if(API_OsCheckEventOccur(EVID_AUD_THD_RESPONSE))
{
API_OsReleaseEvent(EVID_AUD_THD_RESPONSE);
switch(API_MusicGetThreadState())
{
case TS_STOP:
API_VoiceMicOFF();
break;
}
API_OsPendEvent(EVID_AUD_THD_RESPONSE);
}
*/
if(API_OsCheckEventOccur(EVID_VBUS_PLUGOUT))
{
API_OsReleaseEvent(EVID_VBUS_PLUGOUT);
if(API_SysGetUSBSource() == VBUS_SRC_USB_OFF_LINE)
API_SysWriteValue(RAM_SHARING_ADR,VBUS_STATE,VBUS_SRC_ADAPTER);
else
API_SysWriteValue(RAM_SHARING_ADR,VBUS_STATE,VBUS_SRC_NONE);
_usb_disconnect_pc(resume_flag,state);
API_OsPendEvent(EVID_VBUS_PLUGOUT);
}
if(API_OsCheckEventOccur(EVID_UPDATE_SD))
{
API_OsReleaseEvent(EVID_UPDATE_SD);
if(API_SysSDCardDetect())
;
API_OsPendEvent(EVID_UPDATE_SD);
}
if (API_OsCheckEventOccur(EVID_AUD_THD_RESPONSE))
{
API_OsReleaseEvent(EVID_AUD_THD_RESPONSE);
switch(API_MusicGetThreadState())
{
case TS_STOP:
_usb_main_menu(selection);
break;
case TS_PLAY:
if(bg_music_state == TS_PAUSE)
API_MusicPause();
else
_return_last_task(state);
break;
case TS_PAUSE:
_return_last_task(state);
break;
}
API_OsPendEvent(EVID_AUD_THD_RESPONSE);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -