📄 csl_vichal.h
字号:
/******************************************************************************\* Copyright (C) 1999-2001 Texas Instruments Incorporated.* All Rights Reserved*------------------------------------------------------------------------------* FILENAME...... csl_vichal.h* DATE CREATED.. 02/06/2002 * LAST MODIFIED. 02/06/2002 Initial Draft*------------------------------------------------------------------------------* REGISTERS** VICCTL - VIC Control register* VICIN - VIC Input register * VICDIV - VIC Clock Dividor registrer*\******************************************************************************/#ifndef _CSL_VICHAL_H_#define _CSL_VICHAL_H_#include <csl_stdinc.h>#include <csl_chip.h>#if (VIC_SUPPORT)/******************************************************************************\* MISC section\******************************************************************************/
#define _VIC_BASE_ADDR 0x01C4C000u
/******************************************************************************\* module level register/field access macros\******************************************************************************/ /* ----------------- */ /* FIELD MAKE MACROS */ /* ----------------- */ #define VIC_FMK(REG,FIELD,x)\ _PER_FMK(VIC,##REG,##FIELD,x) #define VIC_FMKS(REG,FIELD,SYM)\ _PER_FMKS(VIC,##REG,##FIELD,##SYM) /* -------------------------------- */ /* RAW REGISTER/FIELD ACCESS MACROS */ /* -------------------------------- */ #define VIC_ADDR(REG)\ _VIC_##REG##_ADDR #define VIC_RGET(REG)\ _PER_RGET(_VIC_##REG##_ADDR,VIC,##REG) #define VIC_RSET(REG,x)\ _PER_RSET(_VIC_##REG##_ADDR,VIC,##REG,x) #define VIC_FGET(REG,FIELD)\ _VIC_##REG##_FGET(##FIELD) #define VIC_FSET(REG,FIELD,x)\ _VIC_##REG##_FSET(##FIELD,x) #define VIC_FSETS(REG,FIELD,SYM)\ _VIC_##REG##_FSETS(##FIELD,##SYM) /* ------------------------------------------ */ /* ADDRESS BASED REGISTER/FIELD ACCESS MACROS */ /* ------------------------------------------ */ #define VIC_RGETA(addr,REG)\ _PER_RGET(addr,VIC,##REG) #define VIC_RSETA(addr,REG,x)\ _PER_RSET(addr,VIC,##REG,x) #define VIC_FGETA(addr,REG,FIELD)\ _PER_FGET(addr,VIC,##REG,##FIELD) #define VIC_FSETA(addr,REG,FIELD,x)\ _PER_FSET(addr,VIC,##REG,##FIELD,x) #define VIC_FSETSA(addr,REG,FIELD,SYM)\ _PER_FSETS(addr,VIC,##REG,##FIELD,##SYM)/******************************************************************************\* _____________________* | |* | V I C C T L |* |___________________|** VCICTL - VIC control register** FIELDS (msb -> lsb)* (rw) PRECISION* (rw) GO*\******************************************************************************/ #define _VIC_VICCTL_OFFSET 0 #define _VIC_VICCTL_ADDR (_VIC_BASE_ADDR + 4*_VIC_VICCTL_OFFSET) #define _VIC_VICCTL_PRECISION_MASK 0x0000000Eu #define _VIC_VICCTL_PRECISION_SHIFT 0x00000001u #define VIC_VICCTL_PRECISION_DEFAULT 0x00000000u #define VIC_VICCTL_PRECISION_OF(x) _VALUEOF(x) #define VIC_VICCTL_PRECISION_16BITS 0x00000000u #define VIC_VICCTL_PRECISION_15BITS 0x00000001u #define VIC_VICCTL_PRECISION_14BITS 0x00000002u #define VIC_VICCTL_PRECISION_13BITS 0x00000003u #define VIC_VICCTL_PRECISION_12BITS 0x00000004u #define VIC_VICCTL_PRECISION_11BITS 0x00000005u #define VIC_VICCTL_PRECISION_10BITS 0x00000006u #define VIC_VICCTL_PRECISION_9BITS 0x00000007u #define _VIC_VICCTL_GO_MASK 0x00000001u #define _VIC_VICCTL_GO_SHIFT 0x00000000u #define VIC_VICCTL_GO_DEFAULT 0x00000000u #define VIC_VICCTL_GO_OF(x) _VALUEOF(x) #define VIC_VICCTL_GO_0 0x00000000u #define VIC_VICCTL_GO_1 0x00000001u #define VIC_VICCTL_OF(x) _VALUEOF(x) #define VIC_VICCTL_DEFAULT (Uint32)( \ _PER_FDEFAULT(VIC,VICCTL,PRECISION) \ |_PER_FDEFAULT(VIC,VICCTL,GO) \ ) #define VIC_VICCTL_RMK(precision,go) (Uint32)( \ _PER_FMK(VIC,VICCTL,PRECISION,precision) \ |_PER_FMK(VIC,VICCTL,GO,go) \ ) #define _VIC_VICCTL_FGET(FIELD)\ _PER_FGET(_VIC_VICCTL_ADDR,VIC,VICCTL,##FIELD) #define _VIC_VICCTL_FSET(FIELD,field)\ _PER_FSET(_VIC_VICCTL_ADDR,VIC,VICCTL,##FIELD,field) #define _VIC_VICCTL_FSETS(FIELD,SYM)\ _PER_FSETS(_VIC_VICCTL_ADDR,VIC,VICCTL,##FIELD,##SYM)/******************************************************************************\* _____________________* | |* | V I C I N |* |___________________|** VICIN - VIC Input Register** FIELDS (msb -> lsb)* (rw) VICINBITS*\******************************************************************************/ #define _VIC_VICIN_OFFSET 1 #define _VIC_VICIN_ADDR (_VIC_BASE_ADDR + 4*_VIC_VICIN_OFFSET) #define _VIC_VICIN_VICINBITS_MASK 0x0000FFFFu #define _VIC_VICIN_VICINBITS_SHIFT 0x00000000u #define VIC_VICIN_VICINBITS_DEFAULT 0x00000000u #define VIC_VICIN_VICINBITS_OF(x) _VALUEOF(x) #define VIC_VICIN_DEFAULT (Uint32)( \ _PER_FDEFAULT(VIC,VICIN,VICINBITS) \ ) #define VIC_VICIN_RMK(vicinbits) (Uint32)( \ _PER_FMK(VIC,VICIN,VICINBITS,vicinbits) \ ) #define _VIC_VICIN_FGET(FIELD)\ _PER_FGET(_VIC_VICIN_ADDR,VIC,VICIN,##FIELD) #define _VIC_VICIN_FSET(FIELD,field)\ _PER_FSET(_VIC_VICIN_ADDR,VIC,VICIN,##FIELD,field) #define _VIC_VICIN_FSETS(FIELD,SYM)\ _PER_FSETS(_VIC_VICIN_ADDR,VIC,VICIN,##FIELD,##SYM)/******************************************************************************\* _____________________* | |* | V I C D I V |* |___________________|** VICIN - VIC Clock Divider Register** FIELDS (msb -> lsb)* (rw) VICCLKDIV*\******************************************************************************/ #define _VIC_VICDIV_OFFSET 2 #define _VIC_VICDIV_ADDR (_VIC_BASE_ADDR + 4*_VIC_VICDIV_OFFSET) #define _VIC_VICDIV_VICCLKDIV_MASK 0x0000FFFFu #define _VIC_VICDIV_VICCLKDIV_SHIFT 0x00000000u #define VIC_VICDIV_VICCLKDIV_DEFAULT 0x00000001u #define VIC_VICDIV_VICCLKDIV_OF(x) _VALUEOF(x) #define VIC_VICDIV_DEFAULT (Uint32)( \ _PER_FDEFAULT(VIC,VICDIV,VICCLKDIV) \ ) #define VIC_VICDIV_RMK(vicclkdiv) (Uint32)( \ _PER_FMK(VIC,VICDIV,VICCLKDIV,vicclkdiv) \ ) #define _VIC_VICDIV_FGET(FIELD)\ _PER_FGET(_VIC_VICDIV_ADDR,VIC,VICDIV,##FIELD) #define _VIC_VICDIV_FSET(FIELD,field)\ _PER_FSET(_VIC_VICDIV_ADDR,VIC,VICDIV,##FIELD,field) #define _VIC_VICDIV_FSETS(FIELD,SYM)\ _PER_FSETS(_VIC_VICDIV_ADDR,VIC,VICDIV,##FIELD,##SYM)/*----------------------------------------------------------------------------*/#endif /* VIC_SUPPORT */#endif /* _CSL_VICHAL_H_ *//******************************************************************************\* End of csl_vichal.h\******************************************************************************/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -