📄 tuner_pal.h
字号:
/******************************************************************************
Copyright (c) 2004 MStar Semiconductor, Inc.
All rights reserved.
[Module Name]: DevTuner.h
[Date]: 28-Jan-2004
[Comment]:
TV tuner header file.
[Reversion History]:
*******************************************************************************/
#ifndef _TUNER_PAL_H_
#define _TUNER_PAL_H_
#include "drvAnalog_DataType.h"
#ifdef TUNER_PAL_C
#define INTERFACE
#else
#define INTERFACE extern
#endif
///////////////////////////////////////
// Sub tv system
///////////////////////////////////////
#if (FRONTEND_IF_MIXER_TYPE==THOMSON_FE6640_TUNER)
#define TN_PROG_I2C_ADDR 0xC2
#elif(FRONTEND_IF_MIXER_TYPE==XUGUANG_T126CWADC)
#define TN_PROG_I2C_ADDR 0xC2
#elif(FRONTEND_IF_MIXER_TYPE==PHILIPS_FQD1216_TUNER)
#define TN_PROG_I2C_ADDR 0xC2
#endif
#if (FRONTEND_IF_DEMODE_TYPE==THOMSON_FE6640_TUNER)
#define TN_IF_I2C_ADDR 0x82
#elif(FRONTEND_IF_DEMODE_TYPE==PHILIPS_TDA9886)
#define TN_IF_I2C_ADDR 0x86
#elif(FRONTEND_IF_DEMODE_TYPE==PHILIPS_FQD1216_TUNER)
#define TN_IF_I2C_ADDR 0x86
#endif
////////////////////////////
// Band Switching Byte
////////////////////////////
#if (FRONTEND_TUNER_TYPE==PHILIPS_FQD1216_TUNER)
#define TN_LOW_BAND 0x51
#define TN_MID_BAND 0x52
#define TN_HIGH_BAND 0x54
#else
#define TN_LOW_BAND 0x01
#define TN_MID_BAND 0x02
#define TN_HIGH_BAND 0x04
#endif
////////////////////////////////
// TDA9885 Read Mode(MK3)
////////////////////////////////
#define TN_READ_AFCWIN _BIT7
#define TN_READ_VIFL _BIT6
#define TN_READ_FMIFL _BIT5
#define TN_READ_AFC4 _BIT4
#define TN_READ_AFC3 _BIT3
#define TN_READ_AFC2 _BIT2
#define TN_READ_AFC1 _BIT1
#define TN_READ_PONR _BIT0
#define TN_READ_AFC (TN_READ_AFC1 | TN_READ_AFC2 | TN_READ_AFC3 | TN_READ_AFC4)
// Tuner Programming Data Structure
typedef struct _TunerProgramType
{
// Divide ratio:
// N = 16 * {Frf(pc) + Fif(pc)}, where (pc) is picture carrier and Frf and Fif
// are expressed in MHz.
// Fosc = N / 16 (MHz)
// N = (n13 * 2^13) + (n12 * n^12) + ... + (n1 * 2) + n0
U16 ProgDivide; // Program divider 2 byte (n14-n0)
U8 ControlInfo1; // Control information byte 1
U8 ControlInfo2; // Control information byte 1(P7-P0)
#if (FRONTEND_TUNER_TYPE==PHILIPS_FQD1216_TUNER)
U8 AuxilliaryByte; // Auxilliary byte
#endif
}TunerProgramType;
/////////////////////////////////////
// Subroutines
/////////////////////////////////////
INTERFACE void devTunerInitialize(void);
INTERFACE U8 devTunerGetStatus(U8 ucLoopCount);
INTERFACE U8 devTunerWrite(TunerProgramType *pProgParam);
INTERFACE void devTunerSetSubSys( EnuTunerSoundSystem ucSoundSystem );
INTERFACE U8 devTunerSetChannel( EnuTunerSoundSystem ucSoundSystem, U16 wFreq );
INTERFACE BOOLEAN devTunerFineTuneFreq( U16 wOriFreq, U16* pwResultFreq );
//INTERFACE U16 devTunerScanFreqRange( U16 wFreqStart, U16 wFreqEnd, char cStep );
INTERFACE WORD devTunerScanFreq( WORD wFreq );
INTERFACE U8 devTunerSetFreq( U16 wFreq );
INTERFACE U8 devTunerSetChannel( EnuTunerSoundSystem ucSoundSystem, U16 wFreq );
#undef INTERFACE
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -