系列文章目录
学习使用HAL库进行STM32软件开发 | 开始
学习使用HAL库进行STM32软件开发 | 选择开发环境和开发板
学习使用HAL库进行STM32软件开发 | 官方资料汇总和下载资料
学习使用HAL库进行STM32软件开发 | 安装STM32cubeMX及STM32F4支持包
学习使用HAL库进行STM32软件开发 | 安装keil-MDK及STM32F4支持包
学习使用HAL库进行STM32软件开发 | 建立cubeMX工程和keil-MDK工程(本文)
摘要
使用STM32cubeMX建立工程,自动生成代码及keil工程,并切换到keil软件中进行编译,编译通过。
本次只是为了建立基本的工程,到编译通过就结束了,没有进行调试。
在编译通过后,发现双击工程名打不开map,查阅资料发现由cubeMX自动生成的工程中,Listing中设置与Output设置生成文件的路径不一致,修改一致后问题解决,可以双击工程名打开map。
一、在cubeMX建立工程
打开cubeMX。
点击file > new project。
在芯片列表中找到STM32F429IGT6。
点击建立STM32F429IGT6工程。
Pinout & Configuration这里不动。
Clock configuration不动。
Project Manager这里,Project设置好工程路径、工程名称、开发环境。
Code Generator这里,比默认多勾选一个生成单独的.c和.h文件,不然一堆代码全在main里面不好找。
Advanced Settings这里只用了RCC,库选择HAL。
保存工程。
点Generate code生成代码。
生成代码之后,可以直接点Open Project打开工程。
查看生成代码的文件夹。
其中,Core是生成的初始化代码,Drivers是ST的库,MDK-ARM存放keil-MDK工程相关文件。
二、在keil编译工程
之前cubeMX生成的代码,可以直接从cubeMX点击打开,也可以从MDK-ARM文件夹中点击工程文件打开keil工程。
工程的设置是直接被设置好的。
直接点编译进行编译。
编译通过。
三、遇到双击工程打不开map的问题
编译通过后,双击工程名打不开map文件,网上查阅别人的文章后发现,由cubeMX自动生成的工程中,output中设置生成输出文件的路径为工程文件目录的下一级文件夹,而listing中设置的路径是工程文件的目录,两者不是同一个目录,所以直接双击打不开,在listing中设置修改目录为与output中输出文件的目录一致就解决了。
output中是工程目录下的test文件夹(我前面建工程时叫的test)
listing中的路径直接是工程目录。
修改后解决,可以直接双击工程名打开map。