共2条
1/1 1 跳转至页
keil,for,arm 请问谁会在keil for arm 下c调用汇编函数

问
请问,如何在keil for ARM下调用汇编函数呢?
keil好像不支持EXPORT 和 IMPORT
我使用c51格式的extern 和public 编译通过了,但是连接出错,总是报告
ERROR L128:REFERENCE MADE TO UNRESOLVED EXTERNAL
SYMBOL:tmp?T
ADDRESS:000000FAH
tmp 是我写的测试函数,那么tmp?T是什么意思,在keil 帮助中有将一个c函数汇编成 tmp?T 和tmp?A 的东西,tmp是函数名,但后面的PROC CODE32就看不动了,到底应该如何定义呢?谁能帮帮我? 答 1: Keil已经支持嵌入汇编void Asm_ResetWDT(void){
__asm
{
// MOV R0, LR
MSR CPSR_c, #0xdf
LDR R0,=0xE0000008 //WDFEED
MOV R1,#0xAA
STR R1,[R0]
MOV R1,#0x55
STR R1,[R0]
MSR CPSR_c, #0x5f
// MOV PC,LR
}
}
keil好像不支持EXPORT 和 IMPORT
我使用c51格式的extern 和public 编译通过了,但是连接出错,总是报告
ERROR L128:REFERENCE MADE TO UNRESOLVED EXTERNAL
SYMBOL:tmp?T
ADDRESS:000000FAH
tmp 是我写的测试函数,那么tmp?T是什么意思,在keil 帮助中有将一个c函数汇编成 tmp?T 和tmp?A 的东西,tmp是函数名,但后面的PROC CODE32就看不动了,到底应该如何定义呢?谁能帮帮我? 答 1: Keil已经支持嵌入汇编void Asm_ResetWDT(void){
__asm
{
// MOV R0, LR
MSR CPSR_c, #0xdf
LDR R0,=0xE0000008 //WDFEED
MOV R1,#0xAA
STR R1,[R0]
MOV R1,#0x55
STR R1,[R0]
MSR CPSR_c, #0x5f
// MOV PC,LR
}
}
共2条
1/1 1 跳转至页