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

📄 tvdrx396xa.h.svn-base

📁 最新火热的CX32 源代码
💻 SVN-BASE
📖 第 1 页 / 共 2 页
字号:
/* Bitslice and Shadow Variable Declaration */

extern uint16_t drxVar [3];
//extern code DRX_t drx [36];

/*[#RH_END]*/
/*====================================================================================================================*/



/*[#RH_SECTION_END]*/

/******************************************************************************/
/*****************                                         ********************/
/*****************     END of Register Handler Section     ********************/
/*****************     ===============================     ********************/
/*****************                                         ********************/
/******************************************************************************/

void DrxRegWrite(const uint8_t uRegType, const uint16_t uAddr, const uint16_t uVal);
void Drx_RegSet(DRX_ID_t idBitslice, const uint16_t uValue);
uint16_t Drx_RegGet(DRX_ID_t idBitslice);
void DRX_RegSaveToNvm16bit(DRX_ID_t idBitslice, const uint16_t uAddr);

#ifdef _SOURCE_DRX_RH_INIT_
#define extern
#endif



/******************************************************************************/
/*****************                                           ******************/
/*****************     BEGIN of Register Handler Section     ******************/
/*****************     =================================     ******************/
/*****************                                           ******************/
/******************************************************************************/

/*[#RH_SECTION_BEGIN]*/



/*====================================================================================================================*/
/*[#RHOH_INIT - DrxBase]  Ver. 3.1.19 */

   /* Table Constants of Init Values */

#define DRXBASE_ID              1
#define DRXBASE_INDEX           0
#define DRXBASE_NUM_INITS       4
#define DRXBASE_NUM_NVMS        1
#define DRXBASE_ADDR_BASE       0x0
#define DRXBASE_ADDR_INC        0
#define DRXBASE_REGTYPE         1
#define DRXBASE_NVMADDR_BASE    0x4E0
#define DRXBASE_NVMADDR_INC     -1
#define DRXBASE_NVMADDR_COUNT   1
#define DRXBASE_UCTRL_NVMDATA   0x80
#define DRXBASE_UCTRL_BITSINIT  0x40
#define DRXBASE_UCTRL_BITSID    0x20
#define DRXBASE_UCTRL_BITSSIZE  0x03
#define DRXBASE_UCTRL_REGTYPE   0x0F

   /* NVM constants for single init items */

#define DRXBASE_NVMADDR_I2C_XFP_0x1012      0x04E0
#define DRXBASE_NVMSIZE_I2C_XFP_0x1012      2

/* Structure Array of Init Values and code Variables */

typedef struct _DRXBASE_t
{
   uint16_t  uData;     /* Data/NVM Value */
   uint16_t  uAddr;     /* Address/Bitslice-ID */
   uint8_t  uCtrl;     /* DRXBASE_CTRL_NVMDATA, .._BITSINIT, .._BITSID, .._BITSSIZE, .._REGTYPE */
} DRXBASE_t;

/* Prototype for table array variable */


/*[#RH_END]*/
/*====================================================================================================================*/



/*====================================================================================================================*/
/*[#RHOH_INIT - DrxA]  Ver. 3.1.19 */

   /* Table Constants of Init Values */

#define DRXA_ID              2
#define DRXA_INDEX           4
#define DRXA_NUM_INITS       1
#define DRXA_NUM_NVMS        1
#define DRXA_ADDR_BASE       0x1001
#define DRXA_ADDR_INC        -1
#define DRXA_REGTYPE         1
#define DRXA_NVMADDR_BASE    0x4E2
#define DRXA_NVMADDR_INC     -1
#define DRXA_NVMADDR_COUNT   1

/* NVM constants for single init items */

#define DRXA_NVMADDR_I2C_XFP_0x1001      0x04E2
#define DRXA_NVMSIZE_I2C_XFP_0x1001      2

/*[#RH_END]*/
/*====================================================================================================================*/



/*====================================================================================================================*/
/*[#RHOH_INIT - DrxAts]  Ver. 3.1.19 */

   /* Table Constants of Init Values */

#define DRXATS_ID              3
#define DRXATS_INDEX           5
#define DRXATS_NUM_INITS       2
#define DRXATS_NUM_NVMS        2
#define DRXATS_ADDR_BASE       0x1015
#define DRXATS_ADDR_INC        2
#define DRXATS_REGTYPE         1
#define DRXATS_NVMADDR_BASE    0x4E4
#define DRXATS_NVMADDR_INC     2
#define DRXATS_NVMADDR_COUNT   2

/* NVM constants for single init items */

#define DRXATS_NVMADDR_I2C_XFP_0x1015      0x04E4
#define DRXATS_NVMSIZE_I2C_XFP_0x1015      2
#define DRXATS_NVMADDR_I2C_XFP_0x1017      0x04E6
#define DRXATS_NVMSIZE_I2C_XFP_0x1017      2

/*[#RH_END]*/
/*====================================================================================================================*/



/*[#RH_SECTION_END]*/

/******************************************************************************/
/*****************                                         ********************/
/*****************     END of Register Handler Section     ********************/
/*****************     ===============================     ********************/
/*****************                                         ********************/
/******************************************************************************/



#ifdef _SOURCE_DRX_RH_INIT_
#undef extern
#endif

/******************************************************************************/
/**
 * DEFINES:
 ******************************************************************************/

/*  TV standards for DRX api-tv-standard functions */
enum {
/* you need same order as in array awTvStd[DRX_TVSTD_MAX]!!! */

/* API index for awTvStd[]  corresponding value of DRX register STANDARD_SEL */
   DRX_API_TVSTD_B,     /** DRX_TVSTD_B */
   DRX_API_TVSTD_G,     /** DRX_TVSTD_G */
   DRX_API_TVSTD_DK,    /** DRX_TVSTD_DK */
   DRX_API_TVSTD_I,     /** DRX_TVSTD_I */
   DRX_API_TVSTD_L,     /** DRX_TVSTD_L */
   DRX_API_TVSTD_LL,    /** DRX_TVSTD_LL */
   DRX_API_TVSTD_MN,    /** DRX_TVSTD_MN */
   DRX_API_TVSTD_FM,    /** DRX_TVSTD_FM */
   DRX_API_TVSTD_MAX    /** account of api-tv-standard */
};

/* DRX port access */
enum
{
   DRX_PORT_0 = 0,
   DRX_PORT_1,
   DRX_PORT_2,
   DRX_PORT_3,
   DRX_PORT_4,
   DRX_PORT_5
};



/******************************************************************************/
/**
 * GLOBAL VARIABLES:
 ******************************************************************************/

extern uint8_t crOvermodulation_g;
extern uint8_t crAmplitude_g;
extern uint8_t readCrAmpThBs_g;
extern uint8_t readCrOvmThBs_g;



/******************************************************************************/
/**
 * GLOBAL FUNCTION PROTOTYPES:
 ******************************************************************************/

void API_Drx_Init(void);
void API_Drx_InitEepromFromRom(void);
void API_Drx_InitAts(void);
uint8_t  API_Drx_GetTvStandard(void);
void API_Drx_SetCrAmpThDefaultValue(void);
void API_Drx_SetCrOvmThDefaultValue(void);
void API_Drx_GetCrAmpThAtsValue(void);
void API_Drx_GetCrOvmThAtsValue(void);
void API_Drx_SetTvStandard(uint8_t drxApiTvStd);
int8_t  API_Drx_GetVideoPeak(void);
void API_Drx_SetVideoPeak(int8_t videoPeak);
uint8_t API_Drx_GetSoundIfRef(void);
void API_Drx_SetSoundIfRef(uint8_t sifRef);
uint8_t API_Drx_GetVideoAmp(void);
void API_Drx_SetVideoAmp(uint8_t videoAmp);
uint8_t API_Drx_GetTopSetting(void);
void API_Drx_SetTopSetting(uint8_t topSet);
Bool API_Drx_GetPort(uint8_t portNo);
void API_Drx_SetPort(uint8_t portNo, Bool level);
/*  driver functions: read register */
uint16_t API_Drx_GetVideoAgc(void);
uint16_t API_Drx_GetTunerAgc(void);
uint16_t API_Drx_GetSoundIfAgc(void);
int8_t API_Drx_GetAfcDeviation(void);
uint8_t API_Drx_GetAfcLockBit(void);
uint16_t API_Drx_GetLockQuality(void);
#ifdef __RADIO_MODE__
uint8_t API_Drx_HwVersionCode(void);
uint8_t API_Drx_RomVersionCode(void);
#endif
uint8_t API_Drx_FamilyCode(void);
uint8_t API_Drx_MajorRevisionCode(void);
uint8_t API_Drx_ProductCode(void);
void API_Drx_SetPhaseCorrection(Bool offOn);

#endif

⌨️ 快捷键说明

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