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

本文详细介绍了如何在STM32项目中实现C语言与汇编语言的混合编程,包括在C语言中调用汇编函数和在汇编中调用C函数的步骤,并通过实际操作展示了程序的编译和调试过程,验证了函数调用的正确性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

一、在C语言中调用汇编语言函数

1、首先创建一个工程test2。

2、在test2中添加C语言。

 3、在test2中添加汇编语言。

4、编译运行程序 

二、在汇编语言中调用C语言函数

1、编写C语言代码

2、编写汇编语言函数 

3、编译程序 

 4、调试运行程序

三、总结 


一、在C语言中调用汇编语言函数

1、首先创建一个工程test2。

新建工程和在工程中添加代码详情可以参考我之前的一个博客:

Keil环境下创建STM32汇编语言工程分析HEX文件内容并观察ARM寄存器变化情况_shutupbb的博客-优快云博客

2、在test2中添加C语言。

此次程序的功能为传入一个整型数x,函数运行后返回整型数 x+100。首先编写一个C语言程序,但在里面声明一下汇编语言的函数。

#include<stdio.h>
 extern int Init_1(int x);     //声明汇编语言的函数
 int main(void)
 {
	 int x=10;
	 Init_1(x);               //调用汇编语言函数
	 return 0;
 }

   

 3、在test2中添加汇编语言。

编写一个汇编语言程序,实现函数功能。

 AREA	My_Function,CODE,READONLY
	 EXPORT Init_1
Init_1
    ADD R0,R0,#100
	bx lr
	END

此处要注意汇编语言的格式,第一行要空格,第二行也要按tab键空格,否则会报错。 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值