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

📄 bdatundefs.h

📁 完整的基于Conxant平台的USB电视棒的WIN驱动程序。
💻 H
字号:
/*+++ *******************************************************************\
*
*   Copyright and Disclaimer:
*
*       ---------------------------------------------------------------
*       ALL SOFTWARE, APPLICATIONS, DOCUMENTATION, OR MATERIALS
*       FURNISHED HEREIN IS PROVIDED .AS IS..  CONEXANT DOES NOT MAKE
*       ANY WARRANTIES, EITHER EXPRESS OR IMPLIED, AND HEREBY EXPRESSLY
*       DISCLAIMS ANY AND ALL SUCH WARRANTIES TO THE EXTENT PERMITTED
*       BY LAW, INCLUDING, SPECIFICALLY, ANY IMPLIED WARRANTY ARISING
*       BY STATUTE OR OTHERWISE IN LAW OR FROM A COURSE OF DEALING OR
*       USAGE OF TRADE.  CONEXANT DOES NOT MAKE ANY WARRANTIES, EITHER
*       EXPRESS OR IMPLIED, AND HEREBY EXPRESSLY DISCLAIMS ANY AND ALL
*       SUCH WARRANTIES WITH RESPECT TO ALL SOFTWARE, APPLICATIONS,
*       DOCUMENTATION, AND MATERIALS INCLUDING ALL IMPLIED WARRANTIES
*       OF MERCHANTABILITY, OR OF MERCHANTABLE QUALITY, OR OF FITNESS
*       FOR ANY PURPOSE, PARTICULAR, SPECIFIC OR OTHERWISE, OR OF
*       NONINFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS OF OTHERS,
*       RELATING TO THE SOFTWARE, APPLICATIONS, OPERATION,
*       DOCUMENTATION, DATA OR RESULTS GENERATED BY THE OPERATION OR
*       USE THEREOF, AND MATERIALS PROVIDED HEREIN.  THE ENTIRE RISK AS
*       TO THE SUBSTANCE, QUALITY AND PERFORMANCE OF SOFTWARE,
*       APPLICATIONS, AND DOCUMENTATION DESCRIBING SUCH SOFTWARE
*       REMAINS WITH THE BUYER.
*
*       REGARDLESS OF WHETHER ANY REMEDY SET FORTH HEREIN FAILS OF ITS
*       ESSENTIAL PURPOSE OR OTHERWISE, CONEXANT SHALL NOT BE LIABLE
*       FOR ANY EXEMPLARY, SPECIAL, PUNITIVE, SPECULATIVE, INDIRECT,
*       CONSEQUENTIAL OR INCIDENTAL DAMAGES OF ANY KIND (INCLUDING
*       WITHOUT LIMITATION LOST PROFITS, LOSS OF INCOME, LOSS OF
*       GOODWILL, OR OTHER TANGIBLE OR INTANGIBLE BUSINESS LOSS)
*       ARISING OUT OF OR IN CONNECTION WITH, DIRECTLY OR INDIRECTLY,
*       SOFTWARE, APPLICATIONS, DOCUMENTATION, OR ANY SERVICES OR
*       MATERIALS PROVIDED HEREUNDER, OR USE OR INABILITY TO USE THE
*       SOFTWARE, EVEN IF CONEXANT HAS BEEN ADVISED OF THE POSSIBILITY
*       OF SUCH DAMAGES.
*
*       Copyright (c) 1999-2004 Conexant Systems, Inc.
*       All Rights Reserved.
*       ---------------------------------------------------------------
*
*   Module Revision Id:
*
*
*   Abstract:
*
*       <Detailed description of the file>
*
\******************************************************************* ---*/

#ifndef _BDATUNDEFS_H
#define _BDATUNDEFS_H

typedef enum TUNER_MODELS {
    TUNER_MODEL_ERROR = 0,
    ALPS_TDED2        = 1,
    THOMSON_DTT757x   = 2,
    CNXT_24108        = 3,
    THOMSON_DTT7602   = 4,
    THOMSON_DTT7610   = 5,
    PHILIPS_FMD1216ME = 6
};

// Gromit DVB-T demod. consts
const unsigned char CX22702_STRATFORD_I2C_ADDR = 0x86;
const unsigned char CX22702_OXFORD_I2C_ADDR    = 0xC6;

// Gromit I2C access consts
const unsigned char CX22702_SERIAL_BUS_CNTRL_REG             = 0x0D; // Serial Loop Through. Disable loop through and auto-increment */
const unsigned char CX22702_SERIAL_LOOP_THROUGH_ENABLE_MASK  = 0xFE; // bit 0 = 0
const unsigned char CX22702_SERIAL_LOOP_THROUGH_DISABLE_MASK = 0xFF; // bit 1 = 1

/*******************************************************************************************************/
/* SCAN_STATE */
/*******************************************************************************************************/
typedef enum ScanFreqState{           /* frequency scan state */
  SCANFREQ_FIRST=1,                   /* this is the FIRST frequency of the scan.  */
  SCANFREQ_MIDDLE,                    /* neither the first nor the last frequency. */
  SCANFREQ_LAST                       /* this is the FIRST frequency of the scan.  */
} SCANFREQSTATE;

/*******************************************************************************************************/
/* 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;

/*******************************************************************************************************/
/* CODERATE */
/*******************************************************************************************************/
typedef enum CodeRate{                 /* viterbi code rates */
  CODERATE_1DIV2=0x01,                 /* code rate 1/2 */
  CODERATE_2DIV3=0x02,                 /*   " 2/3 */
  CODERATE_3DIV4=0x04,                 /*   " 3/4 */
  CODERATE_4DIV5=0x08,                 /*   " 4/5 */
  CODERATE_5DIV6=0x10,                 /*   " 5/6 */
  CODERATE_6DIV7=0x20,                 /*   " 6/7 */
  CODERATE_7DIV8=0x40,                 /*   " 7/8 */
  CODERATE_5DIV11=0x80,                /*   " 5/11 (DCII only) */
  CODERATE_3DIV5=0x100,                /*   " 3/5 (DCII only) */
  CODERATE_NONE=0                      /* un-initialized code rate (or no cr specified) */
} CODERATE;

typedef unsigned long  SYMBRATE;

/*******************************************************************************************************/
/* 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;

/*******************************************************************************************************/
/* 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;

/*******************************************************************************************************/
/* 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;

/*******************************************************************************************************/
/* CHANOBJ -- Channel object */
/*******************************************************************************************************/
typedef struct CHANOBJ
{                                      /* channel object structure passed via ChangeChannel() */
  unsigned long frequency;             /* */
  MODTYPE       modtype;               /* */
  CODERATE      coderate;              /* */
  SYMBRATE      symbrate;              /* */
  SPECINV       specinv;               /* */
  SAMPFRQ       samplerate;            /* */
  LNBPOL        lnbpol;                /* Diseq */
  LNBTONE       lnbtone;               /* lnb tone */
  unsigned int  viterbicoderates;      /* Viterbi code rates OR'd together (new style)  */
                                       /* per CR#4855 -- replaces VITLIST with a bit masks */
}CHANOBJ;


#endif

⌨️ 快捷键说明

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