/* * $Id: TunerDTT7611.h,v 1.1 2011/07/08 03:43:59 megakiss Exp $ * $Revision: 1.1 $ * $DateTime: 2005/08/24 19:03:17 $ * $Change: 28028 $ * $Author: megakiss $ */ #ifndef TUNER_DTT7611_H #define TUNER_DTT7611_H #include "Cas2BGeneralDefinitions.h" //For Tuner DTT7611 typedef enum EN_TYPE_TUNERDTT7611_REF_DIVIDER_RATIO{ TUNERDTT7611_REF_DIVIDER_RATIO_31_25 = 0, TUNERDTT7611_REF_DIVIDER_RATIO_50, TUNERDTT7611_REF_DIVIDER_RATIO_62_5, TUNERDTT7611_REF_DIVIDER_RATIO_166_7 }TYPE_TUNERDTT7611_REF_DIVIDER_RATIO; typedef enum EN_TYPE_TUNERDTT7611_AGC{ TUNERDTT7611_AGC_102_A = 0, TUNERDTT7611_AGC_102_B, TUNERDTT7611_AGC_99, TUNERDTT7611_AGC_96, TUNERDTT7611_AGC_93, TUNERDTT7611_AGC_90, TUNERDTT7611_AGC_WIDE_BAND_OFF }TYPE_TUNERDTT7611_AGC; typedef enum EN_TYPE_TUNERDTT7611_CHARGE_PUMP{ TUNERDTT7611_CHARGE_PUMP_60 = 0, TUNERDTT7611_CHARGE_PUMP_280 }TYPE_TUNERDTT7611_CHARGE_PUMP; typedef enum EN_TYPE_TUNERDTT7611_AGC_TIME_CONSTANT{ TUNERDTT7611_AGC_TIME_CONSTANT_50_MS = 0, TUNERDTT7611_AGC_TIME_CONSTANT_2_SEC }TYPE_TUNERDTT7611_AGC_TIME_CONSTANT; /* #define DTT7611_DEVICE_ADDRESS_WRITE 0xC2 #define DTT7611_SLAVE_ADDRESS 0x86 */ /* Platform Specific Defenition */ /* #define I2C_DTT7611_DEVICE_ADDRESS_WRITE I2C_DEVICE_INFO(DTT7611_DEVICE_ADDRESS_WRITE,I2C_BUS1,I2C_08_SUB_TYPE,I2C_050_KHZ_SETTING) #define I2C_DTT7611_SLAVE_ADDRESS I2C_DEVICE_INFO(DTT7611_SLAVE_ADDRESS,I2C_BUS1,I2C_NO_SUB_TYPE,I2C_050_KHZ_SETTING) */ #define DTT7611_CHANNEL_DOES_NOT_FIT_ANY_FREQUENCY -1 #define DTT7611_SUCCESS 0 #define DTT7611_FREQUENCY_VALUE_OUT_OF_RANGE 1 #define DTT7611_VALUE_OUT_OF_RANGE 2 #define DTT7611_COULD_NOT_SET_N 3 #define DTT7611_BEFORE_SEND_BYTES_FAILED 4 #define DTT7611_AFTER_SEND_BYTES_FAILED 5 #define DTT7611_SEND_CONTROL_DATA_FAILED 6 #define DTT7611_CHANNEL_OUT_OF_RANGE 7 #define DTT7611_LOW_BAND_MIN 53500 // 53.50 MHz = 55.75 - 2.25 MHz #define DTT7611_LOW_BAND_MAX 150250 #define DTT7611_MID_BAND_MIN 150500 #define DTT7611_MID_BAND_MAX 419250 // 419.25 MHz = 417.00 + 2.25 MHz #define DTT7611_HIGH_BAND_MIN 419500 // 419.50 MHz = 421.75 - 2.25 MHz #define DTT7611_HIGH_BAND_MAX 865250 // 865.25 MHz = 863.00 + 2.25 MHz #define DTT7611_F_IF_KHZ 44000 #define DTT7611_N_MAX 32768 //15 bits //For DTT7612 #define FM_MIN_VALUE 88000 #define FM_MAX_VALUE 108000 #define FM_DTT7612_F_IF_KHZ 41300 #if NIMTN_TYPE==NIMTN_DTT7611 int TunerDTT7611SendChannel(unsigned int uiChannel,CHANNEL_TABLE_TYPE iChannelTable,TYPE_TUNERDTT7611_REF_DIVIDER_RATIO iRefDividerRatio,unsigned int uiAgc, unsigned int uiAgcMode,unsigned int uiChargePump,unsigned int uiAgcTimeConstant); int TunerDTT7611SendFreq(unsigned long ulFrequency,TYPE_TUNERDTT7611_REF_DIVIDER_RATIO iRefDividerRatio,unsigned int uiAgc, unsigned int uiAgcMode,unsigned int uiChargePump,unsigned int uiAgcTimeConstant); int TunerDTT7611SendPicCarrier(unsigned long ulFrequency,TYPE_TUNERDTT7611_REF_DIVIDER_RATIO iRefDividerRatio,unsigned int uiAgc, unsigned int uiAgcMode,unsigned int uiChargePump,unsigned int uiAgcTimeConstant); unsigned long TunerDTT7611GetFrequency(unsigned int uiChannelNumber,CHANNEL_TABLE_TYPE iChannelTable); BOOLEAN TunerDTT7611SetRFFreq(unsigned long ulFrequency,unsigned int uiAgcMode,unsigned char* pucBb); BOOLEAN DTT7611SetN(unsigned long ulFrequency,TYPE_TUNERDTT7611_REF_DIVIDER_RATIO iRefDividerRatio, unsigned char* pucDb1,unsigned char* pucDb2); void DTT7611SetCP(unsigned int uiChargePump,unsigned char* pucCb); void DTT7611SetStepSize(TYPE_TUNERDTT7611_REF_DIVIDER_RATIO iRefDividerRatio, unsigned char* pucCb,unsigned char* pucCb2); void DTT7611SetAGC(unsigned int uiAgc, unsigned char* pucAb); void DTT7611SetATC(unsigned int uiAgcTimeConstant,unsigned char* pucAb); unsigned int DTT7611SendControlData(unsigned int uiAgcMode,unsigned char Db1,unsigned char Db2,unsigned char Cb,unsigned char Bb,unsigned char Ab,unsigned char Cb2); BOOLEAN TunerDTT7611BeforeSendBytes(void); BOOLEAN TunerDTT7611AfterSendBytes(void); void DTT7611InitBytes(unsigned char* pucDb1,unsigned char* pucDb2,unsigned char* pucCb,unsigned char* pucBb,unsigned char* pucAb,unsigned char* pucCb2); unsigned int DTT7611GetTunerStatusReg(unsigned char * pucStatusReg); #endif #endif