共2条
1/1 1 跳转至页
ADS1 ADS1.2中怎么嵌入汇编语言呢?
问
各位大哥:
有个问题我不太明白,请问在ADS1。2的C编译环境下,怎么嵌入汇编程序呢?怎么调用由汇编语言做的函数呢?请指点一二,谢谢 答 1: 请教下面是热心的网友回复我,但是编译出错,请问是什么问题呢?
很多资料书籍都有介绍,方法如下:
__ARM
{
LDR R5,[R6]
}
答 2: 错误代码如下:
OS_ENTER_CRITICAL();
__ARM
{
LDR R5,[R6]
MRS r0, cpsr
}
temp =0x1234;
出错:
Error : C2456E: undeclared name, inventing 'extern int __ARM'
Main.c line 558
Error : (Serious) C2284E: expected ';' after command - inserted before '{'
Main.c line 558
Error : C2456E: undeclared name, inventing 'extern int LDR'
Main.c line 559
Error : (Serious) C2284E: expected ';' after command - inserted before 'R5'
Main.c line 559
Error : C2456E: undeclared name, inventing 'extern int R5'
Main.c line 559
Error : (Serious) C2291E: <expression> expected but found ''
Main.c line 559
Error : C2456E: undeclared name, inventing 'extern int R6'
Main.c line 559
Error : (Serious) C2284E: expected ';' after command - inserted before 'MRS'
Main.c line 560
Error : C2456E: undeclared name, inventing 'extern int MRS'
Main.c line 560
Error : (Serious) C2284E: expected ';' after command - inserted before 'r0'
Main.c line 560
Error : C2456E: undeclared name, inventing 'extern int r0'
Main.c line 560
Error : C2456E: undeclared name, inventing 'extern int cpsr'
Main.c line 561
Error : (Serious) C2284E: expected ';' after command - inserted before '}'
Main.c line 561
答 3: __asm 答 4: 哪位大哥指点一下吧哪位大哥指点一下吧 答 5: 不是告诉你了吗?把__ARM改成__asm就可以了 答 6: re__ARM -> __asm 答 7: 好了,请各位参考总算改好了,谢谢em_ldbb大哥,twentyone 大哥的指点。 下面贴出来让还有疑问的兄弟参考。
_asm
{
LDR R5,[R6] ;
ORR r0, r0, #0xC0 ;
}
有个问题我不太明白,请问在ADS1。2的C编译环境下,怎么嵌入汇编程序呢?怎么调用由汇编语言做的函数呢?请指点一二,谢谢 答 1: 请教下面是热心的网友回复我,但是编译出错,请问是什么问题呢?
很多资料书籍都有介绍,方法如下:
__ARM
{
LDR R5,[R6]
}
答 2: 错误代码如下:
OS_ENTER_CRITICAL();
__ARM
{
LDR R5,[R6]
MRS r0, cpsr
}
temp =0x1234;
出错:
Error : C2456E: undeclared name, inventing 'extern int __ARM'
Main.c line 558
Error : (Serious) C2284E: expected ';' after command - inserted before '{'
Main.c line 558
Error : C2456E: undeclared name, inventing 'extern int LDR'
Main.c line 559
Error : (Serious) C2284E: expected ';' after command - inserted before 'R5'
Main.c line 559
Error : C2456E: undeclared name, inventing 'extern int R5'
Main.c line 559
Error : (Serious) C2291E: <expression> expected but found ''
Main.c line 559
Error : C2456E: undeclared name, inventing 'extern int R6'
Main.c line 559
Error : (Serious) C2284E: expected ';' after command - inserted before 'MRS'
Main.c line 560
Error : C2456E: undeclared name, inventing 'extern int MRS'
Main.c line 560
Error : (Serious) C2284E: expected ';' after command - inserted before 'r0'
Main.c line 560
Error : C2456E: undeclared name, inventing 'extern int r0'
Main.c line 560
Error : C2456E: undeclared name, inventing 'extern int cpsr'
Main.c line 561
Error : (Serious) C2284E: expected ';' after command - inserted before '}'
Main.c line 561
答 3: __asm 答 4: 哪位大哥指点一下吧哪位大哥指点一下吧 答 5: 不是告诉你了吗?把__ARM改成__asm就可以了 答 6: re__ARM -> __asm 答 7: 好了,请各位参考总算改好了,谢谢em_ldbb大哥,twentyone 大哥的指点。 下面贴出来让还有疑问的兄弟参考。
_asm
{
LDR R5,[R6] ;
ORR r0, r0, #0xC0 ;
}
共2条
1/1 1 跳转至页
回复
我要赚赏金打赏帖 |
|
|---|---|
| 低功耗超声波液位测距仪(ESP32S3)被打赏¥27元 | |
| 在K230DBOX上实现多时段语音提示功能被打赏¥14元 | |
| 使K230DBOX实现相机持续拍照功能被打赏¥12元 | |
| 基于K230DBOX的文本管理器设计被打赏¥14元 | |
| 基于K230DBOX的彩色画板功能实现被打赏¥15元 | |
| 在K230DBOX上实现音乐播放器功能被打赏¥15元 | |
| NXP MCU系列开发板MCULink固件升级方法【VSCode】被打赏¥28元 | |
| 三分钟快速搭建NXP MCU开发环境(VSCode)被打赏¥22元 | |
| 为遥控小车巧添功能被打赏¥26元 | |
| 【S32K3XX】FlexCAN 模块配置使用被打赏¥30元 | |
我要赚赏金
