STM32的C与汇编语言混合编程
一、Keil中的C语言与汇编语言混合编程
1.创建项目文件
1) 在Keil中创建main.c和Func.s文件,创建完成后结构如下图:
2.编写代码
1) 编写main.c代码:
#include<stdio.h>
extern void Init_1(void);
int main(){
Init_1();
return 0;
}
2) Func.s汇编代码编写:
AREA My_Function,CODE,READONLY
EXPORT Init_1
Init_1
MOV R1,#0 ;R1-->i
MOV R2,#0 ;R2-->j
LOOP
CMP R1,#10
BHS LOOP_END
ADD R2,#1 ;j++
ADD R1,#1 ;i++
B LOOP
LOOP_END
NOP
END
}
3.调试
F5调试程序,可以看到R1、R2寄存器会从0不断累加1,直到为A时,退出循环