
摘要$ v' n6 m( R L4 E8 f1 n 使用STM32cubeMX建立工程,自动生成代码及keil工程,并切换到keil软件中进行编译,编译通过。5 T; j" \6 D$ K/ x2 P7 U1 F2 f. d6 O 本次只是为了建立基本的工程,到编译通过就结束了,没有进行调试。 在编译通过后,发现双击工程名打不开map,查阅资料发现由cubeMX自动生成的工程中,Listing中设置与Output设置生成文件的路径不一致,修改一致后问题解决,可以双击工程名打开map。; }+ X* Q! n0 y# h 一、在cubeMX建立工程. y# F' F* G0 L/ M0 f s" G 打开cubeMX。 ![]() ) `$ ^, K) m/ |8 M# F ![]() 点击file > new project。 ![]() 1 v; H1 q I- w/ p" I. F 在芯片列表中找到STM32F429IGT6。 , P. G7 c) \1 B3 _% q ![]() % s* y- P. R8 l) n 点击建立STM32F429IGT6工程。 u( o; M7 R9 S. W7 N) W/ F {/ } ![]() : x9 {) ?: r4 c$ _3 V2 w, k8 P2 I& H9 r ![]() Pinout & Configuration这里不动。 ![]() Clock configuration不动。( n# x( p, R& F# P8 y& W + @0 y6 q+ L6 S* b( X ![]() Project Manager这里,Project设置好工程路径、工程名称、开发环境。) {0 v( |: E9 I8 d6 ? ![]() Code Generator这里,比默认多勾选一个生成单独的.c和.h文件,不然一堆代码全在main里面不好找。 : Z7 C3 D+ A* v4 `! y0 d( i ![]() Advanced Settings这里只用了RCC,库选择HAL。 5 t/ d0 E* q* Y4 l3 e ^3 j5 E* t ![]() 保存工程。 3 c- k% t; L# E9 z- z% j7 b ![]() D: ?8 A" m- w7 c. R3 f 点Generate code生成代码。* `6 @5 K$ H$ d, [ / ]. I7 X! }) x$ `8 u% v2 L0 Y ![]() 1 N6 Q: e$ s. ~& l9 R9 ]4 o ![]() - u7 ?; Q" e$ O* Y+ g: W4 I6 ` 生成代码之后,可以直接点Open Project打开工程。 + c; V( O+ g& z! B$ t* b" j ![]() ![]() 查看生成代码的文件夹。 其中,Core是生成的初始化代码,Drivers是ST的库,MDK-ARM存放keil-MDK工程相关文件。 + v; z+ a: B1 R' V" m% R7 r ![]() 6 L, N, F3 M5 v+ p( F9 [ 二、在keil编译工程( A) G% d" @; j3 } 之前cubeMX生成的代码,可以直接从cubeMX点击打开,也可以从MDK-ARM文件夹中点击工程文件打开keil工程。/ N: u9 ?- J2 I9 }2 m% w ![]() 工程的设置是直接被设置好的。 ( G- q- t3 W. B ![]() ![]() 1 m& ]: K5 R( ]" @% v8 A 直接点编译进行编译。2 C3 D1 n/ Y1 N & x( |- z* S$ G! ?8 {& V6 u: [' l ![]() 0 n @/ r. x2 I" m2 b/ J8 l; s( @ 编译通过。4 m5 N* X/ Z6 v* ?# I/ N" p 1 Y1 c1 p+ d3 ~/ H" [5 f ![]() / E7 Q2 }/ {5 E8 r# B 三、遇到双击工程打不开map的问题: I" f; t! @9 W- ^- Q 编译通过后,双击工程名打不开map文件,网上查阅别人的文章后发现,由cubeMX自动生成的工程中,output中设置生成输出文件的路径为工程文件目录的下一级文件夹,而listing中设置的路径是工程文件的目录,两者不是同一个目录,所以直接双击打不开,在listing中设置修改目录为与output中输出文件的目录一致就解决了。 . x! H3 Y1 m( R6 c- p' i4 O output中是工程目录下的test文件夹(我前面建工程时叫的test)- ?8 Q# V' [; H; j6 M: { ![]() 7 [8 H; ~- `) W" N' ^- i/ b$ { listing中的路径直接是工程目录。 ![]() , ~7 h% {9 z2 ]' F 修改后解决,可以直接双击工程名打开map。% T, P3 G2 b3 |% ~ ![]() ![]() 5 j: \5 _* [1 u, u) T( W8 y |
【2025·STM32峰会】GUI解决方案实训分享2-编译运行TouchGFX咖啡机例程(含桌面仿真)
实战经验 | Keil工程使用NEAI库的异常问题
STM32 ISP IQTune:真正零门槛的免费ISP调整软件
【经验分享】STM32 新建基于STM32F40x 固件库的MDK5 工程
意法半导体MCU双供应链策略,打消中国客户后顾之忧
【经验分享】基于STM32使用HAL库实现USB组合设备CDC+MSC
2024意法半导体工业峰会:赋能智能电源和智能工业,构筑可持续未来
ST推出灵活、面向未来的智能电表通信解决方案,助力能源转型
意法半导体 x Qu-Bit Electronix:推动新一轮的数字声音合成革命
从STM32 MPU产品看嵌入式系统中微处理器的新变化