⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bbktuner.h

📁 关于收音功能代码,并且显示在OSD和VFD上
💻 H
字号:
/**************************************************************************************/
/***********************                    BBK CONFIDENTIAL                   ************************/
/***********************                                                                    ************************/
/***********************         Description : Digital Audio Process          ************************/
/***********************                                                                    ************************/
/*********************** Company: BBK AV ELECTRONICS CORP.,LTD ************************/
/***********************                                                                    ************************/
/***********************              Programmer : Terry Lee                  ******** ****************/
/**************************************************************************************/

#ifndef _BBKTUNER_H_
#define _BBKTUNER_H_

#ifdef BBKTUNER_PAR
#define BBKTUNER_EXT
#else
#define BBKTUNER_EXT extern
#endif


#ifdef BBK_RD2_NEW_TUNER
#define BBKTUNER_NONE						0xFF

#define SEARCH_WAIT_TIME					(20)
#define SAVE_WAIT_TIME						(20)

#define MULTIFUNCKEY_CNT					(4)
#define AUTO_SKIP_KEEP_TIME				(80) 
#define AUTO_SKIP_SPEED					(30)

#define LOAD_FREQ_WAIT_TIME				(1)

typedef enum
{
TUNER_STATE_MENU,
TUNER_STATE_BROWSER,
TUNER_STATE_NS,
TUNER_STATE_MAX = TUNER_STATE_NS - 1,
TUNER_STATE_NONE = BBKTUNER_NONE
}E_TUNER_STATE;

typedef enum
{
TUNER_BRW_STATE_HEAD,
TUNER_BRW_STATE_ITEM,
TUNER_BRW_STATE_DATA,
TUNER_BRW_STATE_NS,
TUNER_BRW_STATE_MAX = TUNER_BRW_STATE_NS - 1,
TUNER_BRW_STATE_NONE = BBKTUNER_NONE
}E_TUNER_BRW_STATE;


typedef enum
{
TUNER_BRW_ITEM_CHANNEL,
TUNER_BRW_ITEM_BAND,
TUNER_BRW_ITEM_SIGNAL,
TUNER_BRW_ITEM_AMSTEP,
TUNER_BRW_ITEM_AUTO,
TUNER_BRW_ITEM_LINE,
TUNER_BRW_ITEM_SAVE,
TUNER_BRW_ITEM_NS,
TUNER_BRW_ITEM_MAX = TUNER_BRW_ITEM_NS - 1,
TUNER_BRW_ITEM_NONE = BBKTUNER_NONE
}E_TUNER_BRW_ITEM;


typedef enum
{
TUNER_SEARCH_INIT,
TUNER_SEARCH_SET,
TUNER_SEARCH_WAIT,
TUNER_SEARCH_VERIFY,
TUNER_SEARCH_SAVE,
TUNER_SEARCH_WAIT2,
TUNER_SEARCH_END,
TUNER_SEARCH_NS,
TUNER_SEARCH_MAX = TUNER_SEARCH_NS - 1,
TUNER_SEARCH_NONE = BBKTUNER_NONE
}E_TUNER_SEARCH_STATE;


typedef enum
{
TUNER_INIT_STEP1,
TUNER_INIT_STEP2,
TUNER_INIT_STEP3,
TUNER_INIT_STEP4,
TUNER_INIT_FINISH,
TUNER_INIT_NS,
TUNER_INIT_MAX = TUNER_INIT_NS -1,
TUNER_INIT_NONE = BBKTUNER_NONE
}E_TUNER_INIT_STEP;


typedef enum
{
TUNER_MODE_INIT,
TUNER_MODE_NORMAL,
TUNER_MODE_LOAD_FREQ,
TUNER_MODE_SEARCH_UP,
TUNER_MODE_SEARCH_DOWN,
TUNER_MODE_AUTO_SEARCH,
TUNER_MODE_AUTO_SKIP_UP,
TUNER_MODE_AUTO_SKIP_DOWN,
TUNER_MODE_NS,
TUNER_MODE_MAX = TUNER_MODE_NS - 1,
TUNER_MODE_NONE = BBKTUNER_NONE
}E_TUNER_MODE;

typedef enum
{
TUNER_TIMER_FREQ_REFRESH,
TUNER_TIEMR_NONE0,
TUNER_TIEMR_NONE1,
TUNER_TIEMR_NONE2,
TUNER_TIMER_NONE3,
TUNER_TIEMR_NONE4,
TUNER_TIEMR_NONE5,
TUNER_TIEMR_NONE6,
TUNER_TIMER_STEREO_CHECK,
TUNER_TIEMR_NONE7,
TUNER_TIEMR_NONE8,
TUNER_TIEMR_NS,
TUNER_TIEMR_MAX = TUNER_TIEMR_NS - 1,
TUNER_TIEMR_NONE = BBKTUNER_NONE
}E_TUNER_TIMER;

typedef enum
{
TUNER_VFD_DISPLAY_FREQ,
TUNER_VFD_DISPLAY_CHANNEL,
TUNER_VFD_DISPLAY_NS,
TUNER_VFD_DISPLAY_MAX = TUNER_VFD_DISPLAY_NS - 1,
TUNER_VFD_DISPLAY_NONE = BBKTUNER_NONE
}E_VFD_DISPLAY;

typedef struct
{
WORD wDataMsg;
WORD wDataVal;
}S_TUNER_BRW_DATA;

typedef struct
{
WORD wItemMsg;
WORD wItemStY;
}S_TUNER_BRW_ITEM;


BBKTUNER_EXT E_TUNER_STATE xdata _eTunerState;
BBKTUNER_EXT E_TUNER_BRW_STATE xdata _eTunerBrwState;
BBKTUNER_EXT E_TUNER_BRW_ITEM xdata _eTunerBrwItem;
BBKTUNER_EXT E_TUNER_SEARCH_STATE xdata _eTunerSearchState;
BBKTUNER_EXT E_TUNER_MODE xdata _eTunerMode;
BBKTUNER_EXT E_VFD_DISPLAY xdata _eTunerVfdDis;
BBKTUNER_EXT E_TUNER_INIT_STEP xdata _eTunerInitStep;
BBKTUNER_EXT BYTE xdata _bTunerTimer;
BBKTUNER_EXT BYTE xdata _bTnrMute;
BBKTUNER_EXT BYTE xdata _bTnrInitStep;
BBKTUNER_EXT BYTE xdata _bTnrStationCnt;
BBKTUNER_EXT BYTE xdata _bTnrSearchTime;
BBKTUNER_EXT BYTE xdata _bTnrDataCur;
BBKTUNER_EXT BYTE xdata _bBBKSysState;  
BBKTUNER_EXT BYTE xdata _bTnrKeyCnt;
//BBKTUNER_EXT BYTE xdata _bTnrEnterKeyTimer;

#ifdef TUNER_VFD_SHOW_ST
BBKTUNER_EXT BYTE xdata _bStCheckCnt;
BBKTUNER_EXT BYTE xdata _bStCheckTimer;
#endif

typedef BOOL (code *fgTunerState)(void) large;


BBKTUNER_EXT void vBBKTunerInit(void) large;
BBKTUNER_EXT void vBBKTunerEnter(void) large;
BBKTUNER_EXT BOOL fgBBKTunerKeyProc(void) large;
BBKTUNER_EXT void vBBKTunerTime(void) large;
BBKTUNER_EXT void vBBKTunerExit(void) large;
BBKTUNER_EXT void vBBKTunerRecover(void) large;
#endif
#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -