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

📄 tuner.h

📁 这是T118和T103的通用程序
💻 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 + -