嵌入式学习--step1 新建模板
来源:互联网 发布:企业的域名 编辑:程序博客网 时间:2024/06/05 21:16
说明,本人使用的是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_StdPeriph_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 新建模板
- C++类学习---------step1
- TinySpring学习(Step1)
- 微型嵌入式GUI应用开发-Step1
- step1
- step1
- step1
- Step1-在ESXI主机上新建虚拟机并创建快照
- 嵌入式学习--work2 IAR 如何建立模板
- 【2015-1-14】STM32学习之新建工程模板
- 学习Discuz! X3.2记录:新建模板及修改logo
- Word 模板 - 新建向导
- opencms8.5.0-新建模板
- 新建service模板
- 如何新建jsp模板
- netbeans 新建代码模板
- 新建工程模板-库函数
- mysql step1
- [李景山php]thinkphp核心源码注释|Sqlsrv.class.php
- Linux crontab
- 素数因子两种方法的效率
- 杭电ACM—HDU-2052Picture
- Android绘图基础之 ~~~ 在XML中绘图
- 嵌入式学习--step1 新建模板
- 实战体验几种MySQLCluster方案
- 什么样的人适合当程序员?挺有意思的一篇文章
- 字符读取流缓冲区-读一行的方法readLine()
- 偶数求和 hd 2015
- What Is Your Grade?
- C语言 malloc realloc calloc
- 彻底理解PHP的SESSION机制
- Spring Test 整合 JUnit 4 使用总结