使用HAL库函数建立STM32F2工程
一、建立一个新的文件夹,新建三个文件夹User、Driver、Project,还可以加一个Doc存放工程的相关说明等等。
1、将STM32F2xx的库函数(HAL函数库)中的Drivers文件夹中的所有文件复制到Driver中。
2、找到.\STM32Cube_FW_F2_V1.1.0\Projects\STM322xG_EVAL\Templates目录下的INC和SRC文件夹,复制到User中。
二、打开KEIL-MDK软件,新建project->new project,目录选在Project文件夹下,Device选择STM32F205VCT6(根据实际芯片选择)。
三、在左侧导航栏, 接下来就是为工程添加组和源文件了,首先添加四个组:Lib,User,CMSIS,StartUp.然后为各个组添加源文件:
Lib->添加Derivers\ STM32F2xx_HAL_Driver\src下所有源文件,当然后也可以根据需要只选择部分文件。
User->添加User目录下所有源文件(如果目录中包含了system_stm32f2xx.c文件,注意不要重复引入工程中)。
CMSIS->添加\Drivers\CMSIS\Device\ST\STM32F2xx\Source\Templates目录下的system_stm32f2xx.c文件。
StartUp->添加Drivers\CMSIS\Device\ST\STM32F2xx\Source\Templates\arm目录下的startup_stm32f2xx.s文件.
这样一来就添加完所有文件了.

四、配置项:
1、全局常量(C++/define):USE_STDPERIPH_DRIVER, STM32F205xx;
2、头文件目录包含(C++/Include)

五、删除不必要的外设文件,精简程序。
附:
STM32Cube_FW_F2_V1.1.0库函数下载链接:
stm32f2xx标准库函数:http://download.csdn.net/detail/u013521188/9769839
stm32f2xx开发手册:http://download.csdn.net/detail/u013521188/9769842
HAL库函数手册:http://download.csdn.net/detail/u013521188/9771024
其中与V1.4.0中CMSIS中的内容大致相同,可以相互替补。
注意事项:
在头文件中包含其他的文件时,要放在声明之后,或在文件尾部进行包含。
使用HAL库函数建立STM32F2工程的更多相关文章
- STM32开发环境--使用MDK建立一个工程
STM32开发环境--使用MDK建立一个工程 该工程模版是基于库函数基础制作而成,其中有借鉴相关资料.虽然工程模版一旦建立,以后任何项目只需套用即可,但考虑到长时间不使用,在将来某天可能会突然用到,再 ...
- STM8建立IAR工程
STM8是意法半导体公司出的增强型八位单片机,性能比51单片机强大,而且价格便宜,在商业应用中很受欢迎 在STM8的开发工程中主要有两种开发工具链.第一是使用IAR开发环境,第二十使用cosmic+s ...
- 【非专业前端】Vue UI 之 建立Vuetify工程
先建立一个工程[Webpack] .. ..建立好之后,进入目录,添加vuetify插件 cd vuetify-demo vue add vuetify[会出错] npm install vuetif ...
- Eclipse建立Java工程中的三个JRE选项的区别(Use an execution environment JRE,Use a project specific JRE,Use default JRE)
本博客部分转载自: http://blog.csdn.net/wdjhzw/article/details/42086615 这篇博客写的非常好,很用心. 一.首先看新建Java Project时候 ...
- idea环境下建立maven工程并运行scala程序
idea中scala编程环境及建立maven工程 1.下载idea软件并破解:http://blog.csdn.net/nn_jbrs/article/details/70139178 2.安装sca ...
- 重新使用Eclipse建立安卓工程遇到的问题
很早之前用过Eclipse建立安卓工程,很久没用了,最近打算用Eclipse开发安卓程序,我是用谷歌提供的Eclipse集成环境建立的安卓工程,发现有了一些变化,而且遇到一点问题,这几天不断学习,终于 ...
- [转载]VS2010怎样打开VS2013或者VS2015建立的工程
VS2010怎样打开VS2013或者VS2015建立的工程 作用:解决vs低版本无法直接打开高版本的工程文件问题. 一.转载出处 http://blog.csdn.net/qq2399431200/a ...
- 关于建立Android工程R文件丢失的问题
今天开始学习Android了,好久没打开eclipse,建立Android工程老是报错,于是手残的把appcompat-v7给删了,然后建立工程以后重新出来的appcompat-v7有个小叉号,百度了 ...
- robotium 测试APK<一> 建立测试工程
1.准备Android开发环境 2.准备签名工具http://www.troido.de/re-sign.jar 1.建立测试工程 打开Eclipse,点击File->New一个Android ...
随机推荐
- 使用Python-iGraph绘制贴吧/微博好友关系图
想通过图形化的方式显示社交网络特定用户的好友关系,上网找了一下这方面的图形库有networkx.graphviz等,找了好久我选择了iGraph这个图形库. igraph在Windows下的安装稍微有 ...
- WinForm中控件位置不随窗体大小的变化而改变
背景:在窗体开发中使控件的位置不随窗体的大小改变而变化的问题?这是一个同事在开发时遇到的问题,在思考试错之后,写出如下代码. 声明成员: Point m_InitLocation; Size m_In ...
- iOS开发 - 适配Https的野路子
大致写下适配Https时遇到的坑,做完服务器迁移一直通宵到现在,表示无力再多做详解,只放一些常见问题的解决方案吧 问题一.Https请求失败 1. NetManager初始化时可参考如下设置(因为我没 ...
- 用js+cookie实现商城的购物车功能
页面上的添加功能主要就是两个按钮 <input name="buy" type="image" alt="第一个商品" src=&qu ...
- 详解Session分布式共享(.NET CORE版)
一.前言&回顾 在上篇文章Session分布式共享 = Session + Redis + Nginx中,好多同学留言问了我好多问题,其中印象深刻的有:nginx挂了怎么办?采用Redis的S ...
- C语言精要总结-指针系列(一)
考虑到指针内容繁多,这里将指针作为一个系列,从简入繁,一点一点深挖并掌握这C语言的精华.初步计划如下 此文为指针系列第一篇: C语言精要总结-指针系列(一) 内存与地址 我们可以把内存看做一排连续的房 ...
- Android 窗口全屏
全屏getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN); 取消全屏 getWindow().clearFlags(Wind ...
- ELK logstash 处理MySQL慢查询日志(初步)
写在前面:在做ELK logstash 处理MySQL慢查询日志的时候出现的问题: 1.测试数据库没有慢日志,所以没有日志信息,导致 IP:9200/_plugin/head/界面异常(忽然出现日志数 ...
- JavaScript算法 ,Python算法,Go算法,java算法,系列之【归并排序】篇
常见的内部排序算法有:插入排序.希尔排序.选择排序.冒泡排序.归并排序.快速排序.堆排序.基数排序等.用一张图概括: 归并排序(英语:Merge sort,或mergesort),是创建在归并操作上的 ...
- poj Layout 差分约束+SPFA
题目链接:http://poj.org/problem?id=3169 很好的差分约束入门题目,自己刚看时学呢 代码: #include<iostream> #include<cst ...