📄 tuner.h
字号:
#ifndef __TUNER_H__
#define __TUNER_H__
#ifdef TV
//Select tuner/////////
//#define LG_701P
//#define JS_6B111
//#define JS_8B111
//#define FQ_1286
//#define XG_JS6B2
//#define XG_JS6BM
//#define PHILIPS_FQ1236
// #define XG_JS6B1
#define XF_6CL
//-------- Tuner module support standard selection --------------------------
#define TUNER_NTSC 1
#define TUNER_PAL 2
#define TUNER_SECAM 3
//-------- TV channel support region -------------------------------
#define TV_REGION_US 0 // USA
#define TV_REGION_JP 1 // Japan
#define TV_REGION_EP 3 // Europe
#define TV_REGION_EP_SECAM 4 // Europe_Secam
#define TV_REGION_CN 5 // China
//-------- TV source switch method -------------------------
// NTSC
#define TV_SW_AIR_STD 0 // (NTSC)AIR -> STD
#define TV_SW_AIR_STD_IRC_HRC 1 // AIR -> STD -> IRC -> HRC
#define TV_SW TV_SW_AIR_STD // AIR -> STD
//-------- TV mode -----------------------------------------
#if(TV_SW== TV_SW_AIR_STD)
#define TV_AIR 0 // TV AIR
#define TV_STD 1 // TV STD (CATV)
#elif(TV_SW== TV_SW_AIR_STD_IRC_HRC)
#define TV_AIR 0 // TV AIR
#define TV_STD 1 // TV STD (CATV)
#define TV_IRC 2 // TV IRC
#define TV_HRC 3 // TV HRC
#endif
#define PAL_I 0x0e
#define PAL_DK 0x0f
/////////////////////////////////////////////////////////
void AutoMemory(uCHAR);
void AutoScan(void);
//BOOL ChannelSel(uWORD *wTVFreq, uWORD wTVFreqMin);
//BOOL ChannelSel(BYTE Ch_No);
BOOL ChannelSel(void);
uCHAR TVEEPGetChannel(void);
void SetChannel(uCHAR);
void SetTuner(unsigned int DevNum);
#ifdef PHILIPS_FQ1236
#define BAND_VL 0x01
#define BAND_VH 0x02
#define BAND_UHF 0x04
#define VL_FREQ_MAX 202.15 //100 times
#define VH_FREQ_MAX 504.15 //100 times
#define VLMAX (VL_FREQ_MAX*STEP_COEF) //0x0FA5
#define VHMAX (VH_FREQ_MAX*STEP_COEF) //0x26c5
#include "tuner_PHILIPS_FQ1236.h"
#endif
#ifdef FQ_1286
//Step=50K; VL {84.25 <-> 200.25}
// VH {196.25 <-> 496.25}
// UHF {497.25 <-> 903.25}
#define BAND_VL 0x01
#define BAND_VH 0x02
#define BAND_UHF 0x04
#define VL_FREQ_MAX 160 //100 times
#define VH_FREQ_MAX 442 //100 times
#define VLMAX (VL_FREQ_MAX*STEP_COEF) //0x0FA5
#define VHMAX (VH_FREQ_MAX*STEP_COEF) //0x26c5
#include "tuner_PHILIPS_FQ1286.h"
#endif
#ifdef XF_6CL
#define FRGSTEP 156//unit 10kHz//1560000 //0x19 // 1 step=1.56 MHz
#define CHWIDTH 300//unit 10kHz//3000000 //0x30 // 3 MHz
#define BAND_VL 0x01
#define BAND_VH 0x02
#define BAND_UHF 0x04
#define VL_FREQ_MAX 202.15 //100 times
#define VH_FREQ_MAX 504.15 //100 times
#define VLMAX (VL_FREQ_MAX*STEP_COEF) //0x0FA5
#define VHMAX (VH_FREQ_MAX*STEP_COEF) //0x26c5
#include "tuner_XF_6CL.h"
#endif
#ifdef JS_6B111
//Step=50K; VL {84.25 <-> 200.25}
// VH {196.25 <-> 496.25}
// UHF {497.25 <-> 903.25}
#define BAND_VL 0x01
#define BAND_VH 0x02
#define BAND_UHF 0x04
#define VL_FREQ_MAX 200.25 //100 times
#define VH_FREQ_MAX 496.25 //100 times
#define VLMAX (VL_FREQ_MAX*STEP_COEF) //0x0FA5
#define VHMAX (VH_FREQ_MAX*STEP_COEF) //0x26c5
#endif
#ifdef JS_8B111
//Step=50K; VL {84.25 <-> 200.25}
// VH {196.25 <-> 496.25}
// UHF {497.25 <-> 903.25}
#define BAND_VL 0x01
#define BAND_VH 0x02
#define BAND_UHF 0x08
#define VL_FREQ_MAX 176.25 //100 times
#define VH_FREQ_MAX 464.25 //100 times
#define VLMAX (VL_FREQ_MAX*STEP_COEF) //0x0FA5
#define VHMAX (VH_FREQ_MAX*STEP_COEF) //0x26c5
#endif
#ifdef LG_701P
#define BAND_VL 0x01
#define BAND_VH 0x02
#define BAND_UHF 0x08
#define VL_FREQ_MAX 176.25 //100 times
#define VH_FREQ_MAX 464.25 //100 times
#define VLMAX (VL_FREQ_MAX*STEP_COEF) //0x0FA5
#define VHMAX (VH_FREQ_MAX*STEP_COEF) //0x26c5
#include "tuner_LG_TAPC_H701F.h"
#endif
#ifdef XG_JS6B2
#define BAND_VL 0x01
#define BAND_VH 0x02
#define BAND_UHF 0x04
#define VL_FREQ_MAX 202.15 //100 times
#define VH_FREQ_MAX 504.15 //100 times
#define VLMAX (VL_FREQ_MAX*STEP_COEF) //0x0FA5
#define VHMAX (VH_FREQ_MAX*STEP_COEF) //0x26c5
#include "tuner_XG_JS6B2.h"
#endif
#ifdef XG_JS6BM
#define BAND_VL 0x01
#define BAND_VH 0x02
#define BAND_UHF 0x04
#define VL_FREQ_MAX 202.15 //100 times
#define VH_FREQ_MAX 504.15 //100 times
#define VLMAX (VL_FREQ_MAX*STEP_COEF)
#define VHMAX (VH_FREQ_MAX*STEP_COEF) //0x26c5
#include "tuner_XG_JS6BM.h"
#endif
/*-------------------------------------------------------------------------
20060808
-------------------------------------------------------------------------*/
#ifdef XG_JS6B1
#define PAL_FORMAT
#ifdef PAL_FORMAT
#define IF1_FERQ 0x5F28//1218MHz//0x5F50//1220MHz
#define IF2_FERQ1 0x02f8//38MHz//0x030A//38.9MHz
#define IF2_FERQ2 0x02f8//38MHz//0x030A//38.9MHz
#define FREQ_WIDE 0xaf//8.75MHz
#define FREQ_1MHZ 0x14//1MHz
#define FREQ_275M 0x1874//275M+38M
#define STEP_COEF 20
#define TV_TOTAL sizeof(DK_CCIR)/sizeof(uWORD)
#define TV_MIN 0
#define TV_MAX TV_TOTAL-1
#endif
#ifdef NTSC_FORMAT
#define IF1_FERQ 0x4c20//1218.25MHz
#define IF2_FERQ1 0x02DC//45.75MHz//0x026e//38.9MHz//
#define IF2_FERQ2 0x02DC//45.75MHz//0x0260//38MHz
#define FREQ_WIDE 0x6c//6.75MHz
#define FREQ_1MHZ 0x10//1MHz
#define FREQ_275M 0x140c//275M+45.75M//0x139e//275M+38.9M
#define STEP_COEF 16
#endif
#define BAND_VL 0x01
#define BAND_VH 0x02
#define BAND_UHF 0x04
#define VL_FREQ_MAX 200.25 //100 times
#define VH_FREQ_MAX 496.25 //100 times
#define VLMAX (VL_FREQ_MAX*STEP_COEF)
#define VHMAX (VH_FREQ_MAX*STEP_COEF) //0x26c5
#include "tuner_XuGuang_JS-6B111.h"
#endif
//===============================================================================================================
// add by kenny 950104
// =============================================================================
// Type Definitions
// =============================================================================
//------- Channel freqency table
typedef struct {
unsigned char bCh_No; // Channel number
unsigned short bCh_Freq; // Channel freqency
unsigned char bCh_Offset; // | bCh_Type; // bCh_Offset 3~0 bits, bCh_Type 7~4 bits
//bCh_Type 0x00-Air, 0x 10 Cable STD, 0x 20 Cable IRC , 0x 30 Cable HRC, 0x 40 TV
}tTV_Freq;
//------- Channel freqency link
typedef struct {
tTV_Freq *TV_Freq; // Channel link
unsigned char bBandWidth; // Channel Bandwidth
}tTV_Channel;
//------- Channel freqency link
typedef struct {
unsigned char CHStart; // Channel Start
unsigned char CHEnd; // Channel End
unsigned char TYPE_TOTAL; // Channel total type
tTV_Freq* TV_Freq;
// unsigned char tbStr; // Freq Table start index
}tTV_Code;
uDWORD Tuner_CalChannelFreq(uCHAR ChNum);
uDWORD TVEEPGetChFreq();
//===============================================================================================================
#endif //TUNER_H
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -