你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

修改cubemx,重新生成工程,改变的原有添加的代码。

[复制链接]
yymzx66 提问时间:2018-7-5 09:10 /
cubemx我最近才开始使用。
       现在碰到这样一个问题:之前已经有人使用cubemx生成了一个工程,并且已经完成了。但是最近需要增加新功能,外设比原先增加了。我重新修改了cubemx文件,重新生成了工程,原有工程里面自己的代码有些被删除了,但是无法知道哪里被删除了。
       所以,在此想请教一下解决方法。希望能重新修改了cubemx文件后,只进行添加或仅修改自带生成的代码部分。不要修改我自己编写的部分。
      又或者修改了cubemx文件后,重新生成的工程能对修改的地方进行一个明显的提示。


      不知道我的想法能否实现, 希望各位能够提供自己宝贵的经验。谢谢!
<
收藏 评论14 发布时间:2018-7-5 09:10

举报

14个回答
jjbboox 回答时间:2018-7-5 10:41:56
本帖最后由 jjbboox 于 2018-7-5 10:44 编辑

如果原来的代码是按照cubemx的规范来写的话,按下面的设置就可以保留所有用户代码。
1111.png

评分

参与人数 1蝴蝶豆 +3 收起 理由
zero99 + 3

查看全部评分

电子星辰 回答时间:2018-7-5 09:22:55
例如像
  /* USER CODE BEGIN Init */

  /* USER CODE END Init */
这里面的,就不会被修改。或者你可以自己新建文件

评分

参与人数 1蝴蝶豆 +3 收起 理由
zero99 + 3

查看全部评分

yu0405jie 回答时间:2018-7-5 09:15:44
cubems生成的代码中,会添加一些注释,告诉你在哪里添加自己的代码不会被删除

评分

参与人数 1蝴蝶豆 +3 收起 理由
zero99 + 3

查看全部评分

strang 回答时间:2018-7-5 09:26:17
cubemx生成的代码英文注释中,在USER CODE BEGIN和USER CODE END之间添加你自己的代码,重新生成工程,就不会被抹掉你自己的代码

评分

参与人数 1蝴蝶豆 +3 收起 理由
zero99 + 3

查看全部评分

jakecumt 回答时间:2018-7-5 09:32:17
用一个比较工具,比较一下两个工程的差异,适当的增减应该能解决你的问题吧

评分

参与人数 1蝴蝶豆 +2 收起 理由
zero99 + 2

查看全部评分

xiajintaord 回答时间:2018-7-5 09:39:51
要养成良好的习惯

使用这种自动生代码成工具,建议将自己的代码放在自己建立的文件里面,与自动生成的代码分隔开,只留下调用接口或者使注册回调函数的方法,尽量降低代码的耦合度;

等你的工程越来越大,需求改动越来越多的时候,强耦合的代码再加上自动生成工具会降低你的工作效率,苦不堪言。

评分

参与人数 1蝴蝶豆 +3 收起 理由
zero99 + 3

查看全部评分

select326 回答时间:2018-7-5 09:42:36
按照CubeMX的规范放置代码,就不会有问题。另外,可以把你的代码include 进去。

评分

参与人数 1蝴蝶豆 +2 收起 理由
zero99 + 2

查看全部评分

wolfgang2015 回答时间:2018-7-5 10:34:03
给你介绍一个良好的习惯,
1、用cubemx生成工程,不要直接使用;
2、代码上传本地SVN;
3、用编译工具新生成工具,然后把SVN上Cubemx的文件移植过来;
4、本地代码及时up到SVN上。

评分

参与人数 1蝴蝶豆 +3 收起 理由
zero99 + 3

查看全部评分

疾风 回答时间:2018-7-5 10:42:59
养成及时备份的习惯,
代码要写在USER CODE  定义的区域内,

评分

参与人数 1蝴蝶豆 +2 收起 理由
zero99 + 2

查看全部评分

12下一页

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版