macros.h
来自「ADI公司SHARC与BlackFin通过SPI协议相互通信的源代码」· C头文件 代码 · 共 46 行
H
46 行
#define CORE_MMR_BASE 0xFFE00000
#define SYS_MMR_BASE 0xFFC00000
#define UPPER_( x ) (((x) >> 16) & 0x0000FFFF)
#define LOWER_( x ) ((x) & 0x0000FFFF)
/* Load Immediate 32-bit value into data or address register */
#define IMM32(reg,val) reg##.H=hi(val); reg##.L=lo(val)
/* Long call */
#define call(x)\
[--SP] = P5;\
IMM32(P5,x);\
call (P5);\
P5 = [SP++]
/* Stack PUSH/POP operations*/
#define PUSH_LOOP_REGx(x)\
[--SP] = LC ## x;\
[--SP] = LT ## x;\
[--SP] = LB ## x
#define POP_LOOP_REGx(x)\
LC ## x = [SP++];\
LT ## x = [SP++];\
LB ## x = [SP++]
#define PUSH_DAG_REGx(x)\
[--SP] = I ## x;\
[--SP] = B ## x;\
[--SP] = M ## x;\
[--SP] = L ## x
#define POP_DAG_REGx(x)\
L ## x = [SP++];\
M ## x = [SP++];\
B ## x = [SP++];\
I ## x = [SP++]
/*****************************************************************************
EOF
******************************************************************************/
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?