📄 csl_i2chal.h
字号:
|_PER_FDEFAULT(I2C,I2CMDR,FDF)\ |_PER_FDEFAULT(I2C,I2CMDR,BC)\ ) #define I2C_I2CMDR_RMK(nackmod,free,stt,stp,mst,trx,xa,rm,dlb,irs,stb,fdf,bc) (Uint32)(\ _PER_FMK(I2C,I2CMDR,NACKMOD,nackmod)\ |_PER_FMK(I2C,I2CMDR,FREE,free)\ |_PER_FMK(I2C,I2CMDR,STT,stt)\ |_PER_FMK(I2C,I2CMDR,STP,stp)\ |_PER_FMK(I2C,I2CMDR,MST,mst)\ |_PER_FMK(I2C,I2CMDR,TRX,trx)\ |_PER_FMK(I2C,I2CMDR,XA,xa)\ |_PER_FMK(I2C,I2CMDR,RM,rm)\ |_PER_FMK(I2C,I2CMDR,DLB,dlb)\ |_PER_FMK(I2C,I2CMDR,IRS,irs)\ |_PER_FMK(I2C,I2CMDR,STB,stb)\ |_PER_FMK(I2C,I2CMDR,FDF,fdf)\ |_PER_FMK(I2C,I2CMDR,BC,bc)\ ) #define _I2C_I2CMDR_FGET(N,FIELD)\ _PER_FGET(_I2C_I2CMDR##N##_ADDR,I2C,I2CMDR,##FIELD) #define _I2C_I2CMDR_FSET(N,FIELD,field)\ _PER_FSET(_I2C_I2CMDR##N##_ADDR,I2C,I2CMDR,##FIELD,field) #define _I2C_I2CMDR_FSETS(N,FIELD,SYM)\ _PER_FSETS(_I2C_I2CMDR##N##_ADDR,I2C,I2CMDR,##FIELD,##SYM) #define _I2C_I2CMDR0_FGET(FIELD) _I2C_I2CMDR_FGET(0,##FIELD) #define _I2C_I2CMDR1_FGET(FIELD) _I2C_I2CMDR_FGET(1,##FIELD) #define _I2C_I2CMDR0_FSET(FIELD,f) _I2C_I2CMDR_FSET(0,##FIELD,f) #define _I2C_I2CMDR1_FSET(FIELD,f) _I2C_I2CMDR_FSET(1,##FIELD,f) #define _I2C_I2CMDR0_FSETS(FIELD,SYM) _I2C_I2CMDR_FSETS(0,##FIELD,##SYM) #define _I2C_I2CMDR1_FSETS(FIELD,SYM) _I2C_I2CMDR_FSETS(1,##FIELD,##SYM)/******************************************************************************\* (Keeping the old definitions for backward compatibility)* ___________________* | |* | I 2 C I V R |* |___________________|** I2CIVR0 - I2C0 Interrupt Vector register* I2CIVR1 - I2C1 Interrupt Vector register** FIELDS (msb -> lsb)* (r) INTCODE\******************************************************************************/#if (!(CHIP_6410 | CHIP_6413 | CHIP_6418)) #define _I2C_I2CIVR_OFFSET 10 #define _I2C_I2CIVR0_ADDR 0x01B40028 #define _I2C_I2CIVR1_ADDR 0x01B44028 /*** old names ***/ #define _I2C_I2CISR0_ADDR _I2C_I2CIVR0_ADDR #define _I2C_I2CISR1_ADDR _I2C_I2CIVR1_ADDR #define _I2C_I2CIVR_INTCODE_MASK 0x00000007u #define _I2C_I2CIVR_INTCODE_SHIFT 0x00000000u #define I2C_I2CIVR_INTCODE_DEFAULT 0x00000000u #define I2C_I2CIVR_INTCODE_OF(x) _VALUEOF(x) #define I2C_I2CIVR_INTCODE_NONE 0x00000000u #define I2C_I2CIVR_INTCODE_AL 0x00000001u #define I2C_I2CIVR_INTCODE_NACK 0x00000002u #define I2C_I2CIVR_INTCODE_RAR 0x00000003u #define I2C_I2CIVR_INTCODE_RDR 0x00000004u #define I2C_I2CIVR_INTCODE_XDR 0x00000005u #define I2C_I2CIVR_OF(x) _VALUEOF(x) #define I2C_I2CIVR_DEFAULT (Uint32)(\ _PER_FDEFAULT(I2C,I2CIVR,INTCODE)\ ) #define I2C_I2CIVR_RMK(intcode) (Uint32)(\ _PER_FMK(I2C,I2CIVR,INTCODE,intcode)\ ) #define _I2C_I2CIVR_FGET(N,FIELD)\ _PER_FGET(_I2C_I2CIVR##N##_ADDR,I2C,I2CIVR,##FIELD) #define _I2C_I2CIVR_FSET(N,FIELD,field)\ _PER_FSET(_I2C_I2CIVR##N##_ADDR,I2C,I2CIVR,##FIELD,field) #define _I2C_I2CIVR_FSETS(N,FIELD,SYM)\ _PER_FSETS(_I2C_I2CIVR##N##_ADDR,I2C,I2CIVR,##FIELD,##SYM) #define _I2C_I2CIVR0_FGET(FIELD) _I2C_I2CIVR_FGET(0,##FIELD) #define _I2C_I2CIVR1_FGET(FIELD) _I2C_I2CIVR_FGET(1,##FIELD) #define _I2C_I2CIVR0_FSET(FIELD,f) _I2C_I2CIVR_FSET(0,##FIELD,f) #define _I2C_I2CIVR1_FSET(FIELD,f) _I2C_I2CIVR_FSET(1,##FIELD,f) #define _I2C_I2CIVR0_FSETS(FIELD,SYM) _I2C_I2CIVR_FSETS(0,##FIELD,##SYM) #define _I2C_I2CIVR1_FSETS(FIELD,SYM) _I2C_I2CIVR_FSETS(1,##FIELD,##SYM)#endif/******************************************************************************\* ___________________* | |* | I 2 C I S R C |* |___________________|** I2CISRC0 - I2C0 Interrupt Vector register* I2CISRC1 - I2C1 Interrupt Vector register** FIELDS (msb -> lsb)* (r) INTCODE\******************************************************************************/ #define _I2C_I2CISRC_OFFSET 10 #define _I2C_I2CISRC0_ADDR 0x01B40028 #define _I2C_I2CISRC1_ADDR 0x01B44028 #define _I2C_I2CISRC_INTCODE_MASK 0x00000007u #define _I2C_I2CISRC_INTCODE_SHIFT 0x00000000u #define I2C_I2CISRC_INTCODE_DEFAULT 0x00000000u #define I2C_I2CISRC_INTCODE_OF(x) _VALUEOF(x) #define I2C_I2CISRC_INTCODE_NONE 0x00000000u #define I2C_I2CISRC_INTCODE_AL 0x00000001u #define I2C_I2CISRC_INTCODE_NACK 0x00000002u #define I2C_I2CISRC_INTCODE_RAR 0x00000003u #define I2C_I2CISRC_INTCODE_RDR 0x00000004u #define I2C_I2CISRC_INTCODE_XDR 0x00000005u#if (CHIP_6413 | CHIP_6418 | CHIP_6410) #define I2C_I2CISRC_INTCODE_SCD 0x00000006u #define I2C_I2CISRC_INTCODE_AAS 0x00000007u#endif #define I2C_I2CISRC_OF(x) _VALUEOF(x) #define I2C_I2CISRC_DEFAULT (Uint32)(\ _PER_FDEFAULT(I2C,I2CISRC,INTCODE)\ ) #define I2C_I2CISRC_RMK(intcode) (Uint32)(\ _PER_FMK(I2C,I2CISRC,INTCODE,intcode)\ ) #define _I2C_I2CISRC_FGET(N,FIELD)\ _PER_FGET(_I2C_I2CISRC##N##_ADDR,I2C,I2CISRC,##FIELD) #define _I2C_I2CISRC_FSET(N,FIELD,field)\ _PER_FSET(_I2C_I2CISRC##N##_ADDR,I2C,I2CISRC,##FIELD,field) #define _I2C_I2CISRC_FSETS(N,FIELD,SYM)\ _PER_FSETS(_I2C_I2CISRC##N##_ADDR,I2C,I2CISRC,##FIELD,##SYM) #define _I2C_I2CISRC0_FGET(FIELD) _I2C_I2CISRC_FGET(0,##FIELD) #define _I2C_I2CISRC1_FGET(FIELD) _I2C_I2CISRC_FGET(1,##FIELD) #define _I2C_I2CISRC0_FSET(FIELD,f) _I2C_I2CISRC_FSET(0,##FIELD,f) #define _I2C_I2CISRC1_FSET(FIELD,f) _I2C_I2CISRC_FSET(1,##FIELD,f) #define _I2C_I2CISRC0_FSETS(FIELD,SYM) _I2C_I2CISRC_FSETS(0,##FIELD,##SYM) #define _I2C_I2CISRC1_FSETS(FIELD,SYM) _I2C_I2CISRC_FSETS(1,##FIELD,##SYM)/******************************************************************************\* ___________________* | |* | I 2 C E M D R |* |___________________|** I2CEMDR0 - I2C0 Extended Mode register(1)* I2CEMDR1 - I2C1 Extended Mode register(1)** FIELDS (msb -> lsb)* (rw) XRDYM** (1) For C6418/C6413/C6410 only\******************************************************************************/#if (CHIP_6413 | CHIP_6418 | CHIP_6410) #define _I2C_I2CEMDR_OFFSET 11 #define _I2C_I2CEMDR0_ADDR 0x01B4002C #define _I2C_I2CEMDR1_ADDR 0x01B4402C #define _I2C_I2CEMDR_XRDYM_MASK 0x00000001u #define _I2C_I2CEMDR_XRDYM_SHIFT 0x00000000u #define I2C_I2CEMDR_XRDYM_DEFAULT 0x00000001u #define I2C_I2CEMDR_XRDYM_OF(x) _VALUEOF(x) #define I2C_I2CEMDR_XRDYM_MSTACK 0x00000000u #define I2C_I2CEMDR_XRDYM_DXRCPY 0x00000001u #define I2C_I2CEMDR_OF(x) _VALUEOF(x) #define I2C_I2CEMDR_DEFAULT (Uint32)(\ _PER_FDEFAULT(I2C,I2CEMDR,XRDYM)\ ) #define I2C_I2CEMDR_RMK(xrdym) (Uint32)(\ _PER_FMK(I2C,I2CEMDR,XRDYM,xrdym)\ ) #define _I2C_I2CEMDR_FGET(N,FIELD)\ _PER_FGET(_I2C_I2CEMDR##N##_ADDR,I2C,I2CEMDR,##FIELD) #define _I2C_I2CEMDR_FSET(N,FIELD,field)\ _PER_FSET(_I2C_I2CEMDR##N##_ADDR,I2C,I2CEMDR,##FIELD,field) #define _I2C_I2CEMDR_FSETS(N,FIELD,SYM)\ _PER_FSETS(_I2C_I2CEMDR##N##_ADDR,I2C,I2CEMDR,##FIELD,##SYM) #define _I2C_I2CEMDR0_FGET(FIELD) _I2C_I2CEMDR_FGET(0,##FIELD) #define _I2C_I2CEMDR1_FGET(FIELD) _I2C_I2CEMDR_FGET(1,##FIELD) #define _I2C_I2CEMDR0_FSET(FIELD,f) _I2C_I2CEMDR_FSET(0,##FIELD,f) #define _I2C_I2CEMDR1_FSET(FIELD,f) _I2C_I2CEMDR_FSET(1,##FIELD,f) #define _I2C_I2CEMDR0_FSETS(FIELD,SYM) _I2C_I2CEMDR_FSETS(0,##FIELD,##SYM) #define _I2C_I2CEMDR1_FSETS(FIELD,SYM) _I2C_I2CEMDR_FSETS(1,##FIELD,##SYM)#endif/******************************************************************************\* ___________________* | |* | I 2 C P S C |* |___________________|** I2CPSC0 - I2C0 Prescaler register* I2CPSC1 - I2C1 Prescaler register** FIELDS (msb -> lsb)* (rw) IPSC\******************************************************************************/ #define _I2C_I2CPSC_OFFSET 12 #define _I2C_I2CPSC0_ADDR 0x01B40030 #define _I2C_I2CPSC1_ADDR 0x01B44030 #define _I2C_I2CPSC_IPSC_MASK 0x000000FFu #define _I2C_I2CPSC_IPSC_SHIFT 0x00000000u #define I2C_I2CPSC_IPSC_DEFAULT 0x00000000u #define I2C_I2CPSC_IPSC_OF(x) _VALUEOF(x) #define I2C_I2CPSC_OF(x) _VALUEOF(x) #define I2C_I2CPSC_DEFAULT (Uint32)(\ _PER_FDEFAULT(I2C,I2CPSC,IPSC)\ ) #define I2C_I2CPSC_RMK(ipsc) (Uint32)(\ _PER_FMK(I2C,I2CPSC,IPSC,ipsc)\ ) #define _I2C_I2CPSC_FGET(N,FIELD)\ _PER_FGET(_I2C_I2CPSC##N##_ADDR,I2C,I2CPSC,##FIELD) #define _I2C_I2CPSC_FSET(N,FIELD,field)\ _PER_FSET(_I2C_I2CPSC##N##_ADDR,I2C,I2CPSC,##FIELD,field) #define _I2C_I2CPSC_FSETS(N,FIELD,SYM)\ _PER_FSETS(_I2C_I2CPSC##N##_ADDR,I2C,I2CPSC,##FIELD,##SYM) #define _I2C_I2CPSC0_FGET(FIELD) _I2C_I2CPSC_FGET(0,##FIELD) #define _I2C_I2CPSC1_FGET(FIELD) _I2C_I2CPSC_FGET(1,##FIELD) #define _I2C_I2CPSC0_FSET(FIELD,f) _I2C_I2CPSC_FSET(0,##FIELD,f) #define _I2C_I2CPSC1_FSET(FIELD,f) _I2C_I2CPSC_FSET(1,##FIELD,f) #define _I2C_I2CPSC0_FSETS(FIELD,SYM) _I2C_I2CPSC_FSETS(0,##FIELD,##SYM) #define _I2C_I2CPSC1_FSETS(FIELD,SYM) _I2C_I2CPSC_FSETS(1,##FIELD,##SYM)/******************************************************************************\* ___________________* | |* | I 2 C P I D 1 |* |___________________|** I2CPID10 - I2C0 Peripheral ID Register 1(1)* I2CPID11 - I2C1 Peripheral ID Register 1(1)** FIELDS (msb -> lsb)* (r) CLASS* (r) REVISION** (1) For C6418/C6413/C6410 only\******************************************************************************/#if (CHIP_6413 | CHIP_6418 | CHIP_6410) #define _I2C_I2CPID1_OFFSET 13 #define _I2C_I2CPID10_ADDR 0x01B40034 #define _I2C_I2CPID11_ADDR 0x01B44034 #define _I2C_I2CPID1_CLASS_MASK 0x0000FF00u #define _I2C_I2CPID1_CLASS_SHIFT 0x00000008u #define I2C_I2CPID1_CLASS_DEFAULT 0x00000001u #define I2C_I2CPID1_CLASS_OF(x) _VALUEOF(x) #define _I2C_I2CPID1_REVISION_MASK 0x000000FFu #define _I2C_I2CPID1_REVISION_SHIFT 0x00000000u #define I2C_I2CPID1_REVISION_DEFAULT 0x00000025u #define I2C_I2CPID1_REVISION_OF(x) _VALUEOF(x) #define I2C_I2CPID1_OF(x) _VALUEOF(x) #define I2C_I2CPID1_DEFAULT (Uint32)(\ _PER_FDEFAULT(I2C,I2CPID1,CLASS)\ |_PER_FDEFAULT(I2C,I2CPID1,REVISION)\ ) #define _I2C_I2CPID1_FGET(N,FIELD)\ _PER_FGET(_I2C_I2CPID1##N##_ADDR,I2C,I2CPID1,##FIELD) #define _I2C_I2CPID10_FGET(FIELD) _I2C_I2CPID1_FGET(0,##FIELD) #define _I2C_I2CPID11_FGET(FIELD) _I2C_I2CPID1_FGET(1,##FIELD)#endif /* CHIP_6413 | CHIP_6418 | CHIP_6410 *//******************************************************************************\* ___________________* | |* | I 2 C P I D 2 |* |___________________|** I2CPID20 - I2C0 Peripheral ID Register 2(1)* I2CPID21 - I2C1 Peripheral ID Register 2(1)** FIELDS (msb -> lsb)* (r) TYPE** (1) For C6418/C6413/C6410 only\******************************************************************************/#if (CHIP_6413 | CHIP_6418 | CHIP_6410) #define _I2C_I2CPID2_OFFSET 14 #define _I2C_I2CPID20_ADDR 0x01B40038 #define _I2C_I2CPID21_ADDR 0x01B44038 #define _I2C_I2CPID2_TYPE_MASK 0x000000FFu #define _I2C_I2CPID2_TYPE_SHIFT 0x00000000u #define I2C_I2CPID2_TYPE_DEFAULT 0x00000005u #define I2C_I2CPID2_TYPE_OF(x) _VALUEOF(x) #define I2C_I2CPID2_OF(x) _VALUEOF(x) #define I2C_I2CPID2_DEFAULT (Uint32)(\ _PER_FDEFAULT(I2C,I2CPID2,TYPE)\ ) #define _I2C_I2CPID2_FGET(N,FIELD)\ _PER_FGET(_I2C_I2CPID2##N##_ADDR,I2C,I2CPID2,##FIELD) #define _I2C_I2CPID20_FGET(FIELD) _I2C_I2CPID2_FGET(0,##FIELD) #define _I2C_I2CPID21_FGET(FIELD) _I2C_I2CPID2_FGET(1,##FIELD)#endif /* CHIP_6413 | CHIP_6418 | CHIP_6410) *//******************************************************************************\* _____________________* | |* | I 2 C P F U N C |* |___________________|** I2CPFUNC0 - I2C 0 Pin Function Register(1)* I2CPFUNC1 - I2C 1 Pin Function Register(1)** FIELDS (msb -> lsb)* (rw) GPMODE ** (1) For C6418/C6413/C6410 only\******************************************************************************/#if (CHIP_6413 | CHIP_6418 | CHIP_6410) #define _I2C_I2CPFUNC_OFFSET 18
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -