cslr.h

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

H
59
字号
/*****************************************************\ *  Copyright 2003, Texas Instruments Incorporated.  * *  All rights reserved.                             * *  Restricted rights to use, duplicate or disclose  * *  this   code   are  granted   through  contract.  * *                                                   * * "@(#) PSP/CSL  3.0.0.0  (2003-09-30)              *\*****************************************************//* Register layer central -- contains field-manipulation macro definitions */#ifndef _CSLR_H_#define _CSLR_H_/* the "expression" macros *//* the Field MaKe macro */#define CSL_FMK(PER_REG_FIELD, val)                                         \    (((val) << CSL_##PER_REG_FIELD##_SHIFT) & CSL_##PER_REG_FIELD##_MASK)/* the Field EXTract macro */#define CSL_FEXT(reg, PER_REG_FIELD)                                        \    (((reg) & CSL_##PER_REG_FIELD##_MASK) >> CSL_##PER_REG_FIELD##_SHIFT)/* the Field INSert macro */#define CSL_FINS(reg, PER_REG_FIELD, val)                                   \    ((reg) = ((reg) & ~CSL_##PER_REG_FIELD##_MASK)                          \    | CSL_FMK(PER_REG_FIELD, val))/* the "token" macros *//* the Field MaKe (Token) macro */#define CSL_FMKT(PER_REG_FIELD, TOKEN)                                      \    CSL_FMK(PER_REG_FIELD, CSL_##PER_REG_FIELD##_##TOKEN)/* the Field INSert (Token) macro */#define CSL_FINST(reg, PER_REG_FIELD, TOKEN)                                \    CSL_FINS((reg), PER_REG_FIELD, CSL_##PER_REG_FIELD##_##TOKEN)/* the "raw" macros *//* the Field MaKe (Raw) macro */#define CSL_FMKR(msb, lsb, val)                                             \    (((val) & ((1 << ((msb) - (lsb) + 1)) - 1)) << (lsb))/* the Field EXTract (Raw) macro */#define CSL_FEXTR(reg, msb, lsb)                                            \    (((reg) >> (lsb)) & ((1 << ((msb) - (lsb) + 1)) - 1))/* the Field INSert (Raw) macro */#define CSL_FINSR(reg, msb, lsb, val)                                       \    ((reg) = ((reg) &~ (((1 << ((msb) - (lsb) + 1)) - 1) << (lsb)))         \    | CSL_FMKR(msb, lsb, val))#endif /* _CSLR_H_ */

⌨️ 快捷键说明

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