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

修改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扩展软件包
关注我们
微信公众号二维码 微信公众号
手机版二维码 手机版