如何在STM32F10x_StdPeriph_Template基础上建立自己的MDK工程(一)
来源:互联网 发布:交互设计要学编程吗 编辑:程序博客网 时间:2024/06/07 16:02
初学STM32时,相信令大家最头疼的应该就是如何建立一个新工程了。其实呀,无论是在学习还是工作中,最重要的还是效率,我们不可能每次都要从头开始新建一个工程。那么,这时,有一个建好的工程模板就显得非常重要。这里呢,我将结合自己的亲身经历向大家分享如何使用MDK(Keil)建立一个STM32工程模板,希望能和大家多多交流,如有什么不当之处,还望指正。
第一步:下载STM32固件库源码
关于获取ST公司的STM32固件库源码,有几种方法。我们可以在百度上搜,网上有进行了分享,也可以到ST公司的官网进行查找并下载。不过,如果英文不好的话,要在官网上找到STM32固件库确实是件很吃力的事。在官网上可以根据英文提示按不同条件进行筛选,具体操作如下图所示:
第二步:新建工程文件夹——《STM32工程模板》
首先,新建工程文件夹《STM32工程模板》,然后再在该文件夹下新建6个文件夹,分别为:《Doc》、《Libraries》、《Listing》、《Output》、《Project》和《User》。其中,《Doc》用于存放各种说明文档;《Libraries》用于存放各种库文件;《Listing》用于存放编译时产生的中间文件;《Output》用于存放生成的下载所需的文件;《Project》用于存放工程文件;《User》用于存放用户文件,即我们自己编写的各种源文件。具体情况如下图所示:
第三步:向建立的工程文件夹中添加库文件
1.将库文件中的inc和src文件夹复制到模板工程文件夹下的FWLIB文件夹。具体操作情况如下图:
2.将库文件中CoreSupport文件夹下的文件复制到工程模板文件夹下的CMSIS文件夹。具体操作情况如下图:
3.将库文件中DeviceSupport文件夹下的相关文件复制到工程模板文件夹下的CMSIS文件夹。具体操作情况如下图:
4.将库文件中startup文件夹下arm中的文件全部复制到工程模板文件夹下的startup文件夹。具体操作情况如下图:
5.将库文件中Project文件夹下的相关文件复制到工程模板文件夹下的User文件夹中。具体操作情况如下图:
第四步:使用MDK(Keil)新建工程模板
1.首先得选择CPU,这个在新建工程时,会有一个选择芯片的界面,我们只需按提示以及自己的实际情况来选择就好了。具体操作情况如下图:
2.更改工程名(将默认的工程名改为“Template”的方法:选中工程,按“F2”键)并为工程添加项目组(Add group to project)。具体操作情况如下图:
3.分别向各个项目组中添加我们刚刚从库中复制过来的文件文件(Add files to group)。具体操作情况如下图:
第五步:工程配置
1.配置Target选项卡。具体操作情况如下图:
2.配置Output选项卡。具体操作情况如下图:
3.配置Listing选项卡。具体操作情况如下图:
4.配置C/C++选项卡。具体操作情况如下图:
6.配置Utilities选项卡。具体操作情况如下图:
0 0
- 如何在STM32F10x_StdPeriph_Template基础上建立自己的MDK工程(一)
- 如何在STM32F10x_StdPeriph_Template基础上建立自己的MDK工程
- 如何在STM32F10x_StdPeriph_Template基础上建立自己的MDK工程(二)
- 在MDK上建立一个C++的STM32开发工程
- 在MDK上建立一个C++的STM32开发工程
- KEIL MDK STM32如何建立工程
- 在MDK上建立STM32固件库工程
- 在Vovida的基础上实现自己的SIP协议栈(一)
- 在Vovida的基础上实现自己的SIP协议栈(一)
- 2440使用的MDK工程的建立
- Keil MDK的安装与工程建立
- Keil MDK的安装与工程建立
- Keil MDK的安装与工程建立
- 在IAR For ARM和Keil Realiew MDK中建立工程的步骤
- STM32在KEIL MDK环境下建立新工程
- 如何在谷歌上建立自己的个人主页
- 在现有J2EE Web工程的基础上建立对BlazeDS通讯框架支持的3大步骤
- 在Vovida的基础上实现自己的SIP协议栈(一)
- 自从邓超当了产品经理之后,我整个人都不好了......
- 基础 HTML之目录问题(相对路径和绝对路径区别)
- Floating Point Optimization(ARM 浮点优化方案)
- 技术做减法
- 一种手机蹭wifi的新思路
- 如何在STM32F10x_StdPeriph_Template基础上建立自己的MDK工程(一)
- Android系统Recovery工作原理之使用update.zip升级过程分析(二)---update.zip差分包问题的解决
- Android微信支付之免jar包集成方式(简单至极)
- ERROR: Field 'scId' doesn't have a default value
- leetcode 152 Maximum Product Subarray
- Jquery中神奇的事件命名空间
- UiAutoMator Helper自动运行测试用例
- MySQL 入门笔记
- JSP页面通过jstl进行变量累加