【嵌入式06】STM32的C与汇编语言混合编程

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

一、题目要求

修改参考代码,要求将原汇编语言 Init_1函数的类型改为 int Init_1(init) ,此函数功能修改为 传入一个整型数x,函数运行后返回整型数 x+100。 请编程实现,并仿真跟踪调试;

二、项目创建

选择设备

打开Keil ARM,Project->New μVision Project->选择STM32F103ZE
设置工程的目标环境,本文基于STM32F103ZE,因此在弹出的窗口选择相应的选项,点击保存即可;具体如下图所示
在这里插入图片描述

选择运行环境

ARM的CMSIS已经把开发所需要的软件组件都封装好了,因此直接选择即可;

1.CMSIS下选择CORE;
2.Device下Startup,其中包含了启动文件;
具体如下图所示;

在这里插入图片描述

添加源文件

鼠标右键单击Source Group 1,具体如下图所示

在这里插入图片描述
选择Add New Item to Group

添加源文件,因为创建汇编项目;

1.选择 Asm File (.s) ,创建汇编文件;
2.设置源文件的名称;
3.点击保存;
请添加图片描述
请添加图片描述
代码如下

#include<stdio.h>

extern void Init_1(void);

int main()
{
   
	Init_1 ();
	return 0;
}

 
    AREA My_Function,CODE,READONLY  ;这一行必有的 除了My_Function可以自己取名外 其他都是模板了
	EXPORT Init_1   ;与在c文件中定义的Init_1函数关联起来

;高级语言中的声明和使用变量其实是对板子寄存器的使用,所以
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值