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

📄 dcf_api.c

📁 机顶盒解调芯片DCF8722驱动
💻 C
📖 第 1 页 / 共 5 页
字号:
/****************************************************************************/
/*                   CONEXANT PROPRIETARY AND CONFIDENTIAL                  */
/*                   Conexant Systems Inc. (c) 2007 - 2012                  */
/*                             Shanghai, CHINA                              */
/*                           All Rights Reserved                            */
/****************************************************************************/
/*
 * Filename:      DCF_API.C
 *
 * Description:   The file defines API to CABLE HAL
 *
 * Author:        Gavin Zhang
 *
 ****************************************************************************/
/* $Header: dcf_api.c, 1, 2007-10-8 13:36:53, Yong Huang$
 * $Id: dcf_api.c,v 1.0, 2007-10-08 05:36:53Z, Yong Huang$
 ****************************************************************************/

/***************************/
/*      Header Files       */
/***************************/
#define  DCFEXT 
#include "dcf.h"

/* Variables for C/N estimation */
signed long           gn32ST0CN[5][40];
extern DCF_REGISTER   gDemReg[DCF_REG_NUM];
#if(DCF_INCLUDE_UART_DEBUG)
extern long n32sweep_rate;
extern long n32freq_offset;
#endif

const unsigned char gu8QAM16[] =
{
   ST0_RID_EQU_0,        0x08,
   ST0_RID_EQU_1,        0x58,
   ST0_RID_CTRL_8,       0x08,
   ST0_RID_DEINT_SYNC_0, 0x00,
   ST0_RID_BERT_0,       0x84,
    0x00
};

const unsigned char gu8QAM32[] =
{
   ST0_RID_EQU_0,           0x18,
   ST0_RID_EQU_1,           0x58,
   ST0_RID_CTRL_8,          0x00,
   ST0_RID_DEINT_SYNC_0,    0x02,
   ST0_RID_BERT_0,          0x85,
   0x00
};
const unsigned char gu8QAM64[] =
{
   ST0_RID_EQU_0,           0x48,
   ST0_RID_EQU_1,           0x58,
   ST0_RID_CTRL_8,          0x00,
   ST0_RID_DEINT_SYNC_0,    0x02,
   ST0_RID_BERT_0,          0x85,
   0x00
};

const unsigned char gu8QAM128[] =
{
   ST0_RID_EQU_0,           0x29,
   ST0_RID_EQU_1,           0x89,
   ST0_RID_CTRL_8,          0x00,
   ST0_RID_DEINT_SYNC_0,    0x00,
   ST0_RID_BERT_0,          0x84,
   0x00
};

const unsigned char gu8QAM256[] =
{
   ST0_RID_EQU_0,           0x39,
   ST0_RID_EQU_1,           0x69,
   ST0_RID_CTRL_8,          0x08,
   ST0_RID_DEINT_SYNC_0,    0x00,
   ST0_RID_BERT_0,          0x85,
   0x00
};    

const unsigned char gu8QAMAUTO[] =
{
   ST0_RID_EQU_0,           0x48,
   ST0_RID_EQU_1,           0x58,
   ST0_RID_CTRL_8,          0x00,
   ST0_RID_DEINT_SYNC_0,    0x02,
   ST0_RID_BERT_0,          0x85,
   0x00
};

/* Initialization of DCF8720 */
/* ========================= */

const unsigned char gu8QAM16_DCF8720[] =
{
   ST0_RID_DELAGC_0,        0xFF,
   ST0_RID_DELAGC_1,        0x5c,
   ST0_RID_DELAGC_2,        0xff,
   ST0_RID_DELAGC_3,        0x0,
   ST0_RID_DELAGC_4,        0x32,
   ST0_RID_DELAGC_5,        0x5c,
   ST0_RID_DELAGC_6,        0x80,
   ST0_RID_DELAGC_7,        0x30,
   ST0_RID_DELAGC_8,        0x0,
   ST0_RID_WBAGC_0,         0x1b,
   ST0_RID_WBAGC_1,         0x9d,
   ST0_RID_WBAGC_2,         0x30,
   ST0_RID_WBAGC_3,         0x18,
   ST0_RID_WBAGC_4,         0x58,
   ST0_RID_WBAGC_5,         0x00,
   ST0_RID_WBAGC_6,         0x00,
   ST0_RID_WBAGC_9,         0x02,
   ST0_RID_WBAGC_10,        0x33,
   ST0_RID_WBAGC_11,        0xFF,
   ST0_RID_STLOOP_3,        0x08,
   ST0_RID_STLOOP_5,        0x44,
   ST0_RID_STLOOP_6,        0xdf,
   ST0_RID_STLOOP_7,        0x18,
   ST0_RID_STLOOP_8,        0x3d,
   ST0_RID_STLOOP_9,        0x08,
   ST0_RID_STLOOP_10,       0x1E,
   ST0_RID_CRL_0,           0x13,
   ST0_RID_CRL_1,           0x39,
   ST0_RID_CRL_6,           0x7b,
   ST0_RID_CRL_7,           0x1e,
   ST0_RID_CRL_8,           0x01,
   ST0_RID_CRL_11,          0xd0,
   ST0_RID_CTRL_0,          0x20,
   ST0_RID_CTRL_2,          0x0f,
   ST0_RID_CTRL_4,          0x2a,
   ST0_RID_CTRL_5,          0x00,
   ST0_RID_CTRL_6,          0xc0,
   ST0_RID_CTRL_8,          0x00,
   0x00
};

const unsigned char gu8QAM32_DCF8720[] =
{
   ST0_RID_DELAGC_0,        0xFF,
   ST0_RID_DELAGC_1,        0x5c,
   ST0_RID_DELAGC_2,        0xff,
   ST0_RID_DELAGC_3,        0x0,
   ST0_RID_DELAGC_4,        0x32,
   ST0_RID_DELAGC_5,        0x5c,
   ST0_RID_DELAGC_6,        0x80,
   ST0_RID_DELAGC_7,        0x30,
   ST0_RID_DELAGC_8,        0x0,
   ST0_RID_WBAGC_0,         0x1b,
   ST0_RID_WBAGC_1,         0x9d,
   ST0_RID_WBAGC_2,         0x30,
   ST0_RID_WBAGC_3,         0x18,
   ST0_RID_WBAGC_4,         0x58,
   ST0_RID_WBAGC_5,         0x00,
   ST0_RID_WBAGC_6,         0x00,
   ST0_RID_WBAGC_9,         0x02,
   ST0_RID_WBAGC_10,        0x33,
   ST0_RID_WBAGC_11,        0xFF,
   ST0_RID_STLOOP_3,        0x08,
   ST0_RID_STLOOP_5,        0x44,
   ST0_RID_STLOOP_6,        0xdf,
   ST0_RID_STLOOP_7,        0x18,
   ST0_RID_STLOOP_8,        0x3d,
   ST0_RID_STLOOP_9,        0x08,
   ST0_RID_STLOOP_10,       0x1E,
   ST0_RID_CRL_0,           0x13,
   ST0_RID_CRL_1,           0x39,
   ST0_RID_CRL_6,           0x7b,
   ST0_RID_CRL_7,           0x1e,
   ST0_RID_CRL_8,           0x01,
   ST0_RID_CRL_11,          0xd0,
   ST0_RID_CTRL_0,          0x20,
   ST0_RID_CTRL_2,          0x0f,
   ST0_RID_CTRL_4,          0x2a,
   ST0_RID_CTRL_5,          0x00,
   ST0_RID_CTRL_6,          0xc0,
   ST0_RID_CTRL_8,          0x00,
   0x00
};

const unsigned char gu8QAM64_DCF8720[] =
{
   ST0_RID_DELAGC_0,        0xFF,
   ST0_RID_DELAGC_1,        0x5c,
   ST0_RID_DELAGC_2,        0xff,
   ST0_RID_DELAGC_3,        0x0,
   ST0_RID_DELAGC_4,        0x32,
   ST0_RID_DELAGC_5,        0x5c,
   ST0_RID_DELAGC_6,        0x80,
   ST0_RID_DELAGC_7,        0x30,
   ST0_RID_DELAGC_8,        0x0,
   ST0_RID_WBAGC_0,         0x1b,
   ST0_RID_WBAGC_1,         0x9d,
   ST0_RID_WBAGC_2,         0x30,
   ST0_RID_WBAGC_3,         0x18,
   ST0_RID_WBAGC_4,         0x58,
   ST0_RID_WBAGC_5,         0x00,
   ST0_RID_WBAGC_6,         0x00,
   ST0_RID_WBAGC_9,         0x02,
   ST0_RID_WBAGC_10,        0x33,
   ST0_RID_WBAGC_11,        0xFF,
   ST0_RID_STLOOP_3,        0x08,
   ST0_RID_STLOOP_5,        0x44,
   ST0_RID_STLOOP_6,        0xdf,
   ST0_RID_STLOOP_7,        0x18,
   ST0_RID_STLOOP_8,        0x3d,
   ST0_RID_STLOOP_9,        0x08,
   ST0_RID_STLOOP_10,       0x1E,
   ST0_RID_CRL_0,           0x13,
   ST0_RID_CRL_1,           0x39,
   ST0_RID_CRL_6,           0x7b,
   ST0_RID_CRL_7,           0x1e,
   ST0_RID_CRL_8,           0x01,
   ST0_RID_CRL_11,          0xd0,
   ST0_RID_CTRL_0,          0x20,
   ST0_RID_CTRL_2,          0x0f,
   ST0_RID_CTRL_4,          0x2a,
   ST0_RID_CTRL_5,          0x00,
   ST0_RID_CTRL_6,          0xc0,
   ST0_RID_CTRL_8,          0x00,
   0x00
};

const unsigned char gu8QAM128_DCF8720[] =
{
   ST0_RID_DELAGC_0,        0xff,
   ST0_RID_DELAGC_1,        0x5c,
   ST0_RID_DELAGC_2,        0xff,
   ST0_RID_DELAGC_3,        0x0,
   ST0_RID_DELAGC_4,        0x32,
   ST0_RID_DELAGC_5,        0x5c,
   ST0_RID_DELAGC_6,        0x80,
   ST0_RID_DELAGC_7,        0x00,
   ST0_RID_DELAGC_8,        0x0,
   ST0_RID_WBAGC_0,         0x1b,
   ST0_RID_WBAGC_1,         0xba,
   ST0_RID_WBAGC_2,         0x30,
   ST0_RID_WBAGC_3,         0x18,
   ST0_RID_WBAGC_4,         0x58,
   ST0_RID_WBAGC_5,         0x00,
   ST0_RID_WBAGC_6,         0x00,
   ST0_RID_WBAGC_9,         0x02,
   ST0_RID_WBAGC_10,        0xff,
   ST0_RID_WBAGC_11,        0xff,
   ST0_RID_STLOOP_3,        0x08,
   ST0_RID_STLOOP_5,        0x04,
   ST0_RID_STLOOP_6,        0xdf,
   ST0_RID_STLOOP_7,        0x18,
   ST0_RID_STLOOP_8,        0x3d,
   ST0_RID_STLOOP_9,        0x08,
   ST0_RID_STLOOP_10,       0x1E,
   ST0_RID_CRL_0,           0x13,
   ST0_RID_CRL_1,           0x39,
   ST0_RID_CRL_6,           0xb0,
   ST0_RID_CRL_7,           0x0f,
   ST0_RID_CRL_8,           0x01,
   ST0_RID_CRL_11,          0x1e,
   ST0_RID_CTRL_0,          0x20,
   ST0_RID_CTRL_2,          0x1f,
   ST0_RID_CTRL_4,          0x2a,
   ST0_RID_CTRL_5,          0x00,
   ST0_RID_CTRL_6,          0xc0,
   ST0_RID_CTRL_8,          0x00,
   0x00
};

const unsigned char gu8QAM256_DCF8720[] =
{
   ST0_RID_DELAGC_0,        0xff,
   ST0_RID_DELAGC_1,        0x5c,
   ST0_RID_DELAGC_2,        0xff,
   ST0_RID_DELAGC_3,        0x0,
   ST0_RID_DELAGC_4,        0x32,
   ST0_RID_DELAGC_5,        0x5c,
   ST0_RID_DELAGC_6,        0x80,
   ST0_RID_DELAGC_7,        0x00,
   ST0_RID_DELAGC_8,        0x0,
   ST0_RID_WBAGC_0,         0x1b,
   ST0_RID_WBAGC_1,         0xba,
   ST0_RID_WBAGC_2,         0x30,
   ST0_RID_WBAGC_3,         0x18,
   ST0_RID_WBAGC_4,         0x58,
   ST0_RID_WBAGC_5,         0x00,
   ST0_RID_WBAGC_6,         0x00,
   ST0_RID_WBAGC_9,         0x02,
   ST0_RID_WBAGC_10,        0xff,
   ST0_RID_WBAGC_11,        0xff,
   ST0_RID_STLOOP_3,        0x08,
   ST0_RID_STLOOP_5,        0x04,
   ST0_RID_STLOOP_6,        0xdf,
   ST0_RID_STLOOP_7,        0x18,
   ST0_RID_STLOOP_8,        0x3d,
   ST0_RID_STLOOP_9,        0x08,
   ST0_RID_STLOOP_10,       0x1E,
   ST0_RID_CRL_0,           0x13,
   ST0_RID_CRL_1,           0x39,
   ST0_RID_CRL_6,           0xb0,
   ST0_RID_CRL_7,           0x0f,
   ST0_RID_CRL_8,           0x01,
   ST0_RID_CRL_11,          0x1e,
   ST0_RID_CTRL_0,          0x20,
   ST0_RID_CTRL_2,          0x1f,
   ST0_RID_CTRL_4,          0x2a,
   ST0_RID_CTRL_5,          0x00,
   ST0_RID_CTRL_6,          0xc0,
   ST0_RID_CTRL_8,          0x00,
   0x00
};

const unsigned char gu8QAMAUTO_DCF8720[] =
{
   ST0_RID_DELAGC_0,        0xFF,
   ST0_RID_DELAGC_1,        0x5c,
   ST0_RID_DELAGC_2,        0xff,
   ST0_RID_DELAGC_3,        0x0,
   ST0_RID_DELAGC_4,        0x32,
   ST0_RID_DELAGC_5,        0x5c,
   ST0_RID_DELAGC_6,        0x80,
   ST0_RID_DELAGC_7,        0x30,
   ST0_RID_DELAGC_8,        0x0,
   ST0_RID_WBAGC_0,         0x1b,
   ST0_RID_WBAGC_1,         0x9d,
   ST0_RID_WBAGC_2,         0x30,
   ST0_RID_WBAGC_3,         0x18,
   ST0_RID_WBAGC_4,         0x58,
   ST0_RID_WBAGC_5,         0x00,
   ST0_RID_WBAGC_6,         0x00,
   ST0_RID_WBAGC_9,         0x02,
   ST0_RID_WBAGC_10,        0x33,
   ST0_RID_WBAGC_11,        0xFF,
   ST0_RID_STLOOP_3,        0x08,
   ST0_RID_STLOOP_5,        0x44,
   ST0_RID_STLOOP_6,        0xdf,
   ST0_RID_STLOOP_7,        0x18,
   ST0_RID_STLOOP_8,        0x3d,
   ST0_RID_STLOOP_9,        0x08,
   ST0_RID_STLOOP_10,       0x1E,
   ST0_RID_CRL_0,           0x13,
   ST0_RID_CRL_1,           0x39,
   ST0_RID_CRL_6,           0x7b,
   ST0_RID_CRL_7,           0x1e,
   ST0_RID_CRL_8,           0x01,
   ST0_RID_CRL_11,          0xd0,
   ST0_RID_CTRL_0,          0x20,
   ST0_RID_CTRL_2,          0x0f,
   ST0_RID_CTRL_4,          0x2a,
   ST0_RID_CTRL_5,          0x00,
   ST0_RID_CTRL_6,          0xc0,
   ST0_RID_CTRL_8,          0x00,
   0x00
};
/*****************************************************************************/
/*  FUNCTION:    dcf_init_environment                                        */
/*                                                                           */
/*  PARAMETERS:  pNim - pointer to DCF_NIM struct                            */
/*               u32DemodHandle - slave address of demodulator               */
/*               BusWrite - pointer to user-supplied low-level bus read      */
/*                          function                                         */
/*               BusRead - pointer to user-supplied low-level bus write      */
/*                         function                                          */
/*               DCF_TUNER_Install - function that will install a specific   */
/*                                   tuner                                   */
/*               u32DemodCrystalFreq - crystal frequency of demod            */
/*               pTsOutFormat - out format of mpeg interface                 */
/*               waitfunct - function that delays mscount milliseconds       */
/*                                                                           */
/*  DESCRIPTION: The function initializes THOMSON Cable Front-End DCF8722    */
/*                                                                           */
/*  RETURNS:     True if successful, False if unsuccessful.                  */

⌨️ 快捷键说明

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