嵌入式学习--step1 新建模板
2016-07-21 09:16
274 查看
说明,本人使用的是stm32f4系列的开发板,软件使用MDK,在学习的过程有参考某公司的STM32F4开发指南,具体的MDK的配置文件操作文中没有细述。
step1:新建模板
1、先建立一个文件夹,命名为Template,然后新建5个文件夹,CORE\FWLIB\OBJ\SYSTEM\USER。
2、MDK下新建工程,Project->New Uvision Project 定位到Template之下的USER,同时工程名取Template,并将工程文件都保存到USER文件夹下,然后选择好芯片的型号。
3、各外设的头文件与c文件,我们要将官方的固件库包里的源码文件复制到我们的工程目录文件夹下,\STM32F4xx_DSP_StdPeriph_Lib_V1.4.0\Libraries\STM32F4xx_StdPeriph_Driver下面,将目录下的src、inc文件夹copy到我们之前建立的FWLib下。因为src存放的是固件库的.c文件,inc存放的是对应的.h文件,里面有每个外设的c文件和头文件。
4、stm32的启动文件,
This module performs:
Set the initial SP /
Set the initial PC /
Set the vector table entries with the exceptions ISR address /
Configure the system clock and the external SRAM mounted on STM324xG-EVAL board to be used as data memory ( optional , to be enabled by user )
下面我们将固件库里的启动文件复制到CORE目录下,打开\STM32F4xx_DSP_StdPeriph_Lib_V1.4.0\Libraries\CMSIS\Devices\ST\STM32F4xx\Source\Templates\arm下面将startup_stm32f40_41xxx.s复制到CORE下面,然后将\STM32F4xx_DSP_StdPeriph_Lib_V1.4.0\Libraries\CMSIS\Includ将里面的四个头文件:core_cm4.h\core_cm4_simd.h\core_cmFunc.h\core_cmInstr.h
同样复制到CORE目录下。
5、将stm32的外设中断等配置文件复制过来
\STM32F4xx_DSP_StdPeriph_Lib_V1.4.0\Libraries\CMSIS\Devices\ST\STM32F4xx\Include,里面的stm32f4xx.h和system_stm32f4xx.h复制到USER目录的,\STM32F4xx_DSP_StdPeriph_Lib_V1.4.0\Project\STM32FF4xx_Std
4000
Periph_Templates,将目录下的5个文件main.c
\ stm32f4xx_conf.h \ stm32f4xx_it.c \ stm32f4xx_it.h
6、将core4核文件cm4复制过来
也就是在\STM32F4xx_DSP_StdPeriph_Lib_V1.4.0\Libraries\CMSIS\Includ下的core_cm4.h\core_cm4_simd.h\core_cmFunc.h\core_cmInstr.h
四个core4的文件复制到CORE下
7、最后将SYSTEM下的delay\sys\usart\ 三个c文件也加到项目里来,这三个文件是该开发板公司自己写的。
这样一个模板就建成了,最后附上模板的压缩包,如果您也是使用stm32f4系列开发板可以参考。
step1:新建模板
1、先建立一个文件夹,命名为Template,然后新建5个文件夹,CORE\FWLIB\OBJ\SYSTEM\USER。
2、MDK下新建工程,Project->New Uvision Project 定位到Template之下的USER,同时工程名取Template,并将工程文件都保存到USER文件夹下,然后选择好芯片的型号。
3、各外设的头文件与c文件,我们要将官方的固件库包里的源码文件复制到我们的工程目录文件夹下,\STM32F4xx_DSP_StdPeriph_Lib_V1.4.0\Libraries\STM32F4xx_StdPeriph_Driver下面,将目录下的src、inc文件夹copy到我们之前建立的FWLib下。因为src存放的是固件库的.c文件,inc存放的是对应的.h文件,里面有每个外设的c文件和头文件。
4、stm32的启动文件,
This module performs:
Set the initial SP /
Set the initial PC /
Set the vector table entries with the exceptions ISR address /
Configure the system clock and the external SRAM mounted on STM324xG-EVAL board to be used as data memory ( optional , to be enabled by user )
下面我们将固件库里的启动文件复制到CORE目录下,打开\STM32F4xx_DSP_StdPeriph_Lib_V1.4.0\Libraries\CMSIS\Devices\ST\STM32F4xx\Source\Templates\arm下面将startup_stm32f40_41xxx.s复制到CORE下面,然后将\STM32F4xx_DSP_StdPeriph_Lib_V1.4.0\Libraries\CMSIS\Includ将里面的四个头文件:core_cm4.h\core_cm4_simd.h\core_cmFunc.h\core_cmInstr.h
同样复制到CORE目录下。
5、将stm32的外设中断等配置文件复制过来
\STM32F4xx_DSP_StdPeriph_Lib_V1.4.0\Libraries\CMSIS\Devices\ST\STM32F4xx\Include,里面的stm32f4xx.h和system_stm32f4xx.h复制到USER目录的,\STM32F4xx_DSP_StdPeriph_Lib_V1.4.0\Project\STM32FF4xx_Std
4000
Periph_Templates,将目录下的5个文件main.c
\ stm32f4xx_conf.h \ stm32f4xx_it.c \ stm32f4xx_it.h
6、将core4核文件cm4复制过来
也就是在\STM32F4xx_DSP_StdPeriph_Lib_V1.4.0\Libraries\CMSIS\Includ下的core_cm4.h\core_cm4_simd.h\core_cmFunc.h\core_cmInstr.h
四个core4的文件复制到CORE下
7、最后将SYSTEM下的delay\sys\usart\ 三个c文件也加到项目里来,这三个文件是该开发板公司自己写的。
这样一个模板就建成了,最后附上模板的压缩包,如果您也是使用stm32f4系列开发板可以参考。
相关文章推荐
- Android绘图基础之 ~~~ 在XML中绘图
- 杭电ACM—HDU-2052Picture
- 素数因子两种方法的效率
- 什么样的人适合当程序员?挺有意思的一篇文章
- 解决ie8下h5元素兼容性的问题
- [李景山php]thinkphp核心源码注释|Sqlsrv.class.php
- ACM找点问题
- SQLite数据库安装及基本操作指南
- 内存缓存LruCache实现原理
- [李景山php]thinkphp核心源码注释|Sqlite.class.php
- memcached/redis安全性
- leetcode 136
- android文件API使用
- [李景山php]thinkphp核心源码注释|Pgsql.class.php
- 聊一聊关于CSS的那些事
- [李景山php]thinkphp核心源码注释|Oracle.class.php
- PHP图片上传程序(完整版)
- 代码评审出现的简单问题
- [Android] 内存泄漏调试经验分享 (一)
- 访问网站不存在的页面的时候跳转到指定页面,不需要报文件不存在