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

📄 tidtv_tuner.h

📁 ti的数字电视芯片 tvp9000的源码
💻 H
字号:
/*
 * Filename : TiDTV_Tuner.h (LGDT3302API.h)
 *
 * Copyright (c) 2003-2004, System IC Div., LG Electronics, Inc.
 * All Rights Reserved
 *
 * This is UNPUBLISHED PROPRIETARY SOURCE CODE of LG Electronics, Inc.
 * and may contain proprietary, confidential and trade secret information of
 * LG Electronics, Inc. and/or its partners.
 *  
 * The contents of this file may not be disclosed to third parties or
 * copied or duplicated in any form, in whole or in part, without the prior
 * written permission of LG Electronics, Inc.
 *
 */
#include <math.h>

#ifndef __LGDT3303API_H__
#define __LGDT3303API_H__

#define AGC_SETUP_ADJ		0x1962
#define AGC_SETUP_64QAM		0x2A00
#define AGC_SETUP_256QAM	0x2A80

typedef unsigned char	DATA8;
typedef unsigned short	DATA16;

typedef enum{
	LGDT_ERR_NO			=   0,
	LGDT_ERR_I2C		=   1,
	LGDT_ERR_INIT		=   2,
	LGDT_ERR_UNLOCK		=   4,
	LGDT_ERR_PARAM		=   8,	/// Invalid parameter check
	LGDT_ERR_GET_FUNC	=  16,	/// Error returned from LGDT_Set...() 
	LGDT_ERR_SET_FUNC	=  32,	/// Error returned from LGDT_Get...() 
	LGDT_ERR_SPECTRUM	=  64,	/// Spectrum status symptom shows when QAM mode
	LGDT_ERR_OTHER		= 128,
	LGDT_ERR_TUNER		= 256	/// Reserved for a tuner manufacturer
}LGDT_Return_t;

//------------------------------------------------------//
// TYPE Definition of Demodulator Opertation Mode
//------------------------------------------------------//
typedef enum{
	LGDT_QAM64	= 0x00,
	LGDT_QAM256	= 0x01,
	LGDT_VSB	= 0x03
}LGDT_OperMode_t;

//------------------------------------------------------//
// TYPE Definition of Signal Status
//------------------------------------------------------//
typedef enum{
	LGDT_SIGNAL_NO			= 0,	/// little or no input power detected.
	LGDT_SIGNAL_WEAK		= 1,	/// some power detected.
	LGDT_SIGNAL_MODERATE	= 2,	/// lock achieved, SNR < 15 dB (approx).
	LGDT_SIGNAL_STRONG		= 4,	/// lock achieved, SNR < 24 dB (approx).
	LGDT_SIGNAL_VERY_STRONG	= 8		/// lock achieved, SNR > 24 dB (approx).
}LGDT_SIGNAL_CONDITION_t;

//------------------------------------------------------//
// TYPE Definition of MPEG Mode
//------------------------------------------------------//
typedef enum{
	LGDT_PARAL  = 0x00,					/// LGDT_PARALlel Mode
	LGDT_SERIAL = 0x01					/// LGDT_SERIAL Mode
}LGDT_MPEGMode_t;

//------------------------------------------------------//
// TYPE Definition of Clock Mode
//------------------------------------------------------//
typedef enum{
	LGDT_CLOCK_LOW  = 0x00,				/// LOW Mode
	LGDT_CLOCK_HIGH = 0x01				/// HIGH Mode
}LGDT_Clock_t;

//------------------------------------------------------//
// TYPE Definition of Polarity
//------------------------------------------------------//
typedef enum {
	LGDT_NON_LGDT_INVERTED = 0,
	LGDT_INVERTED = 1
} LGDT_Polarity_t;

//------------------------------------------------------//
// TYPE Definition of S/W Version
//------------------------------------------------------//
typedef struct {
	int Major;
	int Custom;
	int Minor;
} LGDT_Version_s;

LGDT_Return_t LGDTinit3303(LGDT_OperMode_t mode);
LGDT_Return_t LGDTsetTuner(int channel);
LGDT_Return_t LGDTsetReset(void);
LGDT_Return_t LGDTcheckStatus();

LGDT_Return_t LGDTgetRegi(DATA8 addr, DATA8* data);
LGDT_Return_t LGDTgetSNR(double*);
LGDT_Return_t LGDTgetSQI(DATA16* sqi);
LGDT_Return_t LGDTgetPacketErr(DATA16* data);
LGDT_Return_t LGDTgetOperMode(LGDT_OperMode_t* mode);
LGDT_Return_t LGDTgetSignalCondition(LGDT_SIGNAL_CONDITION_t* status);
LGDT_Return_t LGDTgetFreqOffset(DATA16* offset);
LGDT_Return_t LGDTgetIFAcc(DATA16* acc);
LGDT_Return_t LGDTgetDCValue(DATA16* data);
LGDT_Return_t LGDTgetIntMode(DATA8* i, DATA8* j);
LGDT_Return_t LGDTgetVersion(LGDT_Version_s *pLGDT3302Version);

LGDT_Return_t LGDTisLockCR(char *flag);
LGDT_Return_t LGDTisLockSync(char *flag);
LGDT_Return_t LGDTisLockTR(char *flag);
LGDT_Return_t LGDTisLockViterbi(char *flag);
LGDT_Return_t LGDTisLockFEC(char *flag);
LGDT_Return_t LGDTisLockMPEG(char* flag);
LGDT_Return_t LGDTisNTSC(char* flag);

LGDT_Return_t LGDTsetRegi(DATA8 addr, DATA8 data);
LGDT_Return_t LGDTsetMPEGMode(LGDT_MPEGMode_t mode);
LGDT_Return_t LGDTsetMPEGPolarity(LGDT_Clock_t clktrig, LGDT_Clock_t validpol);
LGDT_Return_t LGDTsetAGCData();
LGDT_Return_t LGDTsetAGCInput(DATA16 inputRF, DATA16 inputIF);
LGDT_Return_t LGDTsetAGCPolarity(LGDT_Polarity_t rfpol, LGDT_Polarity_t ifpol);
LGDT_Return_t LGDTsetAGCBandwidth(DATA16 rfbw, DATA16 ifbw);

#endif

⌨️ 快捷键说明

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