📄 phantom_defs.h
字号:
/*******************************************************************************************************/
/* --- MIN LIMITS --- */
/*******************************************************************************************************/
#define PHANTOM_MIN_LNB_MSG 3 /* minimum DiSEqC message length */
#define PHANTOM_SYMBRATE_LIMIT_1 3000UL /* Ksps */
#define PHANTOM_SYMBRATE_LIMIT_2 6000UL
#define PHANTOM_SYMBRATE_LIMIT_3 9000UL
#define PHANTOM_SYMBRATE_LIMIT_4 30000UL
/*******************************************************************************************************/
/* common definitions */
/*******************************************************************************************************/
#define PHANTOM_ONEMILLION 1000000 /* (one million) easier to read MM */
#define PHANTOM_ONETHOUSAND 1000 /* (one thousand) easier to read */
#define PHANTOM_NIM_DEFAULT_XTAL (40444UL*(unsigned long)PHANTOM_ONETHOUSAND) /* default xtal rate */
#define PHANTOM_NIM_DEFAULT_FREQ ( 1200UL*(unsigned long)PHANTOM_ONEMILLION) /* default tuner freq */
#define PHANTOM_NIM_DEFAULT_SYMB 20000UL /* default symbol rate */
#define PHANTOM_NIM_DEFAULT_LNB 5000000UL /* default min. search range limit */
#define PHANTOM_UC8051_RESET_HIGH (0x03)
#define PHANTOM_UC8051_RESET_LOW (0x00)
#define PHANTOM_UC8051_XPROG_LOAD (0x81)
#define PHANTOM_UC8051_XDATA_LOAD (0x83)
#define PHANTOM_SHUT_ALL_CLK (0xFFUL)
#define PHANTOM_ENABLE_ALL_CLK (0x00UL)
/*******************************************************************************************************/
/* default definitions */
/*******************************************************************************************************/
#define PHANTOM_DEFAULT_VIPER_PLL_MULT 19
/* LNB Config */
#define PHANTOM_DEFAULT_LNB_TONE 0x00 /* Off */
#define PHANTOM_DEFAULT_REPLY_READY_INTR_ENABLE 0x00 /* Disables interrupt after receiving a reply */
#define PHANTOM_DEFAULT_LNB_SIGMA_DELTA 0x02 /* Controls the amplitude of 22Khz tone output peak-to-peak voltage */
#define PHANTOM_DEFAULT_LNB_TONE_DETECTION_THRESH 0x28 /* Threshold that determines the existence of 22kHz tone. */
#define PHANTOM_DEFAULT_LNB_DC_POLARITY 0x00 /* To invert the polarity, set this to 0x01 */
#define PHANTOM_DEFAULT_LNB_OPEN_DRAIN 0x00 /* Digital I/O mode. To enable open/drain set this to 0x01 */
#define PHANTOM_DEFAULT_LNB_MODE 0x01 /* Tone Clock Mode (default) */
#define PHANTOM_TWO_POWER_18 (0x00040000)
#define PHANTOM_TWO_POWER_31 (0x80000000)
#define PHANTOM_TWO_POWER_25 (0x02000000)
#define PHANTOM_TWO_POWER_23 (0x00800000)
#define TWO_POWER_34_OVER_TWO_POWER_3 (0x80000000)
#define TWO_POWER_3 (0x08)
/* PLL settings */
#define PHANTOM_PLL_SPMP_VALUE 8UL
#define PHANTOM_PLL_MAIN_CLOCK_DIV4 4UL
#define PHANTOM_PLL_MAIN_CLOCK_DIV6 6UL
#define PHANTOM_PLL_CLOCK_SMOOTH_DIVIDER 4UL
#define PHANTOM_REF_CLOCK_DIVIDER 2UL // Mongoose B1 is programmed for 40 MHz ref_clk_out
#define PHANTOM_VCO_DIV_BY_8 3UL /* 0xE3[1:0] */
#define PHANTOM_VCO_DIV_BY_4 1UL
#define PHANTOM_VCO_DIV_BY_2 2UL
#define PHANTOM_VCO_DIV_BY_0 0UL
#define PHANTOM_ADC_MOD_SEL_DIV6 0UL
#define PHANTOM_ADC_MOD_SEL_DIV4 1UL
#define PHANTOM_REF_CLK_DIV2 0UL
#define PHANTOM_REF_CLK_DIV1 1UL
/*******************************************************************************************************/
/* --- COMMAND INTERFACE --- */
/*******************************************************************************************************/
#define PHANTOM_LLF_READY_TOKEN 0x01 /* token written to trigger the LLF */
#define PHANTOM_LLF_DONE_TOKEN 0x00 /* token to confirm execution of LLF */
/* == Op-codes == */
/* Customer parameters */
#define PHANTOM_OPCODE_SET_VCO_FREQUENCY 0x10 /* PHANTOM_LLF_SetVCOFrequency */
#define PHANTOM_OPCODE_CHANGE_CHANNEL 0x11 /* PHANTOM_LLF_ChangeChannel */
#define PHANTOM_OPCODE_MPEG_CONFIG 0x13 /* PHANTOM_LLF_MPEGConfig */
#define PHANTOM_OPCODE_TUNER_INIT 0x14 /* PHANTOM_LLF_TunerInit */
#define PHANTOM_OPCODE_TUNER_BW_ADJUST 0x15 /* PHANTOM_LLF_TunerBandwidthAdjust */
#define PHANTOM_OPCODE_GET_MN 0x16 /* PHANTOM_LLF_GetMN */
#define PHANTOM_OPCODE_SET_MN 0x17 /* PHANTOM_LLF_SetMN */
#define PHANTOM_OPCODE_H20_ATTENUATOR_CONTROL 0x18 /* PHANTOM_LLF_H20AttenuatorControl */
#define PHANTOM_OPCODE_SET_TUNER_THRESH 0x1F /* PHANTOM_SetTunerGainThreshold */
/* LNB Functions */
#define PHANTOM_OPCODE_LNB_CONFIG 0x20 /* PHANTOM_LLF_LNBConfig */
#define PHANTOM_OPCODE_LNB_SEND_DISEQC 0x21 /* PHANTOM_LLF_LNBSend */
#define PHANTOM_OPCODE_SET_LNB_DC_LEVEL 0x22 /* PHANTOM_LLF_LNBDCLevel */
#define PHANTOM_OPCODE_LNB_PCB_CONFIG 0x23 /* PHANTOM_LLF_LNBPCBConfig */
#define PHANTOM_OPCODE_LNB_SEND_TONEBURST 0x24 /* PHANTOM_LLF_LNBSendToneBurst */
/* General purpose Tri-state functions. */
#define PHANTOM_OPCODE_TRISTATE_CONFIG 0x62 /* PHANTOM_LLF_TristateConfig */
#define PHANTOM_OPCODE_AGC_CONTROL 0x3B /* PHANTOM_AGCControl */
#define PHANTOM_BER_CONTROL 0x3C /* PHANTOM_BERControl */
/* Interrupt functions */
#define PHANTOM_OPCODE_EN_CLEAR_INTERRUPTS 0x30 /* PHANTOM_LLF_InterruptControl */
/* Utility functions */
#define PHANTOM_OPCODE_UPDATE_FIRMWARE_VERSION 0x35 /* PHANTOM_LLF_UpdateFirmwareVersion */
#define PHANTOM_OPCODE_SLEEP_MODE_SETTING 0x36 /* PHANTOM_SetSleepMode */
#define PHANTOM_OPCODE_TUNER_WRITE 0x37 /* PHANTOM_LLF_TunerWrite */
#define PHANTOM_OPCODE_TUNER_READ 0x38 /* PHANTOM_LLF_TunerRead */
#define PHANTOM_OPCODE_TUNER_DEBUG_THRESH 0x55 /* PHANTOM_LLF_TunerDebugThresh */
#define PHANTOM_OPCODE_TUNER_PROG_CONTROL 0x56 /* PHANTOM_LLF_TunerProgControl */
/* High level LLF access functions - Internal parameters */
#define PHANTOM_OPCODE_SET_GPIO_DIRECTION 0x32 /* PHANTOM_LLF_SetGPIODirection */
#define PHANTOM_OPCODE_SET_GPIO_OUT 0x33 /* PHANTOM_LLF_SetGPIOOut */
#define PHANTOM_OPCODE_GPIO_MODE 0x4E /* PHANTOM_LLF_GPIOMode */
#define PHANTOM_OPCODE_GPIO_ENABLE 0x4F /* PHANTOM_LLF_GPIOEnable */
#define PHANTOM_OPCODE_GET_FSM_SEQUENCE 0x52 /* PHANTOM_OPCODE_GET_FSM_SEQUENCE */
#define PHANTOM_OPCODE_DISABLE_CORRECTION 0x34 /* PHANTOM_LLF_DisableCorrection */
#define PHANTOM_OPCODE_SET_FW_PARAMETER 0x80 /* PHANTOM_LLF_SetFirmwareParameter */
#define PHANTOM_OPCODE_DEBUG_MODE 0x81 /* PHANTOM_LLF_SetDebugMode */
/* -- End: command Interface related defines -- */
/*******************************************************************************************************/
/* Values to set into special control download control register */
/*******************************************************************************************************/
#define PHANTOM_DOWNLOAD_DATA_ADDRESS_LOW 0x00 /* XDATA start address, low 8-bit.*/
#define PHANTOM_DOWNLOAD_DATA_ADDRESS_HIGH 0x00 /* XDATA start address, high 8-bit.*/
#define PHANTOM_UC8051_CODE_LOAD_DISABLE 0x10 /* Disable the 8051 code load */
#endif /* #ifndef PHANTOM_DEFS_H_DEFINED */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -