vvhhbc1 发表于 2015-11-3 13:35:14

用STM32CubeEx的困惑

刚上手STM32CubeEx, 这个工具很方便,但目前遇到困惑,我的步骤如下:
1,用STM32CubeEx快速生成Keil5 项目, 其中芯片(我用的是stm32F0系列滴)及片内外设的初始化也全部自动生成了,其他芯片的话这些都是要去配置寄存器了,好爽!

2,打开自动生成的这个Keil5项目,添加自己的项目文件,编译通过
3,当再回到STM32CubeEx,做些更改,如调整管脚,之后点击’生成代码‘, ok
4,再次回到 Keil5项目, 发现, 刚才自己添加的所有项目文件全部没了!!!

每次通过STM32CubeEx自动生成,这个Keil项目中自己添加的项目文件都会全部删除, 一夜回到解放前!

怎么在这个STM32CubeEx自动生成的项目基础上,添加用户的其他项目文件呢?
有什么办法吗,向大家请教,盼能指点迷津,谢谢!


harvardx 发表于 2015-11-3 14:08:24

当然是没有了你重新自动生成了工程,

feiante 发表于 2015-11-3 14:17:46

是这样的,但是也不会回到解放前吧, 你要添加的文件还在,在添加一次就行了

星辰一方 发表于 2015-11-3 14:27:03

用户代码要写在规定的user code begin和user code end 之间,不能写在他处

vvhhbc1 发表于 2015-11-3 14:27:34

本帖最后由 vvhhbc1 于 2015-11-3 14:28 编辑

harvardx 发表于 2015-11-3 14:08
当然是没有了你重新自动生成了工程,
谢谢!
我现在采取了一个土办法。具体步骤是:
1,用STM32CubeEx自动生成了Keil项目,项目A
2,全盘拷贝这个Keil项目,生成项目B,并另起一个名字,在这个拷贝的项目文件夹内,
   1)增加自己的项目文件,
   2)打开项目B,在项目B中添加相关文件
   3)编译通过
3,当端口有变动,用STM32CubeEx更新,自动更新项目A
4,项目A和项目B比较,把项目A变动部分更新到项目B

这个办法非常笨拙,目前没有想到更好的办法。 所以,在此请教是否有解决良策,盼能指点,谢谢!

vvhhbc1 发表于 2015-11-3 14:36:02

feiante 发表于 2015-11-3 14:17
是这样的,但是也不会回到解放前吧, 你要添加的文件还在,在添加一次就行了 ...

谢谢!
文件还在,但只要STM32CubeEx重新生成代码, 再次进入这个Keil项目中,之前我好不容易在这个Keil项目中添加和设置好的
1)手工添加的项目文件(自己的项目文件),
2)项目的配置。
这些都丢掉了, 顿时好心痛,, 请问是否能有应对良策?谢谢,,,

wuweijie 发表于 2015-11-3 15:06:03

高人呐,厉害厉害

vvhhbc1 发表于 2015-11-3 15:45:12

星辰一方 发表于 2015-11-3 14:27
用户代码要写在规定的user code begin和user code end 之间,不能写在他处

谢谢!
做做实验可以,但一个具体项目的话,光添加些代码在user code begin和user code end 里面,恐怕不够。
特别是项目移植, Keil项目(或Iar项目)中肯定是要添加移植过来的诸多项目文件的。

还有什么好办法吗? 盼请能指点,谢谢,,

卡德加 发表于 2015-11-3 16:00:24

我也遇到过这种情况,这是我当时的办法,参考参考,有问题大家还可以多交流下。
https://www.stmcu.org.cn/module/forum/thread-603151-1-1.html

星辰一方 发表于 2015-11-3 16:09:06

vvhhbc1 发表于 2015-11-3 15:45
谢谢!
做做实验可以,但一个具体项目的话,光添加些代码在user code begin和user code end 里面,恐怕不 ...

里面不是有很多段的吗?begin0……end0;
.
.
.
begin4……end4
怎么会不够呢,每段之间是可以添加无数个函数的,而且你说的项目移植的话,你肯定有自己的xxx.c和xxx.h文件啊,这些文件添加到项目里面,是不会被覆盖的,也不会被修改呀,重生成之后还会在那的
页: [1] 2
查看完整版本: 用STM32CubeEx的困惑