/* * $Id: DTT7600Tuner.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 _TUNERDTT7600ATSC_H #define _TUNERDTT7600ATSC_H #include "Cas2BGeneralDefinitions.h" #ifndef COMMON_TARGET_ENDIAN #define COMMON_TARGET_ENDIAN_LITTLE 1 /* Target for Little Endian system */ #define COMMON_TARGET_ENDIAN_BIG 2 /* Target for Big Endian system */ #define COMMON_TARGET_ENDIAN COMMON_TARGET_ENDIAN_BIG #endif /* COMMON_TARGET_ENDIAN */ //For Tuner DTT7600ATSC typedef enum EN_TYPE_TUNERDTT760xATSC_SET_OPTION { TUNERDTT760xATSC_SET_CHANNEL = 0, TUNERDTT760xATSC_SET_PIC_CARRIER_KHZ, TUNERDTT760xATSC_SET_CENTER_FREQUENCY_KHZ, }TYPE_TUNERDTT760xATSC_SET_OPTION; typedef enum EN_TYPE_TUNERDTT760xATSC_REF_DIVIDER_RATIO{ TUNERDTT760xATSC_REF_DIVIDER_RATIO_31_25 = 0, TUNERDTT760xATSC_REF_DIVIDER_RATIO_50, TUNERDTT760xATSC_REF_DIVIDER_RATIO_62_5, TUNERDTT760xATSC_REF_DIVIDER_RATIO_166_7 }TYPE_TUNERDTT760xATSC_REF_DIVIDER_RATIO; typedef enum EN_TYPE_TUNERDTT760xATSC_AGC{ TUNERDTT760xATSC_AGC_91 = 0, TUNERDTT760xATSC_AGC_94, TUNERDTT760xATSC_AGC_97, TUNERDTT760xATSC_AGC_100, TUNERDTT760xATSC_AGC_103, TUNERDTT760xATSC_AGC_106, }TYPE_TUNERDTT760xATSC_AGC; typedef enum EN_TYPE_TUNERDTT760xATSC_CHARGE_PUMP{ TUNERDTT760xATSC_CHARGE_PUMP_60 = 0, TUNERDTT760xATSC_CHARGE_PUMP_280 }TYPE_TUNERDTT760xATSC_CHARGE_PUMP; typedef enum EN_TYPE_TUNERDTT760xATSC_AGC_TIME_CONSTANT{ TUNERDTT760xATSC_AGC_TIME_CONSTANT_50_MS = 0, TUNERDTT760xATSC_AGC_TIME_CONSTANT_2_SEC }TYPE_TUNERDTT760xATSC_AGC_TIME_CONSTANT; #define DTT760xATSC_DEVICE_ADDRESS_WRITE 0xC2 #define TUNER_DTT760xATSC_SUCCESS 0 #define TUNER_DTT760xATSC_CHANNEL_OUT_OF_RANGE 1 #define TUNER_DTT760xATSC_N_VALU_OUT_OF_RANGE 2 #define TUNER_DTT760xATSC_SEND_CONTROL_DATA_FAILED 3 #define TUNER_DTT760xATSC_BEFORE_SEND_BYTES_FAILED 4 #define TUNER_DTT760xATSC_AFTER_SEND_BYTES_FAILED 5 #define TUNER_DTT760xATSC_FREQUENCY_VALUE_OUT_OF_RANGE 6 #define TUNER_DTT760xATSC_FREQUENCY_DOES_NOT_FIT_ANY_CHANNEL 7 #define TUNER_DTT760xATSC_CHANNEL_DOES_NOT_FIT_ANY_FREQUENCY -1 #define TUNER_DTT760xATSC_CHARGE_PUMP_VALUE_OUT_OF_RANGE 9 #define TUNER_DTT760xATSC_STEP_SIZE_VALUE_OUT_OF_RANGE 10 #define TUNER_DTT760xATSC_AGC_VALUE_OUT_OF_RANGE 11 #define TUNER_DTT760xATSC_ATC_VALUE_OUT_OF_RANGE 12 #define DTT760xATSC_MIN_LOW_BAND_CH 2 #define DTT760xATSC_MAX_LOW_BAND_CH 4 #define DTT760xATSC_MIN_MID_BAND_CH 5 #define DTT760xATSC_MAX_MID_BAND_CH 12 #define DTT760xATSC_MIN_HIGH_BAND_CH 21 #define DTT760xATSC_MAX_HIGH_BAND_CH 69 #define DTT760xATSC_LOW_BAND_MIN 54000 #define DTT760xATSC_LOW_BAND_MAX 162000 #define DTT760xATSC_MID_BAND_MIN 162000 #define DTT760xATSC_MID_BAND_MAX 455000 #define DTT760xATSC_HIGH_BAND_MIN 455000 #define DTT760xATSC_HIGH_BAND_MAX 866000 #define DTT760xATSC_F_IF_KHZ 44000 #define DTT760xATSC_AIR_FREQ_CH_2 57 #define DTT760xATSC_AIR_FREQ_CH_3 63 #define DTT760xATSC_AIR_FREQ_CH_4 69 #define DTT760xATSC_AIR_FREQ_CH_5 79 #define DTT760xATSC_AIR_FREQ_CH_6 85 #define DTT760xATSC_AIR_FREQ_CH_7 177 #define DTT760xATSC_AIR_FREQ_CH_13 213 #define DTT760xATSC_AIR_FREQ_CH_14 473 #define DTT760xATSC_AIR_FREQ_CH_69 803 #define DTT760xATSC_N_MAX 32768 //15 bits int TunerDTT760xATSCSendChannel(unsigned int uiChannel,CHANNEL_TABLE_TYPE iChannelTable,TYPE_TUNERDTT760xATSC_REF_DIVIDER_RATIO iRefDividerRatio,unsigned int uiAgc, BOOLEAN bUseExternalAgc,unsigned int uiChargePump,unsigned int uiAgcTimeConstant); int TunerDTT760xATSCSendFreq(unsigned long ulFrequency,TYPE_TUNERDTT760xATSC_REF_DIVIDER_RATIO iRefDividerRatio,unsigned int uiAgc, BOOLEAN bUseExternalAgc,unsigned int uiChargePump,unsigned int uiAgcTimeConstant); int TunerDTT760xATSCSendPicCarrier(unsigned long ulFrequency,TYPE_TUNERDTT760xATSC_REF_DIVIDER_RATIO iRefDividerRatio,unsigned int uiAgc, BOOLEAN bUseExternalAgc,unsigned int uiChargePump,unsigned int uiAgcTimeConstant) ; unsigned long TunerDTT760xATSCGetFrequency(unsigned int uiChannelNumber, CHANNEL_TABLE_TYPE iChannelTable); BOOLEAN TunerDTT760xATSCSetRFFreq(unsigned long ulFrequency,BOOLEAN bUseExternalAgc,unsigned char *Bb); BOOLEAN TunerDTT760xATSCSetN( unsigned long ulFrequency, TYPE_TUNERDTT760xATSC_REF_DIVIDER_RATIO iRefDividerRatio,unsigned char *Divider_Byte1, unsigned char *Divider_Byte2); BOOLEAN TunerDTT760xATSCSetCP(unsigned int uiChargePump,unsigned char *Control_Byte1); BOOLEAN TunerDTT760xATSCSetStepSize(TYPE_TUNERDTT760xATSC_REF_DIVIDER_RATIO iRefDividerRatio ,unsigned char *Control_Byte1,unsigned char *Control_Byte2); BOOLEAN TunerDTT760xATSCSetAGC(unsigned int uiAgc,unsigned char *Auxiliary_Byte); BOOLEAN TunerDTT760xATSCSetATC(unsigned int uiATC,unsigned char *Auxiliary_Byte); BOOLEAN TunerDTT760xATSCBeforeSendBytes(void); BOOLEAN TunerDTT760xATSCAfterSendBytes(void); unsigned int TunerDTT760xATSCSendControlData(unsigned char Divider_Byte1, unsigned char Divider_Byte2, unsigned char Control_Byte1 ,unsigned char Band_Switch_Byte, unsigned char Auxiliary_Byte,unsigned char Control_Byte2); void TunerDTT760xATSCInitsendBytes(unsigned char *Divider_Byte1, unsigned char *Divider_Byte2, unsigned char *Control_Byte1, unsigned char *Band_Switch_Byte, unsigned char *Auxiliary_Byte,unsigned char *Control_Byte2); #endif