📄 stb0899_init.c~
字号:
#include "stb0899_init.h"
STCHIP_Handle_t STB0899_Init(STB0899_InitParams_t *InitParams)
{
STCHIP_Handle_t hChip = NULL;
u32 *DefVal;
/* fill elements of external chip data structure */
InitParams->Chip->NbRegs = STB0899_NBREGS;
InitParams->Chip->NbFields = STB0899_NBFIELDS;
InitParams->Chip->ChipMode = STCHIP_MODE_SUBADR_16;
if(InitParams->NbDefVal == STB0899_NBREGS)
{
hChip = ChipOpen(InitParams->Chip);
DefVal = InitParams->DefVal;
if(hChip != NULL)
{
/* ID */
ChipAddReg(hChip,STCHIP_REG_8,RSTB0899_ID,"ID",0xf000,*DefVal++,STCHIP_ACCESS_WR,STCHIP_NOT_POINTED,0x0000,0x0);
ChipAddField(hChip,RSTB0899_ID,FSTB0899_CHIP_IDENT,"CHIP_IDENT",4,4,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_ID,FSTB0899_RELEASE,"RELEASE",0,4,CHIP_UNSIGNED);
/* TDISCNTRL1 */
ChipAddReg(hChip,STCHIP_REG_8,RSTB0899_TDISCNTRL1,"TDISCNTRL1",0xf0a0,*DefVal++,STCHIP_ACCESS_WR,STCHIP_NOT_POINTED,0x0000,0x0);
ChipAddField(hChip,RSTB0899_TDISCNTRL1,FSTB0899_TIMOFF,"TIMOFF",7,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_TDISCNTRL1,FSTB0899_DISEQC_RESET,"DISEQC_RESET",6,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_TDISCNTRL1,FSTB0899_TIMCMD,"TIMCMD",4,2,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_TDISCNTRL1,FSTB0899_TDISCNTRL1_RESERVED,"TDISCNTRL1_RESERVED",3,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_TDISCNTRL1,FSTB0899_DISPRECHARGE,"DISPRECHARGE",2,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_TDISCNTRL1,FSTB0899_DISEQCMODE,"DISEQCMODE",0,2,CHIP_UNSIGNED);
/* DISCNTRL2 */
ChipAddReg(hChip,STCHIP_REG_8,RSTB0899_DISCNTRL2,"DISCNTRL2",0xf0a1,*DefVal++,STCHIP_ACCESS_WR,STCHIP_NOT_POINTED,0x0000,0x0);
ChipAddField(hChip,RSTB0899_DISCNTRL2,FSTB0899_RECEIVER_ON,"RECEIVER_ON",7,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_DISCNTRL2,FSTB0899_IGNO_SHORT22K,"IGNO_SHORT22K",6,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_DISCNTRL2,FSTB0899_ONECHIPTRX,"ONECHIPTRX",5,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_DISCNTRL2,FSTB0899_EXTENVELOP,"EXTENVELOP",4,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_DISCNTRL2,FSTB0899_PINSELECT,"PINSELECT",2,2,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_DISCNTRL2,FSTB0899_IRQRXEND,"IRQRXEND",1,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_DISCNTRL2,FSTB0899_IRQ4NBYTES,"IRQ4NBYTES",0,1,CHIP_UNSIGNED);
/* DISRX_ST0 */
ChipAddReg(hChip,STCHIP_REG_8,RSTB0899_DISRX_ST0,"DISRX_ST0",0xf0a4,*DefVal++,STCHIP_ACCESS_WR,STCHIP_NOT_POINTED,0x0000,0x0);
ChipAddField(hChip,RSTB0899_DISRX_ST0,FSTB0899_RXEND,"RXEND",7,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_DISRX_ST0,FSTB0899_RXACTIVE,"RXACTIVE",6,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_DISRX_ST0,FSTB0899_SHORT22K,"SHORT22K",5,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_DISRX_ST0,FSTB0899_CONTTONE,"CONTTONE",4,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_DISRX_ST0,FSTB0899_DIS_4BFIFORDY,"DIS_4BFIFORDY",3,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_DISRX_ST0,FSTB0899_FIFOEMPTY,"FIFOEMPTY",2,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_DISRX_ST0,FSTB0899_DISRX_ST0_RESERVED,"DISRX_ST0_RESERVED",1,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_DISRX_ST0,FSTB0899_ABORTRX,"ABORTRX",0,1,CHIP_UNSIGNED);
/* DISRX_ST1 */
ChipAddReg(hChip,STCHIP_REG_8,RSTB0899_DISRX_ST1,"DISRX_ST1",0xf0a5,*DefVal++,STCHIP_ACCESS_WR,STCHIP_NOT_POINTED,0x0000,0x0);
ChipAddField(hChip,RSTB0899_DISRX_ST1,FSTB0899_RXFAIL,"RXFAIL",7,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_DISRX_ST1,FSTB0899_FIFOPFAIL,"FIFOPFAIL",6,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_DISRX_ST1,FSTB0899_RXNONBYTE,"RXNONBYTE",5,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_DISRX_ST1,FSTB0899_FIFOOVF,"FIFOOVF",4,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_DISRX_ST1,FSTB0899_FIFOBYTENBR,"FIFOBYTENBR",0,4,CHIP_UNSIGNED);
/* DISPARITY */
ChipAddReg(hChip,STCHIP_REG_8,RSTB0899_DISPARITY,"DISPARITY",0xf0a6,*DefVal++,STCHIP_ACCESS_WR,STCHIP_NOT_POINTED,0x0000,0x0);
ChipAddField(hChip,RSTB0899_DISPARITY,FSTB0899_DISEQC_PARITY,"DISEQC_PARITY",0,8,CHIP_UNSIGNED);
/* DISFIFO */
ChipAddReg(hChip,STCHIP_REG_8,RSTB0899_DISFIFO,"DISFIFO",0xf0a7,*DefVal++,STCHIP_ACCESS_WR,STCHIP_NOT_POINTED,0x0000,0x0);
ChipAddField(hChip,RSTB0899_DISFIFO,FSTB0899_DISEQCFIFO,"DISEQCFIFO",0,8,CHIP_UNSIGNED);
/* DISSTATUS */
ChipAddReg(hChip,STCHIP_REG_8,RSTB0899_DISSTATUS,"DISSTATUS",0xf0a8,*DefVal++,STCHIP_ACCESS_WR,STCHIP_NOT_POINTED,0x0000,0x0);
ChipAddField(hChip,RSTB0899_DISSTATUS,FSTB0899_TXFAIL,"TXFAIL",7,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_DISSTATUS,FSTB0899_FIFOPARITYFAIL,"FIFOPARITYFAIL",6,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_DISSTATUS,FSTB0899_DISS_RXNONBYTE,"DISS_RXNONBYTE",5,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_DISSTATUS,FSTB0899_GAPBURST,"GAPBURST",4,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_DISSTATUS,FSTB0899_TXFIFOBYTES,"TXFIFOBYTES",0,4,CHIP_UNSIGNED);
/* DISF22 */
ChipAddReg(hChip,STCHIP_REG_8,RSTB0899_DISF22,"DISF22",0xf0a9,*DefVal++,STCHIP_ACCESS_WR,STCHIP_NOT_POINTED,0x0000,0x0);
ChipAddField(hChip,RSTB0899_DISF22,FSTB0899_F22,"F22",0,8,CHIP_UNSIGNED);
/* DISF22RX */
ChipAddReg(hChip,STCHIP_REG_8,RSTB0899_DISF22RX,"DISF22RX",0xf0aa,*DefVal++,STCHIP_ACCESS_WR,STCHIP_NOT_POINTED,0x0000,0x0);
ChipAddField(hChip,RSTB0899_DISF22RX,FSTB0899_F22RX,"F22RX",0,8,CHIP_UNSIGNED);
/* SYSREG */
ChipAddReg(hChip,STCHIP_REG_8,RSTB0899_SYSREG,"SYSREG",0xf101,*DefVal++,STCHIP_ACCESS_WR,STCHIP_NOT_POINTED,0x0000,0x0);
ChipAddField(hChip,RSTB0899_SYSREG,FSTB0899_SYS_MODE,"SYS_MODE",5,3,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_SYSREG,FSTB0899_DUPLMODE_IN,"DUPLMODE_IN",4,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_SYSREG,FSTB0899_DUPLIN_3CK,"DUPLIN_3CK",3,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_SYSREG,FSTB0899_DUPLMODE_OUT,"DUPLMODE_OUT",2,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_SYSREG,FSTB0899_SYSREG_1,"SYSREG_1",1,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_SYSREG,FSTB0899_RST_IQLSB_IN,"RST_IQLSB_IN",0,1,CHIP_UNSIGNED);
/* ACRPRESC */
ChipAddReg(hChip,STCHIP_REG_8,RSTB0899_ACRPRESC,"ACRPRESC",0xf110,*DefVal++,STCHIP_ACCESS_WR,STCHIP_NOT_POINTED,0x0000,0x0);
ChipAddField(hChip,RSTB0899_ACRPRESC,FSTB0899_ACRPRESC_RESERVED,"ACRPRESC_RESERVED",7,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_ACRPRESC,FSTB0899_ACRPRESC,"ACRPRESC",4,3,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_ACRPRESC,FSTB0899_ACRPRESC_RESERVED2,"ACRPRESC_RESERVED2",3,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_ACRPRESC,FSTB0899_ACRPRESC2,"ACRPRESC2",0,3,CHIP_UNSIGNED);
/* ACRDIV1 */
ChipAddReg(hChip,STCHIP_REG_8,RSTB0899_ACRDIV1,"ACRDIV1",0xf111,*DefVal++,STCHIP_ACCESS_WR,STCHIP_NOT_POINTED,0x0000,0x0);
ChipAddField(hChip,RSTB0899_ACRDIV1,FSTB0899_ACRDIV1,"ACRDIV1",0,8,CHIP_UNSIGNED);
/* ACRDIV2 */
ChipAddReg(hChip,STCHIP_REG_8,RSTB0899_ACRDIV2,"ACRDIV2",0xf112,*DefVal++,STCHIP_ACCESS_WR,STCHIP_NOT_POINTED,0x0000,0x0);
ChipAddField(hChip,RSTB0899_ACRDIV2,FSTB0899_ACRDIV2,"ACRDIV2",0,8,CHIP_UNSIGNED);
/* DACR1 */
ChipAddReg(hChip,STCHIP_REG_8,RSTB0899_DACR1,"DACR1",0xf113,*DefVal++,STCHIP_ACCESS_WR,STCHIP_NOT_POINTED,0x0000,0x0);
ChipAddField(hChip,RSTB0899_DACR1,FSTB0899_DACMODE,"DACMODE",5,3,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_DACR1,FSTB0899_DACHZ,"DACHZ",4,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_DACR1,FSTB0899_DAC_MSB,"DAC_MSB",0,4,CHIP_UNSIGNED);
/* DACR2 */
ChipAddReg(hChip,STCHIP_REG_8,RSTB0899_DACR2,"DACR2",0xf114,*DefVal++,STCHIP_ACCESS_WR,STCHIP_NOT_POINTED,0x0000,0x0);
ChipAddField(hChip,RSTB0899_DACR2,FSTB0899_DAC_LSB,"DAC_LSB",0,8,CHIP_UNSIGNED);
/* OUTCFG */
ChipAddReg(hChip,STCHIP_REG_8,RSTB0899_OUTCFG,"OUTCFG",0xf11c,*DefVal++,STCHIP_ACCESS_WR,STCHIP_NOT_POINTED,0x0000,0x0);
ChipAddField(hChip,RSTB0899_OUTCFG,FSTB0899_TSSEROUTHZ,"TSSEROUTHZ",7,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_OUTCFG,FSTB0899_TSPOUTHZ,"TSPOUTHZ",6,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_OUTCFG,FSTB0899_OUTCFG_RESERVED,"OUTCFG_RESERVED",0,6,CHIP_UNSIGNED);
/* MODECFG */
ChipAddReg(hChip,STCHIP_REG_8,RSTB0899_MODECFG,"MODECFG",0xf11d,*DefVal++,STCHIP_ACCESS_WR,STCHIP_NOT_POINTED,0x0000,0x0);
ChipAddField(hChip,RSTB0899_MODECFG,FSTB0899_INV_DATA,"INV_DATA",7,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_MODECFG,FSTB0899_INV_DATA6,"INV_DATA6",6,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_MODECFG,FSTB0899_MODECFG_RESERVED,"MODECFG_RESERVED",3,3,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_MODECFG,FSTB0899_INV_ERROR,"INV_ERROR",2,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_MODECFG,FSTB0899_INV_STROUT,"INV_STROUT",1,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_MODECFG,FSTB0899_INV_DP,"INV_DP",0,1,CHIP_UNSIGNED);
/* IRQSTATUS3 */
ChipAddReg(hChip,STCHIP_REG_8,RSTB0899_IRQSTATUS3,"IRQSTATUS3",0xf120,*DefVal++,STCHIP_ACCESS_WR,STCHIP_NOT_POINTED,0x0000,0x0);
ChipAddField(hChip,RSTB0899_IRQSTATUS3,FSTB0899_SIP1,"SIP1",7,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_IRQSTATUS3,FSTB0899_NSIP1,"NSIP1",6,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_IRQSTATUS3,FSTB0899_SCF_SYNC,"SCF_SYNC",5,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_IRQSTATUS3,FSTB0899_NSCF_SYNC,"NSCF_SYNC",4,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_IRQSTATUS3,FSTB0899_SAGC0_LOCK,"SAGC0_LOCK",3,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_IRQSTATUS3,FSTB0899_NSAGC0_LOCK,"NSAGC0_LOCK",2,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_IRQSTATUS3,FSTB0899_SDISEQCTX_IRQ,"SDISEQCTX_IRQ",1,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_IRQSTATUS3,FSTB0899_SDISEQCRX_IRQ,"SDISEQCRX_IRQ",0,1,CHIP_UNSIGNED);
/* IRQSTATUS2 */
ChipAddReg(hChip,STCHIP_REG_8,RSTB0899_IRQSTATUS2,"IRQSTATUS2",0xf121,*DefVal++,STCHIP_ACCESS_WR,STCHIP_NOT_POINTED,0x0000,0x0);
ChipAddField(hChip,RSTB0899_IRQSTATUS2,FSTB0899_SEND_LOOPTC,"SEND_LOOPTC",7,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_IRQSTATUS2,FSTB0899_SOV_RSFIFO,"SOV_RSFIFO",6,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_IRQSTATUS2,FSTB0899_SLOCKEDBW,"SLOCKEDBW",5,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_IRQSTATUS2,FSTB0899_NSLOCKEDBW,"NSLOCKEDBW",4,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_IRQSTATUS2,FSTB0899_SPRFBW,"SPRFBW",3,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_IRQSTATUS2,FSTB0899_NSPRFBW,"NSPRFBW",2,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_IRQSTATUS2,FSTB0899_SINPUTX,"SINPUTX",1,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_IRQSTATUS2,FSTB0899_NSINPUTX,"NSINPUTX",0,1,CHIP_UNSIGNED);
/* IRQSTATUS1 */
ChipAddReg(hChip,STCHIP_REG_8,RSTB0899_IRQSTATUS1,"IRQSTATUS1",0xf122,*DefVal++,STCHIP_ACCESS_WR,STCHIP_NOT_POINTED,0x0000,0x0);
ChipAddField(hChip,RSTB0899_IRQSTATUS1,FSTB0899_SEND_LOOPVIT,"SEND_LOOPVIT",7,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_IRQSTATUS1,FSTB0899_SDMON_ELOOP,"SDMON_ELOOP",6,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_IRQSTATUS1,FSTB0899_SLOCKED,"SLOCKED",5,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_IRQSTATUS1,FSTB0899_NSLOCKED,"NSLOCKED",4,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_IRQSTATUS1,FSTB0899_SPRF,"SPRF",3,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_IRQSTATUS1,FSTB0899_NSPRF,"NSPRF",2,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_IRQSTATUS1,FSTB0899_SSMOTIF_LOCKED,"SSMOTIF_LOCKED",1,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_IRQSTATUS1,FSTB0899_NSSMOTIF_LOCD,"NSSMOTIF_LOCD",0,1,CHIP_UNSIGNED);
/* IRQSTATUS0 */
ChipAddReg(hChip,STCHIP_REG_8,RSTB0899_IRQSTATUS0,"IRQSTATUS0",0xf123,*DefVal++,STCHIP_ACCESS_WR,STCHIP_NOT_POINTED,0x0000,0x0);
ChipAddField(hChip,RSTB0899_IRQSTATUS0,FSTB0899_SFIFOFULL_CODIN,"SFIFOFULL_CODIN",7,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_IRQSTATUS0,FSTB0899_SCOD_NEAR_EMPTY,"SCOD_NEAR_EMPTY",6,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_IRQSTATUS0,FSTB0899_SCOD_FIFO_READY,"SCOD_FIFO_READY",5,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_IRQSTATUS0,FSTB0899_SDECIN_OVER,"SDECIN_OVER",4,1,CHIP_UNSIGNED);
ChipAddField(hChip,RSTB0899_IRQSTATUS0,FSTB0899_SRSSYNC_OK,"SRSSYNC_OK",3,1,CHIP_UNSIGNED);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -