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

📄 tmbsl10023local.h

📁 Cu1216 解调器驱动
💻 H
📖 第 1 页 / 共 2 页
字号:
#define TDA10023_ON_ID10L_IND       0x33
#define TDA10023_TS_ID11H_IND       0x34
#define TDA10023_TS_ID11L_IND       0x35
#define TDA10023_ON_ID11H_IND       0x36
#define TDA10023_ON_ID11L_IND       0x37
#define TDA10023_TS_ID12H_IND       0x38
#define TDA10023_TS_ID12L_IND       0x39
#define TDA10023_ON_ID12H_IND       0x3A
#define TDA10023_ON_ID12L_IND       0x3B
#define TDA10023_TS_ID13H_IND       0x3C
#define TDA10023_TS_ID13L_IND       0x3D
#define TDA10023_ON_ID13H_IND       0x3E
#define TDA10023_ON_ID13L_IND       0x3F
#define TDA10023_TS_ID14H_IND       0x40
#define TDA10023_TS_ID14L_IND       0x41
#define TDA10023_ON_ID14H_IND       0x42
#define TDA10023_ON_ID14L_IND       0x43
#define TDA10023_TS_ID15H_IND       0x44
#define TDA10023_TS_ID15L_IND       0x45
#define TDA10023_ON_ID15H_IND       0x46
#define TDA10023_ON_ID15L_IND       0x47

//------------------
//  DEFAULT VALUES   
//------------------
#define TDA10023_IDENTITY_DEF       0x7D

#define TDA10023_GAIN1_DEF          0x82

#define TDA10023_INTP2_INTSEL_PARA_DEF 0x00
#define TDA10023_INTP2_INTSEL_PARB_DEF 0x01
#define TDA10023_INTP2_INTSEL_PARC_DEF 0x02
#define TDA10023_INTP2_INTSEL_SER_DEF 0x03

#define TDA10023_PWMREF_DEF         0x80
#define TDA10023_AGCREF_DEF         0x30//by maj. 060611,old is 0x48
#define TDA10023_EQCONF1_DEF        0x70
#define TDA10023_SWEEP_DEF          0x82

//----------------
//  DEFINE MASKS  
//----------------
#define TDA10023_GPR_QAM_MSK            0x1C

#define TDA10023_CLKCONF_NDEC_MSK       0xC0

#define TDA10023_CARCONF_CAR_C_MSK      0x0F

#define TDA10023_PLL2_PDIV_MSK          0x3F
#define TDA10023_PLL2_NDIV_MSK          0xC0

#define TDA10023_GAIN1_GNYQ_MSK         0x70

#define TDA10023_FECDVBCFG1_PVBER_MSK   0xC0

#define TDA10023_GAIN2_SFIL_MSK         0x80

#define TDA10023_RSCFG_PRG_TBER_MSK     0x0C

#define TDA10023_JQAM_MODE_JQAM_MODE_MSK    0x03
//---------------
//  DEFINE BITS  
//---------------
#define TDA10023_GPR_CLBS_BIT           0x01
#define TDA10023_GPR_CLBS2_BIT          0x02
#define TDA10023_GPR_FSAMPLING_BIT      0x20
#define TDA10023_GPR_FIRSTIF_BIT        0x40
#define TDA10023_GPR_STDBY_BIT          0x80

#define TDA10023_CLKCONF_DYN_BIT        0x08

#define TDA10023_CARCONF_INVIQ_BIT      0x20
#define TDA10023_CARCONF_AUTOINVIQ_BIT  0x40

#define TDA10023_EQCONF1_ENEQUAL_BIT    0x02
#define TDA10023_EQCONF1_ENADAPT_BIT    0x04

#define TDA10023_TEST_BYPIIC_BIT        0x80

#define TDA10023_FECDVBCFG1_CLB_CPT_TSP_BIT 0x20

#define TDA10023_STATUS_CARLOCK_BIT     0x02
#define TDA10023_STATUS_FSYNC_BIT       0x04
#define TDA10023_STATUS_FEL_BIT         0x08
#define TDA10023_STATUS_NODVB_BIT       0x40

#define TDA10023_INTP1_POCLKP_BIT       0x01

#define TDA10023_ADC_GAINADC_BIT        0x20
#define TDA10023_ADC_TWOS_BIT           0x08

#define TDA10023_EQCONF2_SGNALGO_BIT    0x20
#define TDA10023_EQCONF2_STEPALGO_BIT   0x10
#define TDA10023_EQCONF2_CTADAPT_BIT    0x08

#define TDA10023_CONTROL_OLDBYTECLK_BIT 0x80
#define TDA10023_CONTROL_SACLK_ON_BIT   0x04

#define TDA10023_RESET_DVBMCNS_BIT      0x80

#define TDA10023_INTP2_MSBFIRSTP_BIT    0x04

#define TDA10023_PLL3_PDPLL_BIT         0x01
#define TDA10023_PLL3_BYPPLL_BIT        0x02
#define TDA10023_PLL3_LOCK_BIT          0x04
#define TDA10023_PLL3_PSACLK_BIT        0x08

#define TDA10023_INTS1_POCLKS_BIT       0x01

#define TDA10023_INTPS_TRIS_BIT         0x01
#define TDA10023_INTPS_TRIP_BIT         0x02
#define TDA10023_INTPS_MSBFIRSTS_BIT    0x40

#define TDA10023_AGCCONF2_PPWMIF_BIT    0x02
#define TDA10023_AGCCONF2_PPWMTUN_BIT   0x08
#define TDA10023_AGCCONF2_ENAGCIF_BIT   0x10
#define TDA10023_AGCCONF2_POSAGC_BIT    0x20
#define TDA10023_AGCCONF2_TRIAGC_BIT    0x80

#define TDA10023_DELTAF_MSB_ALGOD_BIT   0x80

#define TDA10023_CTRL1_QAMMODE_BIT      0x02

#define TDA10023_STATUS_MCNS_MPEGLCK_BIT    0x04
#define TDA10023_STATUS_MCNS_FRAMELCK_BIT   0x02

#define TDA10023_RSCFG_CLB_CPT_RSB_BIT  0x01



//-----------------------------------------------------------------------------
// Structure:
//-----------------------------------------------------------------------------
typedef enum _tm10023cfgIndex_t 
{
    DEFAULT = 0,
    STANDARD,
    DVBMCNS,
    XTALL,
    PLLMFACTOR,
    PLLNFACTOR,
    PLLPFACTOR,
    FSAMPLING,
    IFMAX,
    IFMIN,
    TUNMAX,
    TUNMIN,
    AGCTRESHOLD,
    EQUALTYPE,
    POLAPWM1,
    POLAPWM2,
    BERDEPTH,
    BERWINDOW,
    CLKOFFSETRANGE,
    IQSWAP,
    IF,
    OCLK1,
    PARASER1,
    MSBFIRST1,
    MODEABC1,
    PARADIV1,
    OCLK2,
    MSBFIRST2,
    SWDYN,
    SWSTEP,

    FEINIT = 100,
    SWITCH,
    IDENTITY,
    READSYNC,
    READIQ,
    READAGC,
    READMSE = 127,
    READCOEF,
    STARTEQUAL,
    STOPEQUAL,
    JQAMMODE,
    JQAMREQTS,
    JQAMREQON,
    JQAMGETREG5,
    JQAMGETTSSTATUS,
    JQAMGETRCVSTATUS,
    JQAMGETTSON,

    GETNBOFUNIT = 200,

    TUNERLVL = 301
} tm10023cfgIndex_t;

typedef struct _tm10023config_t
{
    UInt8   bModeDvbMcns;
    UInt32  uXtalFreq;
    UInt8   bPLL_M_Factor;
    UInt8   bPLL_N_Factor;
    UInt8   bPLL_P_Factor;
    UInt8   bFsampling;
    UInt8   bIFMax;
    UInt8   bIFMin;
    UInt8   bTUNMax;
    UInt8   bTUNMin;
    UInt8   bAGCtreshold;
    UInt8   bEqualType;
    UInt8   bPolaPWM1;
    UInt8   bPolaPWM2;
    UInt8   bBERdepth;
    UInt32  uBERwindow;
    UInt8   bClkOffsetRange;
    UInt8   bTUN_IQSwap;
    UInt32  uTUN_IF;
    UInt8   bOUT_OClk1;
    UInt8   bOUT_bParaSer1;
    UInt8   bOUT_bMSBFirst1;
    UInt8   bOUT_ModeABC1;
    UInt8   bOUT_ParaDiv1;
    UInt8   bOUT_OClk2;
    UInt8   bOUT_bMSBFirst2;
    UInt8   bSwDyn;
    UInt8   bSwStep;
} tm10023config_t, *ptm10023config_t;

typedef struct _tm10023flags_t
{
    unsigned int iScan      :1;
    unsigned int iStartAlgo :1;
    unsigned int iInit      :1;
    unsigned int iAutoSi    :1;
    unsigned int iAutoQam   :1;
} tm10023flags_t, *ptm10023flags_t;

typedef struct _tm10023channel_t
{
    UInt32              uRF;
    UInt32              uSR;
    tmhalFESpectrum_t   eSI;
    tmhalFEModulation_t eMOD;
} tm10023channel_t, *ptm10023channel_t;

typedef struct _tm10023object_t 
{
    UInt32                  uDemodHwAdd;
    tmUnitSelect_t          eTunerUnit;
    tmhalFEBslSystemFunc_t  systemFunc;
    tmbslTuConfig_t         tunerFunc;
    tm10023channel_t        sCurrentChannel;
    tm10023config_t         sConfig;
    tm10023flags_t          sApiFlags;
    UInt32                  uStopFrequency;
    UInt32                  uSysClk;
    UInt8                   bGainAlgo;
    UInt32                  uSyncReg;
    UInt8                   bState;
    UInt8                   bStateClkOffset;
    UInt32                  uScanStep;
    Int32                   lClkOffCst;
    UInt32                  uTickEnd;
} tm10023object_t, *ptm10023object_t;

typedef struct _tm10023Qam_t
{
    UInt32  uQam;
    UInt32  uLockthr;
    UInt32  uMseth;
    UInt32  uAref;
    UInt32  uAgcRefNyq;
    UInt32  uErAgcNyqThd;
} tm10023Qam_t, *ptm10023Qam_t;

//-----------------------------------------------------------------------------
// Global data:
//-----------------------------------------------------------------------------
//

static tm10023object_t g10023Instance[] = 
{
    {
        (UInt32)0,                      // Demod Hw Address not set
        (tmUnitSelect_t)0,              // Tuner unit not set
        {   Null, Null, Null,           // Demod system function not initialized
            Null, Null, Null
        },                      
        {   Null, Null, Null,           // BSL tuner function not initialized
            Null, Null, Null,
            Null, Null, Null,
            Null, Null, Null
        },                      
        {   (UInt32)0,                  // Channel structure not initialized
            (UInt32)0, 
            (tmhalFESpectrum_t)0,                
            (tmhalFEModulation_t)0
        },
        {   
            MODE_MCNS_DEF,
            XTALL_DEF,
            PLLMFACTOR_MCNS_DEF,
            PLLNFACTOR_MCNS_DEF,
            PLLPFACTOR_MCNS_DEF,
            FSAMPLING_DEF,
            IFMAX_DEF,
            IFMIN_DEF,
            TUNMAX_DEF,
            TUNMIN_DEF,
            AGCTRESHOLD_DEF,
            EQUALTYPE_DEF,
            POLAPWM1_DEF,
            POLAPWM2_DEF,
            BERDEPTH_MCNS_DEF,
            BERWINDOW_DEF,
            CLKOFFSETRANGE_DEF,
            IQSWAP_DEF,
            IF_MCNS_DEF,
            OCLK1_DEF,
            PARASER1_DEF,
            MSBFIRST1_DEF,
            MODEABC1_DEF,
            PARADIV1_DEF,
            OCLK2_DEF,
            MSBFIRST2_DEF,
            SWDYN_DEF,
            SWSTEP_DEF
        },
        {   0, 0, 0, 0, 0               // api flags
        },
        0,                              // stop scanning frequency
        0,                              // system clock
        0,                              // gain algo
        0,                              // syncreg
        0,                              // state of the algo
        0,                              // state of the scanning step
        0,                              // clock offset range
        1                               // timer
    }
};


#ifdef __cplusplus
}
#endif

#endif // TM<MODULE>_H //---------------
 

⌨️ 快捷键说明

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