完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
1、 建立工程目录
新建一个工程目录,用来存放工程文件,源文件,头文件等,例如在桌面上新建一个名称为My_Project的目录。 2、 建立工程子目录 在步骤1建立的工程文件夹中建立子目录,用来存储工程中用到的不同文件。建立CMSIS、Library、Listing、Output、Project、User六个子目录,如下图所示。 下面来讲一下这六个子目录的作用。 CMSIS目录:用来存放和内核相关的文件 Library目录:用来存放STM32F4 标准外设固件库源码文件和对应的头文件。 Listing目录:用来存放列表文件。 Output目录:用来存放编译过程中产生的中间文件。 Project目录:用来存放工程文件。 User目录:用来存放用户自己定义的源文件。 3、 新建Keil工程 打开 Keil,点击 Keil的菜单:Project –》New Uvision Project ,然后将目录定位到刚才建立的文件夹工程模板之下的Project子目录,同时,将工程命名为My_Project之后 点击保存,这样工程文件就都保存到Project文件夹下面了 4、 接下来,Keil会自动弹出选择Device的界面,通过这个界面,我们可以选择我们使用的芯片型号,这里选择STM32F407VGT6作为目标芯片。 点击OK之后,Keil会自动弹出如下对话框。 选择“是”,这样Keil会自动把启动代码添加到工程中 5、 向工程子目录下添加标准库文件 在ST的官网可以下载标准固件库,我下载的是V1.7.1版本STM32F4xx_ DSP_ StdPeriph _Lib_V1.7.1。标准固件库里边包含了创建工程所有要用的文件 (1) 首先将STM32F4xx_DSP_StdPeriph_Lib_V1.7.1LibrariesCMSISInclude下边的文件拷贝到工程目录的CMSIS文件夹下边。 将目录STM32F4xx_DSP_StdPeriph_Lib_V1.7.1LibrariesCMSISDeviceSTSTM32F4xx Include下边的stm32f4xx和system_stm32f4xx两个头文件拷贝到CMSIS子目录下边。 (2) 将 STM32F4xx_DSP_StdPeriph_Lib_V1.7.1LibrariesSTM32F4xx_StdPeriph_Driver目录下边的inc和src子目录拷贝到工程目录的Library目录下边 (3) 将STM32F4xx_DSP_StdPeriph_Lib_V1.7.1ProjectSTM32F4xx_StdPeriph_Templates目录下的main.c,main.h,stm32f4xx_conf.h,stm32f4xx_it.c,stm32f4xx_it.h,system_stm32-f4xx.c拷贝到工程目录的User子目录下。 6、添加工程分组 在Keil的project视图下添加分组,如下图所示。 分组添加完成之后如下图所示。 7、向分组中添加文件 在相应的分组上,通过右键选择Add Existing Files to Group xxx来从刚才的工程文件中添加相应的文件。 Startup分组已经添加了启动文件,无需处理 Library分组需要添加我们用到的外设库文件,用户可以把工程子目录Library/src目录下的全部外设文件源文件添加进去,也可以添加自己需要的外设。 User用来放置用户自己编写的源文件和相应的头文件。用户可以从工程子目录User下边添加自己的源文件 添加完成之后的工程视图如下图所示。 8、设置Target相关属性 (1) 点击Option for target按钮,弹出对话框如下图所示。 (2) 点击Listing选项卡,选择Select Folder for Listings,定位到工程目录下的Listing子目录。 (3) 点击Output选项卡,点击Select Folder for Objects按钮,定位到刚才工程文件中的Output子目录。 (4) 点击C++选项卡,如图 在Define 填入USE_STDPERIPH_DRIVER,STM32F4XX 在IncludePaths填写工程包含头文件的路径,这边是填了三个路径,分别是工程文件夹下边的CSMIS目录,工程文件下Library目录下的inc目录以及工程文件夹下的User 目录。 (5) 点击Debug,选择仿真器,我使用的是ST—Link,可以根据需要选择仿真器 (6) 点击setting来选择仿真器借口,可以选择JTAG借口或者SWD接口 这样一个工程就建立完成了。 |
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1632 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1559 浏览 1 评论
985 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
688 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1605 浏览 2 评论
1869浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
655浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
525浏览 3评论
540浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
512浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-25 19:57 , Processed in 0.687173 second(s), Total 46, Slave 39 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号