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

📄 tun0299.h

📁 Zoran V966 DVD 解码 Soc芯片的源程序
💻 H
字号:
/* **************************************************************************************
 *  Copyright (c) 2004 ZORAN Corporation, All Rights Reserved
 *  THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF ZORAN CORPORATION
 *
 *  File: $Workfile: .c $             
 *
 * Description:
 * ============
 * 
 * 
 * Log:
 * ====
 * $Revision: $
 * Last Modified by $Author:  $ at $Modtime: $ 
 **************************************************************************************** */
#include "Config.h"		// Global Configuration - do not remove!

#ifndef H_TUN0299
#define H_TUN0299

/////////////////////////////////////////////////////////////////////////////////////////////////
// Include files

#include "Config.h"
#include "Include\Sysdefs.h"
#include "Devices\Demodulator\demod_def.h"

/////////////////////////////////////////////////////////////////////////////////////////////////
// Constants

#define TUN_MAX_BW			10

#define TUNER_WRITE_ADDRESS	0xC2
#define TUNER_READ_ADDRESS	0xC3

/////////////////////////////////////////////////////////////////////////////////////////////////
// Enumerations

typedef enum
{
	TNR_NO_ERR = 0,
	TNR_TYPE_ERR,
	TNR_ACK_ERR,
	TNR_PLL_ERR,
	TNR_STEP_ERR
} TUNER_ERROR;

typedef enum
{
	PLL_5522 = 0,
	PLL_5655,
	PLL_5659,
	PLL_TUA6100,
	PLL_CUSTOM
} PLL_TYPE;

typedef enum
{
	TNR_VG6821 = 0,
	TNR_VG1011,
	TNR_EVALMAX,
	TNR_TUA6100,
	TNR_CUSTOM
} TUNER_TYPE;

/////////////////////////////////////////////////////////////////////////////////////////////////
// Structures

/* Tuner properties structure */
typedef struct
{
	TUNER_TYPE	Type;					/*	Tuner type					*/
	char	Name[20];					/*	Name of the tuner			*/
	unsigned char Address;  			/*	I2C address of the tuner	*/
	PLL_TYPE PLL;						/*	PLL type					*/
	long	I_Q,						/*	IQ inversion				*/
			FreqFactor,					/*	Frequency Factor			*/
			StepSize,					/*	PLL step size				*/
			IF,							/*	IF							*/				
			BandWidth[TUN_MAX_BW + 1],	/*	Bandwidths					*/
			Repeator;					/*	Using repeator				*/
	INT WrSize;							/*	Size of data to write		*/
    INT SelectBW;						/*	Selected bandwidth			*/
	UINT8 WrBuffer[20];					/*	Data to write				*/
	INT RdSize;							/*	Size of data to read		*/
	UINT8 RdBuffer[20];					/*	Data read					*/
	TUNER_ERROR Error;					/*	Last Error					*/
} TUNER_PROP;

/////////////////////////////////////////////////////////////////////////////////////////////////
// Public Services

void TunerInfSetChargePump(INT32 CpValue);
void TunerGetProperties(TUNER_PROP *tnr);
void TunerResetError(void);  
void TunerSelect(DEMOD_HANDLE handle, TUNER_TYPE type, unsigned char address); 
void TunerSetNbSteps(DEMOD_HANDLE handle, UINT32 nbsteps);
void TunerReadWrite(DEMOD_HANDLE handle, BOOL bWriteOperation);  
void TunerInit(DEMOD_HANDLE handle);
long TunerSelectBandwidth(long bandwidth); 
UINT32 TunerGetNbSteps(void);
long TunerGetFrequency(void);
long TunerSetFrequency(DEMOD_HANDLE handle,long frequency);
INT32 TunerGetTunerLock(DEMOD_HANDLE handle);

#endif // H_TUN0299

⌨️ 快捷键说明

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