📄 tunerrds.h
字号:
/**************************************************************************************/
/*********************** BBK CONFIDENTIAL ************************/
/*********************** ************************/
/*********************** Description : Digital Audio Process ************************/
/*********************** ************************/
/*********************** Company: BBK AV ELECTRONICS CORP.,LTD ************************/
/*********************** ************************/
/*********************** Programmer : Terry Lee ******** ****************/
/**************************************************************************************/
#ifndef _TUNERRDS_H_
#define _TUNERRDS_H_
#ifdef TUNERRDS_PAR
#define TUNERRDS_EXT
#else
#define TUNERRDS_EXT extern
#endif
#ifdef BBK_RD2_RDS
#ifdef OSD_SHOW_RDS
#define OSD_SHOW_RDS_CHAR (32)
#endif
enum
{
TUNER_DISP_NORMAL,
TUNER_DISP_RDS
};
// for tuner mode
enum
{
#ifdef FRE_INPUT
FREQ_INPUT_MODE,
#endif
SETUP_FREQ_MODE,
SET_FREQ_MODE,
LOAD_FREQ_MODE,
STEP_FREQ_MODE,
SEARCH_MODE,
STORE_FREQ_MODE,
AUTOSEARCH_MODE
};
typedef struct
{
//byte 1
BYTE fgRDSPS:1;
BYTE fgRDSPTY:1;
BYTE fgRDSRT:1;
BYTE fgRDSCLK:1;
BYTE fgRDSPTN:1;
BYTE fgRDSBlkSync:1;
BYTE fgRDSBlkEnd:1;
BYTE fgRDSMsgSync:1;
//byte 2
BYTE fgRDSStep:3;//four blocks
BYTE bRDSGrpIdSync:4;
BYTE fgGrp2CurTextAB:1;//for group 2 test flag
//BYTE 3
BYTE fgGrp2LasTextAB:1;
BYTE fgRDSSync:1;
BYTE fgRDS_CLK:1;
BYTE fgRDSBitData:1;
BYTE fgNextData:1;
BYTE reserved:3;
//word
WORD wfgRdsSeg;//for display steps
}strucRDS;
#ifdef RDS_USE_SM
TUNERRDS_EXT BYTE xdata RDS_STA_ADDR[14];
#endif
TUNERRDS_EXT BYTE xdata _fgTunerDispReq; //VFD requited to display。Only use in Reciever。
TUNERRDS_EXT BYTE xdata _bRDSTime;
TUNERRDS_EXT BYTE xdata _bRDSAllStep;
TUNERRDS_EXT BYTE xdata _bCurRDSStep;
TUNERRDS_EXT BYTE xdata _bRDSState;
TUNERRDS_EXT xdata strucRDS _rRDS;
TUNERRDS_EXT BOOL _vHasRDSINFO;
TUNERRDS_EXT BOOL _vTempLoseRDS;
TUNERRDS_EXT BOOL _VfdIsLighting;
TUNERRDS_EXT BYTE xdata RDSRECEIVESUM;
TUNERRDS_EXT BYTE xdata _bTimeCnt;//the timer for tuner
TUNERRDS_EXT BYTE xdata _bTunerDispType;
#ifdef RDS_USE_BU1924
TUNERRDS_EXT DWRD xdata _bRDS_data;//26 bit
TUNERRDS_EXT WORD xdata _wSyndrome;//10 bit
#ifdef RDS_BU1924_NEW_TIMER
#define RDS_GETTING_BIT_STATE 0
#define RDS_PARSE_BIT_STATE 1
#define RDS_STORE_STATE 2
#endif
#endif
#define RDS_FREQ_ST 0
#define RDS_PS_ST 1
#define RDS_PTY_ST 2
#define RDS_RT_ST 3
#define RDS_PTN_ST 5
#define RDS_CLK_ST 4
#define KISENSE_VFD_LENTH 12
#define NO_RDS_SHOW_TIME 100
#define RDS_DISP_INTER 20 //15->5 15->5 // ztb RDS 流动时间间隔
#define RDS_DISP_MAX_LEN 64
#define GROUP_0_SEG 0X000F
#define GROUP_2_SEG 0XFFFF //FROM OXFF TO OX0F
#define GROUP_A_SEG 0X0003
#ifdef RDS_USE_SM
#define RDS_STA_ADDR1 ((BYTE *)&(RDS_STA_ADDR))
#define _pbGroupData (RDS_STA_ADDR1) // 12 byte
#define _bSequence (RDS_STA_ADDR1+12) // 1 byte
#define _bRDSTimerState (RDS_STA_ADDR1+13) // 1 byte
#else
#define RDS_STA_ADDR1 ((BYTE *)&(_bFlMnListId)) //Address start FLMAIN
#define _pbRDSDisplayData (RDS_STA_ADDR1) // 64 byte
#define _pbRDSRT (RDS_STA_ADDR1+64) // 64 byte +1 byte char number
#define RDS_STA_ADDR2 (((BYTE *)&(_bFlMnListId))+257) //Address start CAL_FUNC
#define _pbRDSData (RDS_STA_ADDR2) // 7 byte
#define _pbRDSPsName (RDS_STA_ADDR2+7) // 8 byte
#define _pbRDSPTY (RDS_STA_ADDR2+15) // 1 byte
#define _pbRDSCLK (RDS_STA_ADDR2+16) // 2 byte
#define _pbGroupData (RDS_STA_ADDR2+18) // 12 byte
#define _bSequence (RDS_STA_ADDR2+30) // 1 byte
#define _bRDSTimerState (RDS_STA_ADDR2+31) // 1 byte
#endif
TUNERRDS_EXT void vRdsInforRefresh(void)large;
TUNERRDS_EXT void vReadRDSBU1924(void)large;
TUNERRDS_EXT BOOL fgRDSGroupSync(void)large;
TUNERRDS_EXT void vExtractBlkFrmData(void)large;
TUNERRDS_EXT void vResetRDSMsgSync(void)large;
TUNERRDS_EXT void vResetRDSBlkSync(void)large;
#ifndef TEMP_RDS
TUNERRDS_EXT void vResetRDSVar(void)large;
#endif
TUNERRDS_EXT void vRDSDispDeal(void)large;
TUNERRDS_EXT void vRDSDispProc(void)large;
TUNERRDS_EXT void vRDSNewDisCyc(void)large;
#ifndef TEMP_RDS
TUNERRDS_EXT void vRDSInit(void)large;
#endif
TUNERRDS_EXT void vRDSSHOWCLR(void)large;
TUNERRDS_EXT BYTE bRDSPSDispPrep(void) large;
TUNERRDS_EXT BYTE bRDSPTYDispPrep(void) large;
TUNERRDS_EXT BYTE bRDSRTDispPrep(void) large;
TUNERRDS_EXT BYTE bRDSCLKDispPrep(void) large;
TUNERRDS_EXT BYTE bRDSPTNDispPrep(void) large;
TUNERRDS_EXT BOOL fgParseRDSGroupData(void) large;
TUNERRDS_EXT BOOL fgParseRDSGroup0(void)large;
TUNERRDS_EXT BOOL fgParseRDSGroup2(void)large;
TUNERRDS_EXT BOOL fgParseRDSGroup4(void)large;
//TUNERRDS_EXT BOOL fgParseRDSGroupA(void)large;
TUNERRDS_EXT BYTE bRDSCharNum(BOOL fgGroupAB)large;
TUNERRDS_EXT void vRDSDetDeal(void) large;
TUNERRDS_EXT void vTunerRdsInit(void) large;
TUNERRDS_EXT void vTunerRdsPro(void) large;
#endif
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -