STM32的C与汇编语言混合编程

本文介绍了在Keil环境下进行STM32的C语言与汇编语言混合编程,通过创建项目文件,编写并调试C和汇编代码,展示了如何在汇编函数中调用C语言函数,以及C函数如何调用汇编函数,详细阐述了代码的修改与调试过程。
摘要由CSDN通过智能技术生成

一、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时,退出循环

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值