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

本文详细介绍了如何在STM32项目中实现C语言调用汇编函数以及汇编函数调用C语言函数的过程。从创建项目开始,逐步讲解了无参数和有参数的调用方式,并通过调试步骤展示了函数执行过程。

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

一、C语言调用汇编函数

1.创建项目

(1)新建一个项目,并为其命名,然后选择芯片类型和配置
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
(2)添加main.c文件和test.s文件
在这里插入图片描述
在这里插入图片描述
(3)编写文件
在这里插入图片描述
在这里插入图片描述
(4)rebuild项目
在这里插入图片描述

2.无参数调用

(1)参数配置
在这里插入图片描述
(2)调试
在这里插入图片描述
(3)设置断点(点击图中语句旁边的▲标红)
在这里插入图片描述
在这里插入图片描述
(4)点击Debug,选择step(F11),分步调试,只需将R1和R2改为0
在这里插入图片描述
(5)一直点击下一步调试,执行LOOP函数,循环比较R1与10的大小

在这里插入图片描述

3.有参数调用

(1)修改代码
在这里插入图片描述
在这里插入图片描述
(2)点击rebuild进行编译
(3)点击右上角的在这里插入图片描述
设置断点
在这里插入图片描述
在这里插入图片描述
(4)分步调试,直到出现下图R0返回117(0x75),main函数中s返回117(0x75)
在这里插入图片描述

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

1.修改代码
在这里插入图片描述
在这里插入图片描述
2.编译
3.设置断点
在这里插入图片描述
4.分步调试,直到R0返回17(0x17)
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值