📄 cx24143_all.h
字号:
DESCRAMBLE_ON=1, /* descramble is ON */
DESCRAMBLE_OFF, /* descramble is OFF */
DESCR_UNDEF=0 /* descramble is undefined */
} DESCRMB;
/*******************************************************************************************************/
/* ERRORMODE */
/*******************************************************************************************************/
typedef enum ErrorMode{ /* Demod Error Modes: */
ERRMODE_VITERBI_BIT=1, /* Viterbi bit error rate, without PN seq. */
ERRMODE_RS_BIT, /* RS bit error rate without PN seq. */
ERRMODE_PN_VITERBI_BIT, /* Viterbi bit error rate with PN enabled */
ERRMODE_PN_RS_BIT, /* RS bit error rate with PN seq. enabled */
ERRMODE_VITERBI_BYTE, /* Viterbi byte error rate */
ERRMODE_RS_BYTE, /* RS decoder byte error rate */
ERRMODE_RS_BLOCK, /* RS block error rate */
ERRMODE_NONE=0 /* (demod error mode not set or undefined) */
} ERRORMODE;
/*******************************************************************************************************/
/* INTROPTIONS */
/*******************************************************************************************************/
typedef enum IntrOptions{ /* interrupt options */
INTR_LNB_REPLY_READY=0x40, /* LNB reply is ready */
INTR_ACQ_SYNC=0x20, /* generate intr on acq sync */
INTR_ACQ_FAILURE=0x10, /* generate intr on acq failure */
INTR_VITERBI_LOSS=0x08, /* gen intr when viterbi sync is lost */
INTR_VITERBI_SYNC=0x04, /* gen intr when viterbi sync detected */
INTR_DEMOD_LOSS=0x02, /* get intr when sync is lost */
INTR_DEMOD_SYNC=0x01, /* gen intr when sync is achieved */
INTR_CLEAR=0x00 /* value used to clear intr options. INTR_CLEAR */
/* can also indicate that interrupts are polled) */
} INTROPTIONS; /* also indicates no intr options selected */
/*******************************************************************************************************/
/* LNBPOL */
/*******************************************************************************************************/
typedef enum LnbPolarity{ /* LNB polarity */
LNB_HIGH=1, /* LNB polarity is high (i.e. ~17v) */
LNB_LOW, /* LNB polarity is low (i.e. ~13v) */
LNB_UNDEF=0 /* LNB polarity is undefined */
} LNBPOL;
/*******************************************************************************************************/
/* LNBTONE */
/*******************************************************************************************************/
typedef enum LnbTone{ /* LNB tone */
LNBTONE_ON=1, /* Tone on */
LNBTONE_OFF, /* Tone off */
LNBTONE_UNDEF=0 /* tone undefined */
} LNBTONE;
/*******************************************************************************************************/
/* MODTYPE */
/*******************************************************************************************************/
typedef enum ModType{ /* modulation types: */
MOD_QPSK=1, /* Qpsk */
MOD_BPSK, /* Bpsk */
MOD_QPSK_DCII_MUX,
MOD_QPSK_DCII_SPLIT_I,
MOD_QPSK_DCII_SPLIT_Q,
MOD_UNDEF=0 /* modulation type not defined */
} MODTYPE;
/*******************************************************************************************************/
/* RDIVVAL */
/*******************************************************************************************************/
typedef enum RdivVal{ /* valid reference divider values */
RDIV_10=10, /* div by 10 */
RDIV_20=20, /* div by 20 */
RDIV_40=40, /* div by 40 */
RDIV_UNDEF=0 /* undefined (uses default "/10" R value) */
} RDIVVAL;
/*******************************************************************************************************/
/* SAMPFRQ */
/*******************************************************************************************************/
typedef enum SAMPFRQ{ /* sample frequency */
SAMPLE_FREQ_NOM=1, /* nominal (~96mhz 3 x max sample freq of part) */
SAMPLE_DCII_NOM=2, /* (CR 8126) DCII nominal */
SAMPLE_FREQ_EXT=999, /* (use customer-specified sample freq programmed to register directly) */
SAMPLE_FREQ_UNDEF=0 /* (end-of-list) */
} SAMPFRQ;
/*******************************************************************************************************/
/* SPECINV */
/*******************************************************************************************************/
typedef enum SpecInv{ /* spectral inversion */
SPEC_INV_OFF=1, /* uninverted and check only nominal SI */
SPEC_INV_ON, /* inverted and check only the nominal */
SPEC_INV_ON_BOTH, /* uninverted and check BOTH inversion states */
SPEC_INV_OFF_BOTH, /* inverted and check BOTH inversion states */
SPEC_INV_UNDEF=0 /* undefined */
} SPECINV;
/*******************************************************************************************************/
/* TRANSPEC */
/*******************************************************************************************************/
typedef enum TransSpec{ /* transport specification */
SPEC_DSS=1, /* Direct-satellite-service */
SPEC_DVB, /* Direct-video-broadcast */
SPEC_DCII, /* DCII (mux) (see def SPEC_DCII_MUX) */
#ifdef CAMARIC_FEATURES
SPEC_DVB_DSS, /* DVB DSS Auto Detection */
#endif /* #ifdef CAMARIC_FEATURES */
SPEC_UNDEF=0 /* trans-spec undefined */
} TRANSPEC;
/*******************************************************************************************************/
/* TUNER */
/*******************************************************************************************************/
typedef enum Tuner{ /* tuner types */
CX24108=1, /* (aka Rosie) */
CX24128, /* (aka Viper) */
Tuner_undefined=0 /* tuner undefined */
} TUNER;
/*******************************************************************************************************/
/* DEMOD */
/*******************************************************************************************************/
typedef enum Demod{ /* demod types supported by this driver */
CX24130=1, /* (aka Cobra) */
CX24121, /* (Single NIM Cobra) */
CX24123, /* (Single NIM Camaric. 64-pin with new features) */
CX24123C, /* (Single NIM Camaric, 80-pin, Cobra compatible) */
CX24EOL=0 /* Demod undefined */
} DEMOD;
/*******************************************************************************************************/
/* VCODIV */
/*******************************************************************************************************/
typedef enum Vcodiv{ /* vco divider */
VCODIV2=2, /* divider=2 */
VCODIV4=4, /* divider=4 */
VCODIV_UNDEF=0 /* divider is undefined */
} VCODIV;
/*******************************************************************************************************/
/* VCOSET */
/*******************************************************************************************************/
typedef enum _vcoset_{
VCO1D2=0, /* VCO #1 */
VCO2D2=1, /* VCO #2 */
VCO3D2=2, /* VCO #3 */
VCO4D2=3, /* VCO #4 */
VCO5D2=4, /* VCO #5 */
VCO6D2=5, /* VCO #6 */
VCO7D2=6, /* VCO #7 */
VCO8D2=7, /* VCO #8 */
VCO6D4=8, /* VCO #9 */
VCO7D4=9, /* VCO #10*/
VCO8D4=10 /* VCO #11*/
} VCOSET;
/*******************************************************************************************************/
/* CPCPOL */
/*******************************************************************************************************/
typedef enum cpcpol{ /* Tuner VCO polarity */
CPC_POLARITY_POS=0, /* pos. polarity */
CPC_POLARITY_NEG=1 /* neg polarity */
} CPCPOL;
/*******************************************************************************************************/
/* MPEG related */
/*******************************************************************************************************/
/*******************************************************************************************************/
/* OUTPUTMODE */
/*******************************************************************************************************/
typedef enum OutputMode{ /* data output mode */
PARALLEL_OUT=1, /* Data is clocked out on DATA[7:0] a byte at a time */
SERIAL_OUT, /* Data is clocked out on DATA0 one bit at a time */
OUTMODE_UNDEF=0 /* output mode is undefined */
} OUTPUTMODE;
/*******************************************************************************************************/
/* CLKOUTEDGE */
/*******************************************************************************************************/
typedef enum ClkOutEdge{ /* clock edge -- see MPEG_OUT->ClkOutEdge (addr 0x04, bits 5,4) */
CLKOUT_RISING=1, /* (obsolete) data levels change on the rising edge of DATA_CLK */
CLKOUT_FALLING=2, /* (obsolete) data levels change on the falling edge of DATA_CLK */
CLKOUT_SETUP1_HOLD7=0x10, /* par: 1 setup time, 7 hold time */
CLKOUT_SETUP3_HOLD5=0x11, /* par: 3 setup time, 5 hold time */
CLKOUT_SETUP5_HOLD3=0x12, /* par: 5 setup time, 3 hold time */
CLKOUT_SETUP7_HOLD1=0x13, /* par: 7 setup time, 1 hold time */
CLKOUT_DATALR_DATACR=0x30, /* ser: Zero hold time -- DATALaunch = 0, DATACapture = 0 */
CLKOUT_DATALR_DATACF=0x32, /* ser: Equal set-up/Hold -- DATAL = 1, DATAC = 0 */
CLKOUT_DATALF_DATACR=0x31, /* ser: Equal Set-up/Hold -- DATAL = 0, DATAC = 1 */
CLKOUT_DATALF_DATACF=0x41, /* ser: Zero hold -- DATAL = 0, DATAC = 1 */
CLKOUT_ENDEF=0 /* (undefined) */
} CLKOUTEDGE;
/*******************************************************************************************************/
/* CLOCKSMOOTHSEL */
/*******************************************************************************************************/
typedef enum ClockSmoothSel /* Clock Smoothing Select */
{
CLK_SMOOTHING_UNDEF=0, /* undefined */
CLK_SMOOTHING_OFF, /* clk smoothing is Off */
DDS_LEGACY_SMOOTHING, /* DDS Legacy smoothing is ON */
#ifdef CAMARIC_FEATURES
PLL_ADVANCED_SMOOTHING /* PLL Advanced smoothing is ON */
#else /* #ifdef CAMARIC_FEATURES */
DUMMY_SMOOTHING /* This is never used, just for get rid of a compiler warning. See CR12430. */
#endif
} CLOCKSMOOTHSEL;
#define CLK_SMOOTHING_ON DDS_LEGACY_SMOOTHING /* CR9364, for CX24121 customers convenience. */
/*******************************************************************************************************/
/* CLOCKSMOOTHDIV */
/*******************************************************************************************************/
typedef enum ClockSmoothDiv{ /* specifies is API_Monitor() should recalc clksmooth divider */
CLKSMOOTHDIV_UPDATE=1, /* update ClockSmoothDiv in API_Monitor() */
CLKSMOOTHDIV_PASS /* DO NOT (further) update ClockSmoothDiv in API_Monitor() */
}CLOCKSMOOTHDIV;
/*******************************************************************************************************/
/* CLKPARITYMODE */
/*******************************************************************************************************/
typedef enum ClkParityMode{ /* clock parity: specifies continuous or punctured during */
/* the parity portion of the MPEG payload */
CLK_CONTINUOUS=1, /* Clock is continuous throughout MPEG frame */
CLK_GAPPED, /* Clock is gapped during parity portion of MPEG frame */
CLK_PARITY_UNDEF=0 /* clock parity is undefined */
} CLKPARITYMODE;
/*******************************************************************************************************/
/* CLKHOLDTIME */
/*******************************************************************************************************/
typedef enum ClkHoldTime{ /* hold time after clocking edge:*/
ZERO_HOLD_TIME=1, /* zero (obsolete) */
MEDIUM_HOLD_TIME, /* Medium */
LARGE_HOLD_TIME, /* Large */
SMALL_HOLD_TIME, /* Small */
CLK_HOLD_UNDEF=0 /* hold-time is undefined */
} CLKHOLDTIME;
/*******************************************************************************************************/
/* CNTLSIGNALPOL */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -