cslr_i2c.h

来自「dsp在音频处理中的运用」· C头文件 代码 · 共 294 行

H
294
字号
#ifndef _CSLR_I2C_001_H_#define _CSLR_I2C_001_H_#include <cslr.h>#include <tistdtypes.h>/**************************************************************************\* Register Overlay Structure\**************************************************************************/typedef struct  {    volatile Uint16 REV;    const char RSVD0[2];    volatile Uint16 IE;    const char RSVD1[2];    volatile Uint16 STAT;    const char RSVD2[6];    volatile Uint16 SYSS;    const char RSVD3[2];    volatile Uint16 BUF;    const char RSVD4[2];    volatile Uint16 CNT;    const char RSVD5[2];    volatile Uint16 DATA;    const char RSVD6[2];    volatile Uint16 SYSC;    const char RSVD7[2];    volatile Uint16 CON;    const char RSVD8[2];    volatile Uint16 OA;    const char RSVD9[2];    volatile Uint16 SA;    const char RSVD10[2];    volatile Uint16 PSC;    const char RSVD11[2];    volatile Uint16 SCLL;    const char RSVD12[2];    volatile Uint16 SCLH;    const char RSVD13[2];    volatile Uint16 SYSTEST;} CSL_I2cRegs;/**************************************************************************\* Overlay structure typedef definition\**************************************************************************/typedef volatile CSL_I2cRegs  *CSL_I2cRegsOvly;/**************************************************************************\* Field Definition Macros\**************************************************************************//* REV */#define CSL_I2C_REV_REV_MASK             (0x000000FFu)#define CSL_I2C_REV_REV_SHIFT            (0x00000000u)#define CSL_I2C_REV_REV_RESETVAL         (0x00000022u)#define CSL_I2C_REV_RESETVAL             (0x00000022u)/* IE */#define CSL_I2C_IE_GC_IE_MASK            (0x00000020u)#define CSL_I2C_IE_GC_IE_SHIFT           (0x00000005u)#define CSL_I2C_IE_GC_IE_RESETVAL        (0x00000000u)#define CSL_I2C_IE_XRDY_IE_MASK          (0x00000010u)#define CSL_I2C_IE_XRDY_IE_SHIFT         (0x00000004u)#define CSL_I2C_IE_XRDY_IE_RESETVAL      (0x00000000u)#define CSL_I2C_IE_RRDY_IE_MASK          (0x00000008u)#define CSL_I2C_IE_RRDY_IE_SHIFT         (0x00000003u)#define CSL_I2C_IE_RRDY_IE_RESETVAL      (0x00000000u)#define CSL_I2C_IE_ARDY_IE_MASK          (0x00000004u)#define CSL_I2C_IE_ARDY_IE_SHIFT         (0x00000002u)#define CSL_I2C_IE_ARDY_IE_RESETVAL      (0x00000000u)#define CSL_I2C_IE_NACK_IE_MASK          (0x00000002u)#define CSL_I2C_IE_NACK_IE_SHIFT         (0x00000001u)#define CSL_I2C_IE_NACK_IE_RESETVAL      (0x00000000u)#define CSL_I2C_IE_AL_IE_MASK            (0x00000001u)#define CSL_I2C_IE_AL_IE_SHIFT           (0x00000000u)#define CSL_I2C_IE_AL_IE_RESETVAL        (0x00000000u)#define CSL_I2C_IE_RESETVAL              (0x00000000u)/* STAT */#define CSL_I2C_STAT_SBD_MASK            (0x00008000u)#define CSL_I2C_STAT_SBD_SHIFT           (0x0000000Fu)#define CSL_I2C_STAT_SBD_RESETVAL        (0x00000000u)#define CSL_I2C_STAT_BB_MASK             (0x00001000u)#define CSL_I2C_STAT_BB_SHIFT            (0x0000000Cu)#define CSL_I2C_STAT_BB_RESETVAL         (0x00000000u)#define CSL_I2C_STAT_ROVR_MASK           (0x00000800u)#define CSL_I2C_STAT_ROVR_SHIFT          (0x0000000Bu)#define CSL_I2C_STAT_ROVR_RESETVAL       (0x00000000u)#define CSL_I2C_STAT_XUDF_MASK           (0x00000400u)#define CSL_I2C_STAT_XUDF_SHIFT          (0x0000000Au)#define CSL_I2C_STAT_XUDF_RESETVAL       (0x00000000u)#define CSL_I2C_STAT_AAS_MASK            (0x00000200u)#define CSL_I2C_STAT_AAS_SHIFT           (0x00000009u)#define CSL_I2C_STAT_AAS_RESETVAL        (0x00000000u)#define CSL_I2C_STAT_GC_MASK             (0x00000020u)#define CSL_I2C_STAT_GC_SHIFT            (0x00000005u)#define CSL_I2C_STAT_GC_RESETVAL         (0x00000000u)#define CSL_I2C_STAT_XRDY_MASK           (0x00000010u)#define CSL_I2C_STAT_XRDY_SHIFT          (0x00000004u)#define CSL_I2C_STAT_XRDY_RESETVAL       (0x00000000u)#define CSL_I2C_STAT_RRDY_MASK           (0x00000008u)#define CSL_I2C_STAT_RRDY_SHIFT          (0x00000003u)#define CSL_I2C_STAT_RRDY_RESETVAL       (0x00000000u)#define CSL_I2C_STAT_ARDY_MASK           (0x00000004u)#define CSL_I2C_STAT_ARDY_SHIFT          (0x00000002u)#define CSL_I2C_STAT_ARDY_RESETVAL       (0x00000000u)#define CSL_I2C_STAT_NACK_MASK           (0x00000002u)#define CSL_I2C_STAT_NACK_SHIFT          (0x00000001u)#define CSL_I2C_STAT_NACK_RESETVAL       (0x00000000u)#define CSL_I2C_STAT_AL_MASK             (0x00000001u)#define CSL_I2C_STAT_AL_SHIFT            (0x00000000u)#define CSL_I2C_STAT_AL_RESETVAL         (0x00000000u)#define CSL_I2C_STAT_RESETVAL            (0x00000000u)/* SYSS */#define CSL_I2C_SYSS_RDONE_MASK          (0x00000001u)#define CSL_I2C_SYSS_RDONE_SHIFT         (0x00000000u)#define CSL_I2C_SYSS_RDONE_RESETVAL      (0x00000000u)#define CSL_I2C_SYSS_RESETVAL            (0x00000000u)/* BUF */#define CSL_I2C_BUF_RDMA_EN_MASK         (0x00008000u)#define CSL_I2C_BUF_RDMA_EN_SHIFT        (0x0000000Fu)#define CSL_I2C_BUF_RDMA_EN_RESETVAL     (0x00000000u)#define CSL_I2C_BUF_XDMA_EN_MASK         (0x00000080u)#define CSL_I2C_BUF_XDMA_EN_SHIFT        (0x00000007u)#define CSL_I2C_BUF_XDMA_EN_RESETVAL     (0x00000000u)#define CSL_I2C_BUF_RESETVAL             (0x00000000u)/* CNT */#define CSL_I2C_CNT_DCOUNT_MASK          (0x0000FFFFu)#define CSL_I2C_CNT_DCOUNT_SHIFT         (0x00000000u)#define CSL_I2C_CNT_DCOUNT_RESETVAL      (0x00000000u)#define CSL_I2C_CNT_RESETVAL             (0x00000000u)/* DATA */#define CSL_I2C_DATA_DATA_MASK           (0x0000FFFFu)#define CSL_I2C_DATA_DATA_SHIFT          (0x00000000u)#define CSL_I2C_DATA_DATA_RESETVAL       (0x00000000u)#define CSL_I2C_DATA_RESETVAL            (0x00000000u)/* SYSC */#define CSL_I2C_SYSC_SRST_MASK           (0x00000002u)#define CSL_I2C_SYSC_SRST_SHIFT          (0x00000001u)#define CSL_I2C_SYSC_SRST_RESETVAL       (0x00000000u)#define CSL_I2C_SYSC_RESETVAL            (0x00000000u)/* CON */#define CSL_I2C_CON_I2C_EN_MASK          (0x00008000u)#define CSL_I2C_CON_I2C_EN_SHIFT         (0x0000000Fu)#define CSL_I2C_CON_I2C_EN_RESETVAL      (0x00000000u)#define CSL_I2C_CON_BE_MASK              (0x00004000u)#define CSL_I2C_CON_BE_SHIFT             (0x0000000Eu)#define CSL_I2C_CON_BE_RESETVAL          (0x00000000u)#define CSL_I2C_CON_STB_MASK             (0x00000800u)#define CSL_I2C_CON_STB_SHIFT            (0x0000000Bu)#define CSL_I2C_CON_STB_RESETVAL         (0x00000000u)#define CSL_I2C_CON_MST_MASK             (0x00000400u)#define CSL_I2C_CON_MST_SHIFT            (0x0000000Au)#define CSL_I2C_CON_MST_RESETVAL         (0x00000000u)#define CSL_I2C_CON_TRX_MASK             (0x00000200u)#define CSL_I2C_CON_TRX_SHIFT            (0x00000009u)#define CSL_I2C_CON_TRX_RESETVAL         (0x00000000u)#define CSL_I2C_CON_XA_MASK              (0x00000100u)#define CSL_I2C_CON_XA_SHIFT             (0x00000008u)#define CSL_I2C_CON_XA_RESETVAL          (0x00000000u)#define CSL_I2C_CON_STP_MASK             (0x00000002u)#define CSL_I2C_CON_STP_SHIFT            (0x00000001u)#define CSL_I2C_CON_STP_RESETVAL         (0x00000000u)#define CSL_I2C_CON_STT_MASK             (0x00000001u)#define CSL_I2C_CON_STT_SHIFT            (0x00000000u)#define CSL_I2C_CON_STT_RESETVAL         (0x00000000u)#define CSL_I2C_CON_RESETVAL             (0x00000000u)/* OA */#define CSL_I2C_OA_OA_MASK               (0x000003FFu)#define CSL_I2C_OA_OA_SHIFT              (0x00000000u)#define CSL_I2C_OA_OA_RESETVAL           (0x00000000u)#define CSL_I2C_OA_RESETVAL              (0x00000000u)/* SA */#define CSL_I2C_SA_SA_MASK               (0x000003FFu)#define CSL_I2C_SA_SA_SHIFT              (0x00000000u)#define CSL_I2C_SA_SA_RESETVAL           (0x000003FFu)#define CSL_I2C_SA_RESETVAL              (0x000003FFu)/* PSC */#define CSL_I2C_PSC_PSC_MASK             (0x000000FFu)#define CSL_I2C_PSC_PSC_SHIFT            (0x00000000u)#define CSL_I2C_PSC_PSC_RESETVAL         (0x00000000u)#define CSL_I2C_PSC_RESETVAL             (0x00000000u)/* SCLL */#define CSL_I2C_SCLL_SCLL_MASK           (0x000000FFu)#define CSL_I2C_SCLL_SCLL_SHIFT          (0x00000000u)#define CSL_I2C_SCLL_SCLL_RESETVAL       (0x00000000u)#define CSL_I2C_SCLL_RESETVAL            (0x00000000u)/* SCLH */#define CSL_I2C_SCLH_SCLH_MASK           (0x000000FFu)#define CSL_I2C_SCLH_SCLH_SHIFT          (0x00000000u)#define CSL_I2C_SCLH_SCLH_RESETVAL       (0x00000000u)#define CSL_I2C_SCLH_RESETVAL            (0x00000000u)/* SYSTEST */#define CSL_I2C_SYSTEST_ST_EN_MASK       (0x00008000u)#define CSL_I2C_SYSTEST_ST_EN_SHIFT      (0x0000000Fu)#define CSL_I2C_SYSTEST_ST_EN_RESETVAL   (0x00000000u)#define CSL_I2C_SYSTEST_FREE_MASK        (0x00004000u)#define CSL_I2C_SYSTEST_FREE_SHIFT       (0x0000000Eu)#define CSL_I2C_SYSTEST_FREE_RESETVAL    (0x00000000u)#define CSL_I2C_SYSTEST_TMODE_MASK       (0x00003000u)#define CSL_I2C_SYSTEST_TMODE_SHIFT      (0x0000000Cu)#define CSL_I2C_SYSTEST_TMODE_RESETVAL   (0x00000000u)#define CSL_I2C_SYSTEST_SSB_MASK         (0x00000800u)#define CSL_I2C_SYSTEST_SSB_SHIFT        (0x0000000Bu)#define CSL_I2C_SYSTEST_SSB_RESETVAL     (0x00000000u)#define CSL_I2C_SYSTEST_SCL_I_MASK       (0x00000008u)#define CSL_I2C_SYSTEST_SCL_I_SHIFT      (0x00000003u)#define CSL_I2C_SYSTEST_SCL_I_RESETVAL   (0x00000000u)#define CSL_I2C_SYSTEST_SCL_O_MASK       (0x00000004u)#define CSL_I2C_SYSTEST_SCL_O_SHIFT      (0x00000002u)#define CSL_I2C_SYSTEST_SCL_O_RESETVAL   (0x00000000u)#define CSL_I2C_SYSTEST_SDA_I_MASK       (0x00000002u)#define CSL_I2C_SYSTEST_SDA_I_SHIFT      (0x00000001u)#define CSL_I2C_SYSTEST_SDA_I_RESETVAL   (0x00000000u)#define CSL_I2C_SYSTEST_SDA_O_MASK       (0x00000001u)#define CSL_I2C_SYSTEST_SDA_O_SHIFT      (0x00000000u)#define CSL_I2C_SYSTEST_SDA_O_RESETVAL   (0x00000000u)#define CSL_I2C_SYSTEST_RESETVAL        (0x00000000u)#endif

⌨️ 快捷键说明

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