EIS/drv.min.h

262 lines
12 KiB
C

/* Library Version */
AD5940LIB_VER_MAJOR, AD5940LIB_VER_MINOR, AD5940LIB_VER_PATCH, AD5940LIB_VER
/* AGPIO Registers (0x00) */
REG_AGPIO_GP0CON, REG_AGPIO_GP0OEN, REG_AGPIO_GP0PE, REG_AGPIO_GP0IEN
REG_AGPIO_GP0IN, REG_AGPIO_GP0OUT, REG_AGPIO_GP0SET, REG_AGPIO_GP0CLR, REG_AGPIO_GP0TGL
/* AGPIO Bitmasks */
BITP/M_AGPIO_GP0CON_PINxCFG (x=0-7)
BITP/M_AGPIO_GP0OEN_OEN, BITP/M_AGPIO_GP0PE_PE, BITP/M_AGPIO_GP0IEN_IEN
BITP/M_AGPIO_GP0IN_IN, BITP/M_AGPIO_GP0OUT_OUT, BITP/M_AGPIO_GP0SET_SET
BITP/M_AGPIO_GP0CLR_CLR, BITP/M_AGPIO_GP0TGL_TGL
/* AFECON Registers (0x400) */
REG_AFECON_ADIID, REG_AFECON_CHIPID, REG_AFECON_CLKCON0, REG_AFECON_CLKEN1
REG_AFECON_CLKSEL, REG_AFECON_CLKCON0KEY, REG_AFECON_SWRSTCON, REG_AFECON_TRIGSEQ
/* AFECON Bitmasks */
BITP/M_AFECON_ADIID_ADIID, BITP/M_AFECON_CHIPID_PARTID/REVISION
BITP/M_AFECON_CLKCON0_SFFTCLKDIVCNT, ADCCLKDIV, SYSCLKDIV
BITP/M_AFECON_CLKEN1_GPT1DIS, GPT0DIS, ACLKDIS
BITP/M_AFECON_CLKSEL_ADCCLKSEL, SYSCLKSEL
BITP/M_AFECON_CLKCON0KEY_DIVSYSCLK_ULP_EN
BITP/M_AFECON_SWRSTCON_SWRSTL
BITP/M_AFECON_TRIGSEQ_TRIGx (x=0-3)
/* AFEWDT Registers (0x900) */
REG_AFEWDT_WDTLD, REG_AFEWDT_WDTVALS, REG_AFEWDT_WDTCON, REG_AFEWDT_WDTCLRI
REG_AFEWDT_WDTSTA, REG_AFEWDT_WDTMINLD
/* AFEWDT Bitmasks */
BITP/M_AFEWDT_WDTLD_LOAD, BITP/M_AFEWDT_WDTVALS_CCOUNT
BITP/M_AFEWDT_WDTCON_WDTIRQEN, MINLOAD_EN, CLKDIV2, MDE, EN, PRE, IRQ, PDSTOP
ENUM_AFEWDT_WDTCON_RESET, INTERRUPT, CONTINUE, STOP
BITP/M_AFEWDT_WDTCLRI_CLRWDG
BITP/M_AFEWDT_WDTSTA_TMINLD, OTPWRDONE, LOCK, CON, TLD, CLRI, IRQ
ENUM_AFEWDT_WDTSTA_OPEN, LOCKED, SYNC_COMPLETE, SYNC_IN_PROGRESS, CLEARED, PENDING
BITP/M_AFEWDT_WDTMINLD_MIN_LOAD
/* WUPTMR Registers (0x800) */
REG_WUPTMR_CON, REG_WUPTMR_SEQORDER
REG_WUPTMR_SEQxWUPL/H (x=0-3), REG_WUPTMR_SEQxSLEEPL/H (x=0-3)
/* WUPTMR Bitmasks */
BITP/M_WUPTMR_CON_MSKTRG, CLKSEL, ENDSEQ, EN
ENUM_WUPTMR_CON_SWT32K0, SWTEXT0, SWT32K, SWTEXT, SWTEN, SWTDIS
ENUM_WUPTMR_CON_ENDSEQx (x=A-H)
BITP/M_WUPTMR_SEQORDER_SEQx (x=A-H)
ENUM_WUPTMR_SEQORDER_SEQx0-3
BITP/M_WUPTMR_SEQxWUPL/H_WAKEUPTIMEx, BITP/M_WUPTMR_SEQxSLEEPL/H_SLEEPTIMEx
/* ALLON Registers (0xA00) */
REG_ALLON_PWRMOD, REG_ALLON_PWRKEY, REG_ALLON_OSCKEY, REG_ALLON_OSCCON
REG_ALLON_TMRCON, REG_ALLON_EI0CON, REG_ALLON_EI1CON, REG_ALLON_EI2CON
REG_ALLON_EICLR, REG_ALLON_RSTSTA, REG_ALLON_RSTCONKEY, REG_ALLON_LOSCTST, REG_ALLON_CLKEN0
/* ALLON Bitmasks */
BITP/M_ALLON_PWRMOD_RAMRETEN, ADCRETEN, SEQSLPEN, TMRSLPEN, PWRMOD
BITP/M_ALLON_PWRKEY_PWRKEY, BITP/M_ALLON_OSCKEY_OSCKEY
BITP/M_ALLON_OSCCON_HFXTALOK, HFOSCOK, LFOSCOK, HFXTALEN, HFOSCEN, LFOSCEN
BITP/M_ALLON_TMRCON_TMRINTEN
BITP/M_ALLON_EI0CON_IRQxEN/MDE (x=0-3)
BITP/M_ALLON_EI1CON_IRQxEN/MDE (x=4-7)
BITP/M_ALLON_EI2CON_BUSINTEN, BUSINTMDE
BITP/M_ALLON_EICLR_AUTCLRBUSEN, BUSINT
BITP/M_ALLON_RSTSTA_PINSWRST, MMRSWRST, WDRST, EXTRST, POR
BITP/M_ALLON_RSTCONKEY_KEY
BITP/M_ALLON_LOSCTST_TRIM
BITP/M_ALLON_CLKEN0_TIACHPDIS, SLPWUTDIS, WDTDIS
/* AGPT0 Registers (0xD00) & AGPT1 Registers (0xE00) */
REG_AGPT0_LD0, REG_AGPT0_VAL0, REG_AGPT0_CON0, REG_AGPT0_CLRI0, REG_AGPT0_CAP0
REG_AGPT0_ALD0, REG_AGPT0_AVAL0, REG_AGPT0_STA0, REG_AGPT0_PWMCON0, REG_AGPT0_PWMMAT0, REG_AGPT0_INTEN
REG_AGPT1_LD1, REG_AGPT1_VAL1, REG_AGPT1_CON1, REG_AGPT1_CLRI1, REG_AGPT1_CAP1
REG_AGPT1_ALD1, REG_AGPT1_AVAL1, REG_AGPT1_STA1, REG_AGPT1_PWMCON1, REG_AGPT1_PWMMAT1, REG_AGPT1_INTEN1
/* AGPT Bitmasks */
BITP/M_AGPTx_CONx_SYNCBYP, RSTEN, EVTEN, EVENT, RLD, CLK, ENABLE, MOD, UP, PRE
BITP/M_AGPTx_CLRIx_CAP, TMOUT
BITP/M_AGPTx_STAx_RSTCNT, PDOK, BUSY, CAP, TMOUT
BITP/M_AGPTx_PWMCONx_IDLE, MATCHEN
/* AFECRC Registers (0x1000) */
REG_AFECRC_CTL, REG_AFECRC_IPDATA, REG_AFECRC_RESULT, REG_AFECRC_POLY
REG_AFECRC_IPBITS, REG_AFECRC_IPBYTE, REG_AFECRC_CRC_SIG_COMP, REG_AFECRC_CRCINTEN, REG_AFECRC_INTSTA
/* AFECRC Bitmasks */
BITP/M_AFECRC_CTL_REVID, MON_EN, W16SWP, BYTMIRR, BITMIRR, LSBFIRST, EN
/* AFE Registers (0x2000) */
REG_AFE_AFECON, REG_AFE_SEQCON, REG_AFE_FIFOCON, REG_AFE_SWCON, REG_AFE_HSDACCON
REG_AFE_WGCON, REG_AFE_WGDCLEVEL1/2, REG_AFE_WGDELAY1/2, REG_AFE_WGSLOPE1/2
REG_AFE_WGFCW, REG_AFE_WGPHASE, REG_AFE_WGOFFSET, REG_AFE_WGAMPLITUDE
REG_AFE_ADCFILTERCON, REG_AFE_HSDACDAT, REG_AFE_LPREFBUFCON, REG_AFE_SYNCEXTDEVICE
REG_AFE_SEQCRC, REG_AFE_SEQCNT, REG_AFE_SEQTIMEOUT, REG_AFE_DATAFIFORD, REG_AFE_CMDFIFOWRITE
REG_AFE_ADCDAT, REG_AFE_DFTREAL, REG_AFE_DFTIMAG, REG_AFE_SINC2DAT, REG_AFE_TEMPSENSDAT
REG_AFE_AFEGENINTSTA, REG_AFE_ADCMIN/SM, REG_AFE_ADCMAX/SMEN, REG_AFE_ADCDELTA
REG_AFE_HPOSCCON, REG_AFE_DFTCON
REG_AFE_LPTIASW0/1, REG_AFE_LPTIACON0/1
REG_AFE_HSRTIACON, REG_AFE_DE0/1RESCON, REG_AFE_HSTIACON
REG_AFE_LPMODEKEY, REG_AFE_LPMODECLKSEL, REG_AFE_LPMODECON
REG_AFE_SEQSLPLOCK, REG_AFE_SEQTRGSLP
REG_AFE_LPDACDAT0/1, REG_AFE_LPDACSW0/1, REG_AFE_LPDACCON0/1
REG_AFE_DSWFULLCON, REG_AFE_NSWFULLCON, REG_AFE_PSWFULLCON, REG_AFE_TSWFULLCON
REG_AFE_TEMPSENS, REG_AFE_BUFSENCON, REG_AFE_ADCCON
REG_AFE_DSWSTA, REG_AFE_PSWSTA, REG_AFE_NSWSTA, REG_AFE_TSWSTA
REG_AFE_STATSVAR, REG_AFE_STATSCON, REG_AFE_STATSMEAN
REG_AFE_SEQ0/1/2/3INFO, REG_AFE_CMDFIFOWADDR, REG_AFE_CMDDATACON, REG_AFE_DATAFIFOTHRES
REG_AFE_REPEATADCCNV, REG_AFE_FIFOCNTSTA, REG_AFE_CALDATLOCK
REG_AFE_ADCOFFSETHSTIA, REG_AFE_ADCGAINTEMPSENS0, REG_AFE_ADCOFFSETTEMPSENS0/1
REG_AFE_ADCGAINGN1/1P5/2/4/9, REG_AFE_ADCOFFSETGN1/1P5/2/4/9
REG_AFE_DACGAIN, REG_AFE_DACOFFSET, REG_AFE_DACOFFSETATTEN/HP
REG_AFE_ADCPGAOFFSETCANCEL, REG_AFE_ADCGNHSTIA, REG_AFE_ADCPGAGN4OFCAL
REG_AFE_ADCOFFSETLPTIA0/1, REG_AFE_ADCGNLPTIA0/1, REG_AFE_ADCGAINDIOTEMPSENS
REG_AFE_PMBW, REG_AFE_SWMUX, REG_AFE_AFE_TEMPSEN_DIO, REG_AFE_ADCBUFCON
/* AFE Bitmasks & Enums */
BITP/M_AFE_AFECON_DACBUFEN, DACREFEN, ALDOILIMITEN, SINC2EN, DFTEN, WAVEGENEN
BITP/M_AFE_AFECON_TEMPCONVEN, TEMPSENSEN, TIAEN, INAMPEN, EXBUFEN, ADCCONVEN, ADCEN, DACEN, HPREFDIS
ENUM_AFE_AFECON_OFF, ENUM_AFE_AFECON_ON
BITP/M_AFE_SEQCON_SEQWRTMR, SEQHALT, SEQHALTFIFOEMPTY, SEQEN
BITP/M_AFE_FIFOCON_DATAFIFOSRCSEL, DATAFIFOEN
BITP/M_AFE_SWCON_TxCON, SWSOURCESEL, TMUXCON, NMUXCON, PMUXCON, DMUXCON
BITP/M_AFE_HSDACCON_INAMPGNMDE, RATE, ATTENEN
BITP/M_AFE_WGCON_DACGAINCAL, DACOFFSETCAL, TYPESEL, TRAPRSTEN
BITP/M_AFE_ADCFILTERCON_AVRGNUM, SINC3OSR, SINC2OSR, AVRGEN, SINC3BYP, LPFBYPEN, ADCCLK
BITP/M_AFE_LPREFBUFCON_BOOSTCURRENT, LPBUF2P5DIS, LPREFDIS
BITP/M_AFE_CMDFIFOWRITE_CMDFIFOIN
BITP/M_AFE_CMDDATACON_DATAMEMMDE, DATA_MEM_SEL, CMDMEMMDE, CMD_MEM_SEL
ENUM_AFE_CMDDATACON_DFIFO, DSTM, DMEM32B, DMEM2K, DMEM4K, DMEM6K, CMEM, CFIFO, CSTM, CMEM32B, CMEM2K, CMEM4K, CMEM6K
BITP/M_AFE_DFTCON_DFTINSEL, DFTNUM, HANNINGEN
BITP/M_AFE_LPTIASWx_TIABIASSEL, PABIASSEL, TIASWCON
ENUM_AFE_LPTIASWx_CAPA_LP, NORM, DIO, SHORTSW, LOWNOISE, CAPA_RAMP_H, BUFDIS, BUFEN/2, TWOLEAD, SESHORTRE
BITP/M_AFE_LPTIACONx_CHOPEN, TIARF, TIARL, TIAGAIN, IBOOST, HALFPWR, PAPDEN, TIAPDEN
ENUM_AFE_LPTIACONx_DISCONRF, BYPRF, RF20K, RF100K, RF200K, RF400K, RF600K, RF1MOHM
ENUM_AFE_LPTIACONx_RL0, RL10, RL30, RL50, RL100, RL1P6K, RL3P1K, RL3P5K
ENUM_AFE_LPTIACONx_DISCONTIA, TIAGAIN200, 1K, 2K...512K
BITP/M_AFE_HSRTIACON_CTIACON, TIASW6CON, RTIACON
BITP/M_AFE_DExRESCON_DExRCON
BITP/M_AFE_HSTIACON_VBIASSEL
BITP/M_AFE_DACDCBUFCON_CHANSEL, CHAN0, CHAN1
BITP/M_AFE_LPMODECON_ALDOEN, V1P1HPADCEN, V1P8HPADCEN, PTATEN, ZTATEN, REPEATADCCNVEN_P, ADCCONVEN, HPREFDIS, HFOSCPD
BITP/M_AFE_LPDACSWx_LPMODEDIS, LPDACSW, DACCONBIT5, OVRRIDE
BITP/M_AFE_LPDACCONx_WAVETYPE, DACMDE, VZEROMUX, VBIASMUX, REFSEL, PWDEN, RSTEN
ENUM_AFE_LPDACCONx_MMR, WAVEGEN, NORM, DIAG, BITS6, BITS12, 12BIT, EN, ULPREF, AVDD, PWREN, PWRDIS, WRITEDIS, WRITEEN
BITP/M_AFE_DSWFULLCON_Dx (x=2-8), DR0
BITP/M_AFE_NSWFULLCON_NL2, NL, NR1, Nx (x=1-9)
BITP/M_AFE_PSWFULLCON_PL2, PL, Px (x=2-12), PR0
BITP/M_AFE_TSWFULLCON_TR1, Tx (x=1-11)
BITP/M_AFE_TEMPSENS_CHOPFRESEL, CHOPCON, ENABLE
BITP/M_AFE_BUFSENCON_V1P8THERMSTEN, V1P1LPADCCHGDIS, V1P1LPADCEN, V1P1HPADCEN, V1P8HPADCCHGDIS, V1P8LPADCEN, V1P8HPADCILIMITEN, V1P8HPADCEN
BITP/M_AFE_ADCCON_GNPGA, GNOFSELPGA, GNOFFSEL, MUXSELN, MUXSELP
BITP/M_AFE_STATSCON_STDDEV, SAMPLENUM, RESRVED, STATSEN
BITP/M_AFE_PMBW_SYSBW, SYSHP, BWNA, BW50, BW100, BW250, LP, HP
/* INTC Registers (0x3000) */
REG_INTC_INTCPOL, REG_INTC_INTCCLR, REG_INTC_INTCSEL0/1, REG_INTC_INTCFLAG0/1
/* SPI Commands */
SPICMD_SETADDR, SPICMD_READREG, SPICMD_WRITEREG, SPICMD_READFIFO
/* Interrupt Controller Constants */
AFEINTC_0, AFEINTC_1
AFEINTSRC_ADCRDY, DFTRDY, SINC2RDY, TEMPRDY, ADCMINERR, ADCMAXERR, ADCDIFFERR, MEANRDY, VARRDY
AFEINTSRC_CUSTOMINTx (x=0-3), BOOTLDDONE, WAKEUP, ENDSEQ, SEQTIMEOUT, SEQTIMEOUTERR
AFEINTSRC_CMDFIFOFULL, CMDFIFOEMPTY, CMDFIFOTHRESH, CMDFIFOOF, CMDFIFOUF
AFEINTSRC_DATAFIFOFULL, DATAFIFOEMPTY, DATAFIFOTHRESH, DATAFIFOOF, DATAFIFOUF
AFEINTSRC_WDTIRQ, CRC_OUTLIER, GPT0INT_SLPWUT, GPT1INT_TRYBRK, ALLINT
/* Power & Bandwidth */
AFEPWR_LP, AFEPWR_HP
AFEBW_AUTOSET, AFEBW_50KHZ, AFEBW_100KHZ, AFEBW_250KHZ
/* AFE Control Signals (Masks) */
AFECTRL_HPREFPWR, HSDACPWR, ADCPWR, ADCCNV, EXTBUFPWR, INAMPPWR, HSTIAPWR
AFECTRL_TEMPSPWR, TEMPCNV, WG, DFT, SINC2NOTCH, ALDOLIMIT, DACREFPWR, DCBUFPWR, ALL
/* Low Power Mode Control Signals */
LPMODECTRL_HFOSCEN, HPREFPWR, ADCCNV, REPEATEN, GLBBIASZ, GLBBIASP, BUFHP1P8V, BUFHP1P1V, ALDOPWR, ALL, NONE
/* Result Types */
AFERESULT_SINC3, SINC2, TEMPSENSOR, DFTREAL, DFTIMAGE, STATSMEAN, STATSVAR
/* Switch Matrix Definitions */
SWD_OPEN, RCAL0, AIN1, AIN2, AIN3, CE0, CE1, AFE1, SE0, SE1, AFE3
SWP_OPEN, RCAL0, AIN1, AIN2, AIN3, RE0, RE1, AFE2, SE0, DE0, SE1, AFE3, DE1, CE0, CE1, AFE1, PL, PL2
SWN_OPEN, RCAL1, AIN0, AIN1, AIN2, AIN3, SE0LOAD, DE0LOAD, SE1LOAD, AFE3LOAD, DE1LOAD, SE0, NL, NL2
SWT_OPEN, RCAL1, AIN0, AIN1, AIN2, AIN3, SE0LOAD, DE0, SE1LOAD, AFE3LOAD, DE1, TRTIA, DE0LOAD, DE1LOAD
/* Waveform Generator Types */
WGTYPE_MMR, WGTYPE_SIN, WGTYPE_TRAPZ
/* HSDAC Constants */
EXCITBUFGAIN_2, EXCITBUFGAIN_0P25
HSDACGAIN_1, HSDACGAIN_0P2
/* HSTIA Constants */
HSTIABIAS_1P1, VZERO0, VZERO1
HSTIARTIA_200, 1K, 5K, 10K, 20K, 40K, 80K, 160K, OPEN
HSTIADERTIA_50, 100, 200, 1K, 5K, 10K, 20K, 40K, 80K, 160K, TODE, OPEN
HSTIADERLOAD_0R, 10R, 30R, 50R, 100R, OPEN
HSTIAPWRMOE_LP, HP
/* LPDAC Constants */
LPDAC0, LPDAC1
LPDACSRC_MMR, WG
LPDACSW_VBIAS2LPPA, VBIAS2PIN, VZERO2LPTIA, VZERO2PIN, VZERO2HSTIA
LPDACVZERO_6BIT, 12BIT
LPDACVBIAS_6BIT, 12BIT
LPDACREF_2P5, AVDD
/* LPAMP/LPTIA Constants */
LPTIA0, LPTIA1
LPTIARF_OPEN, SHORT, 20K, 100K, 200K, 400K, 600K, 1M
LPTIARLOAD_SHORT, 10R, 30R, 50R, 100R, 1K6, 3K1, 3K6
LPTIARTIA_OPEN, 200R, 1K...512K
LPAMP0, LPAMP1
LPAMPPWR_NORM, BOOST1, BOOST2, BOOST3, HALF
LPTIASW(n)
/* ADC Constants */
ADCPGA_1, 1P5, 2, 4, 9
ADCMUXP_FLOAT, HSTIA_P, AIN0-6, AVDD_2, DVDD_2, AVDDREG, TEMPP/N, VSET1P1, VDE0, VSE0/1, VAFE1-4, VREF2P5, VREF1P8DAC, VZERO0/1, VBIAS0/1, VCE0/1, VRE0/1, VCE0_2, VCE1_2, LPTIA0_P, LPTIA1_P, AGND, P_NODE, IOVDD_2
ADCMUXN_FLOAT, HSTIA_N, LPTIA0_N, LPTIA1_N, AIN0-6, VSET1P1, VREF1P1, TEMPN, VZERO0/1, VBIAS0/1, AFE4, N_NODE
ADCRATE_800KHZ, 1P6MHZ
ADCSINC3OSR_2, 4, 5
ADCSINC2OSR_22, 44...1333
ADCAVGNUM_2, 4, 8, 16
/* DFT & Statistics Constants */
DFTSRC_SINC2NOTCH, SINC3, ADCRAW, AVG
DFTNUM_4, 8...16384
STATSAMPLE_128, 64, 32, 16, 8
STATDEV_1, 4, 9, 16, 25
/* Sequencer & FIFO Constants */
SEQID_0, 1, 2, 3
SEQMEMSIZE_32B, 2KB, 4KB, 6KB
SEQPINTRIGMODE_RISING, FALLING, BOTHEDGE, HIGHL, LOWL
SEQ_WAIT(ClkNum), SEQ_TOUT(ClkNum), SEQ_WR(addr,data)
SEQ_NOP(), SEQ_HALT(), SEQ_STOP(), SEQ_SLP(), SEQ_INTx(), SEQ_LEN(n)
FIFOMODE_FIFO, STREAM
FIFOSRC_SINC3, DFT, SINC2NOTCH, VAR, MEAN
FIFO_SEQID(data), ECC, CHANID
FIFOSIZE_32B, 2KB, 4KB, 6KB
WUPTENDSEQ_A - H
/* Misc Constants */
DATATYPE_ADCRAW, SINC3, SINC2, DFT, NOTCH
SLPKEY_LOCK, UNLOCK
HPOSCOUT_32MHZ, 16MHZ
AGPIO_Pin0 - Pin7
GPx_INT/TRIG/SYNC/GPIO/SLEEP/PORB/EXTCLK
LPMODECLK_HFOSC, LFOSC
SYSCLKSRC_HFOSC, XTAL, LFOSC, EXT
ADCCLKSRC_HFOSC, XTAL, EXT
ADCCLKDIV_1, 2
SYSCLKDIV_1, 2
PGACALTYPE_OFFSET, GAIN, OFFSETGAIN
AD5940ERR_OK, ERROR, PARA, NULLP, BUFF, ADDROR, SEQGEN, SEQREG, SEQLEN, WAKEUP, TIMEOUT, CALOR, APPERROR
MATH_PI, AD5940_ADIID, AD5940_CHIPID, M355_ADIID, M355_CHIPID, AD5940_SWRST
KEY_OSCCON, KEY_CALDATLOCK, KEY_LPMODEKEY