工具与软件:
大家好!
我 有关于 ti am625 pruss 内联汇编的问题。 我使用 CCS (Code Composer Studio)
Volatile Uint32_t PIN_CLK_TX_HIGH =(1 << 0);//0x00000001;//gpo0
Volatile Uint32_t PIN_CLK_TX_LOW =~(1 << 0);//0x00000001;//gpo0
如您所见、我想在内联汇编中使用这些变量、但给出了如下警告:
说明 资源 路径 位置 类型
#17003-D 从函数"SWD"到符号"PIN_CLK_TX_LOW"的重定位溢出;13位重定位地址0x1418太大、无法在8位字段中编码(类型="R_PRU_FORS_U8_C32_So16s8_PCM0XFFFFFFFF"(17)、文件="./main.c.obj "、偏移="0x00000080/C+"、偏移= 测试 问题"部分
我还尝试了#define 而不是易失性 uint32_t、但它会产生错误。 我可以使用什么代替这些? 我也在内嵌汇编代码中使用了.equ 和.set、在汇编语言用户指南中看到过、但都没有用。
就像这样
_asm (
"定义: \n\t"
"PIN_CLK_TX_HIGH .SET R1 \n\n\t"
"LDI PIN_CLK_TX_HIGH、0x1 \n\t"
);
可能是因为它仅用于汇编、而不用于内联汇编。 有任何建议或其他任何帮助?
提前感谢。
此致