📄 tn_ctrl.c
字号:
/****************************************************************************
* Copyright (c) 2006 Yongqiang He <hyqhn@sohu.com> or <heyq_av@desay.com.cn>
*
* Sponsored by DESAY A&V Science
*
* Filename:
* ---------
* tn_ctrl.c
*
* Project:
* --------
*
*
* Description:
* ------------
* Tuner basic control function
*
* Author:
* -------
* YongQiang He
*
* Last changed:
* -------------
*
* $Modtime: 2006-6-8 11:57
*
* $LastTime
*
* $Revision: 1.0 $
****************************************************************************/
// *********************************************************************
// Constant table
// *********************************************************************
typedef struct structTunerType
{
/* DWRD 0 */
BYTE fgNtscSupport; /* NTSC support */
/* DWRD 1 */
BYTE fgPalSupport; /* PAL support */
/* DWRD 2 */
BYTE fgSecamSupport; /* SECAM support */
/* DWRD 3 */
BYTE fgUseAB; /* AB Byte programable */
/* DWRD 4 */
BYTE dwLockTime; /* Tuner PLL lock timeout, in ms */
/* DWRD 5 */
BYTE bCB; /* Control Byte */
BYTE bBB; /* Bandswitch Byte */
BYTE bAB; /* Auxiliary Byte */
BYTE bBB_Low; /* Bandswitch Byte for VHF_Low */
/* DWRD 6 */
BYTE bBB_Mid; /* Bandswitch Byte for VHF_High */
BYTE bBB_High; /* Bandswitch Byte for UHF */
WORD wLoBand_Min; /* Low Band (Low) Freq unit MHz */
/* DWRD 6 */
WORD wLoBand_Max; /* Low Band (High) Freq unit MHz */
WORD wMiBand_Min; /* Mid Band (MHigh) unit MHz */
/* DWRD 7 */
WORD wMiBand_Max; /* Mid Band unit MHz */
WORD wHiBand; /* High Band unit MHz */
} strucTunerType;
static const strucTunerType _prTuner =
{
FALSE, /* NTSC support */
TRUE, /* PAL support */
TRUE, /* SECAM support */
TRUE, /* Use A Byte */
80, /* Tuner PLL lock timeout */
0x8E, /* C Byte */
0x01, /* B Byte (Band Low Defaulted) */
0x50, /* A Byte */
0x01, 0x02, 0x04,/* Options for B Byte */
0x0572, /* Low Band (Min) 48.25*/
0x0C4E, /* Low Band (Max) 158.00*/
0x0C4E, /* Mid Band (Min) 158.00*/
0x1F4E, /* Mid Band (Max) 462.00*/
0x3862 /* High Band 863.25*/
};
typedef struct structCtrlCode
{
BYTE bCode0; /* B Data */
BYTE bCode1; /* C Data */
BYTE bCode2; /* E Data */
BYTE Pad0;
} strcCtrlCode;static const strcCtrlCode _prIfCtrlCode[TUNER_MODE_MAX] = {
{ 0x00, 0x00, 0x00, 0x00 }, /* 0: Not Use */
{ 0x16, 0x10, 0x44, 0x00 }, /* 1: TN_NTSC_M */
{ 0x16, 0x10, 0x44, 0x00 }, /* 2: TN_NTSC_N */
{ 0xd4, 0x70, 0x8d, 0x00 }, /* 3: TN_PAL_B_G */
{ 0xd4, 0x70, 0x8e, 0x00 }, /* 4: TN_PAL_I */
{ 0xd4, 0x70, 0x8f, 0x00 }, /* 5: TN_PAL_D_K */
{ 0xc4, 0x50, 0x8f, 0x00 }, /* 6: TN_SECAM_L */
{ 0x86, 0x50, 0x53, 0x00 }, /* 7: TN_SECAM_L2 */
{ 0x00, 0x00, 0x00, 0x00 }, /* 8: TN_NTSC_J */
{ 0x20, 0x00, 0x00, 0x00 }, /* 9: TN_TV_AND_FM */
{ 0x0A, 0x90, 0x20, 0x00 }, /* A: TN_FM_STEREO */
{ 0x0A, 0x30, 0x20, 0x00 }, /* B: TN_FM_MONO */
{ 0x4A, 0x30, 0x20, 0x00 }, /* C: TN_FM_HIGH_SENSIBILITY */
{ 0x0A, 0x30, 0x20, 0x00 } /* D: TN_FM_NORM_SENSIBILITY */
};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -