在 Visual Studio 中使用 mdk 编译 ARM 程序

本文介绍如何在VisualStudio环境中配置使用MDK编译ARM程序的方法,通过生成批处理文件实现一键编译,提高开发效率。

作者:Pony279

来自:http://www.openedv.com/posts/list/0/10273.htm?privmsg=1#59175


作为一个集成开发环境,Visual Studio 的强大是无可否认的。其中一个让我欣赏的地方就是它的代码编辑器,特别是和 Visual Assist X 软件配合起来使用的时候,可以很好的减轻程序员写代码的负担。当然直接使用 Visual Studio 作为代码编辑器来写 ARM 程序是可以的,但是如果你不进行配置,每次要编译的时候都得重新打开 keil,很麻烦。为了解决这个问题,下面我将介绍如何在 Visual Studio 的环境下使用 mdk 编译 ARM 程序。 (这里讲的配置方法是不用写任何代码的哦亲!)

1. 原理参考

要脱离一个 IDE 来编译程序,其中一个方法就是使用命令行,一行一行的敲命令,一个文件一个文件地编译。不过每次敲命令行这种方式的效率是极低的!绝对会让你抓狂的!那么就可以用一个批处理文件来做命令行的工作,但是悲剧的是我不知道怎么调用 mdk 的编译器和链接器来生成目标文件,我甚至连 bat 文件怎么写都不会。于是,不知道的时候要看看 mdk 的 help 文档,搜索关键字 “BAT”,不用费多少工夫就能找到说明了:


看它的意思是 MDK 能自动生成 .BAT 文件哦!貌似不用敲代码貌似很有人哦!


2. MDK配置步骤

1) 打开项目配置对话框,Output 选项卡,勾选 Creat Batch File 选项


2) 回到 mdk 界面,重新编译一次工程,注意到第一行的提示。


3) 打开项目所在的文件夹,发现多了个 APP.BAT 文件。


4) 用文本编辑器打开这个文件看看,可以看出里面使用了很多 Mdk 生成的 .__i 文件。这些大可不必管它,只要不要删除 APP.BAT 里面提到的那些文件就行了。我后来发现 APP.BAT 有一个小错误,需要修改。在文件的最后一行,补上引号(如果你的MDK安装目录中有空格或中文字符就需要这样做)


5) 到这里 mdk 相关的配置已经结束了。如果你双击这个 .bat 文件,它就可以重新生成目标文件,但是命令行一闪即逝,出错了也看不到。用起来并不方便。

注意:每次修改了 mdk 的项目配置或修改增加了源文件都需要在 Keil 中重新编译(步骤2)一次!

3. Visual Studio 配置

我假定你已经使用过 Visual Sdudio 了,所以在下面我不会介绍怎么使用 Visual Sdudio创建项目并添加源文件到项目中。下面将介绍怎么配置 Visual Studio ,从而在主界面添加一个的按钮,用这个按钮来使用 mdk 生成你的项目。

1) 打开 visual studio,工具->外部命令


2) 弹出对话框后,点击“添加”按下图创建一个新的命令,注意到命令的内容就是刚才那个 .BAT 文件,注意命令使用的路径是相对路径,这个需要根据你的具体项目的文件结构填写。其中的 $(SolutionDir) 指的是 Visual Studio 项目文件的位置(严格的说是解决方案文件的位置。


3) 创建自定义工具栏。工具->自定义



弹出一个对话框后,点击新建, 名称就定为 mcu tools 吧。然后点确定,关闭上面的自定义对话框。


回到 Visual Studio 主界面,可以找找刚才新建的对话框,里面啥也没有呢。


4) 对新的工具栏添加按钮。


弹出对话框后按下图操作:


注意这里的 8 需要根据实际情况选择。


5) 到这里,就配置完成啦,简单吧,点击这个试试看吧!


内容概要:本文系统介绍了算术优化算法(AOA)的基本原理、核心思想及Python实现方法,并通过图像分割的实际案例展示了其应用价值。AOA是一种基于种群的元启发式算法,其核心思想来源于四则运算,利用乘除运算进行全局勘探,加减运算进行局部发,通过数学优化器加速函数(MOA)和数学优化概率(MOP)动态控制搜索过程,在全局探索与局部发之间实现平衡。文章详细解析了算法的初始化、勘探与发阶段的更新策略,并提供了完整的Python代码实现,结合Rastrigin函数进行测试验证。进一步地,以Flask框架搭建前后端分离系统,将AOA应用于图像分割任务,展示了其在实际工程中的可行性与高效性。最后,通过收敛速度、寻优精度等指标评估算法性能,并提出自适应参数调整、模型优化和并行计算等改进策略。; 适合人群:具备一定Python编程基础和优化算法基础知识的高校学生、科研人员及工程技术人员,尤其适合从事人工智能、图像处理、智能优化等领域的从业者;; 使用场景及目标:①理解元启发式算法的设计思想与实现机制;②掌握AOA在函数优化、图像分割等实际问题中的建模与求解方法;③学习如何将优化算法集成到Web系统中实现工程化应用;④为算法性能评估与改进提供实践参考; 阅读建议:建议读者结合代码逐行调试,深入理解算法流程中MOA与MOP的作用机制,尝试在不同测试函数上运行算法以观察性能差异,并可进一步扩展图像分割模块,引入更复杂的预处理或后处理技术以提升分割效果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值