OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3471|回复: 11

关于程序的版本管理方法

[复制链接]

11

主题

60

帖子

0

精华

初级会员

Rank: 2

积分
128
金钱
128
注册时间
2015-10-9
在线时间
24 小时
发表于 2016-10-21 12:36:32 | 显示全部楼层 |阅读模式
10金钱
在做两个项目,使用的板子是同一块,其中A项目的功能比较完整。B项目只需要在A项目上删除部分功能,再稍加修改即可使用。想用一个程序来实现两个项目的功能。现在想到的方法只有宏定义。   但是宏定义前期比较麻烦。咨询一下各位大哥有哪些比较好的版本管理方法?

最佳答案

查看完整内容[请看2#楼]

有能力写就用宏,没能力就分开来,方法是死的,选择方法的人是活的,选择适合自己的。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

26

主题

280

帖子

1

精华

高级会员

Rank: 4

积分
908
金钱
908
注册时间
2013-8-2
在线时间
279 小时
发表于 2016-10-21 12:36:33 | 显示全部楼层
有能力写就用宏,没能力就分开来,方法是死的,选择方法的人是活的,选择适合自己的。
博客:http://blog.csdn.net/feilusia
CC2541群(127442605);CC2640群(557278427);
Android群(541462902);STM8/STM32群(164311667);
Linux群(512598061);职场交流群(450154342);
回复

使用道具 举报

3

主题

238

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1366
金钱
1366
注册时间
2016-5-26
在线时间
1698 小时
发表于 2016-10-21 12:42:09 | 显示全部楼层
好奇为什么要用一个程序实现?

以 Keil MDK 为例,可以在一个 Project 里做两个 Target,两个项目有区别的部分分成不同的文件,两个 Target 分别屏蔽掉不需要的文件。
淘汰人的从来是工具而不是年龄
嵌入式的冷知识屋 blog.csdn.net/k_o_carnivist
回复

使用道具 举报

21

主题

387

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1043
金钱
1043
注册时间
2016-9-8
在线时间
213 小时
发表于 2016-10-21 13:10:02 | 显示全部楼层
版本号一般都是后烧录进去,也可以软件升级发送数据来实现
shop60994719.taobao.com
回复

使用道具 举报

2

主题

60

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
206
金钱
206
注册时间
2016-7-26
在线时间
33 小时
发表于 2016-10-21 13:35:43 | 显示全部楼层
使用串口指令屏蔽多好,发指定指令开启相应功能,so.....
回复

使用道具 举报

70

主题

6761

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
13100
金钱
13100
注册时间
2012-11-26
在线时间
3811 小时
发表于 2016-10-21 13:47:52 | 显示全部楼层
个人喜欢一块板子对应一套程序,宏定义区别板子,如果板子硬件版本太多,到最后自己都会被搞晕,更别提以后如果是别人来维护
回复

使用道具 举报

21

主题

387

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1043
金钱
1043
注册时间
2016-9-8
在线时间
213 小时
发表于 2016-10-21 13:50:00 | 显示全部楼层
jermy_z 发表于 2016-10-21 13:47
个人喜欢一块板子对应一套程序,宏定义区别板子,如果板子硬件版本太多,到最后自己都会被搞晕,更别提以后 ...

汗,,成千上万块板子你怎么玩??
shop60994719.taobao.com
回复

使用道具 举报

70

主题

6761

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
13100
金钱
13100
注册时间
2012-11-26
在线时间
3811 小时
发表于 2016-10-21 13:52:48 | 显示全部楼层
密耳 发表于 2016-10-21 13:50
汗,,成千上万块板子你怎么玩??

该怎么玩就怎么玩,总比被搞晕好
学无止境
回复

使用道具 举报

21

主题

387

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1043
金钱
1043
注册时间
2016-9-8
在线时间
213 小时
发表于 2016-10-21 13:59:08 | 显示全部楼层
jermy_z 发表于 2016-10-21 13:52
该怎么玩就怎么玩,总比被搞晕好

我们量产的板子,都是刷一个固件进去。测试时再通过上位机软件通讯烧录进ID号,,如果在刷机的时候烧不同的程序。不得疯啊。。。。难道你有不同的做法?
shop60994719.taobao.com
回复

使用道具 举报

11

主题

60

帖子

0

精华

初级会员

Rank: 2

积分
128
金钱
128
注册时间
2015-10-9
在线时间
24 小时
 楼主| 发表于 2016-10-25 12:23:34 来自手机 | 显示全部楼层
目测  还是没有比较好的方法
回复

使用道具 举报

19

主题

430

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1341
金钱
1341
注册时间
2016-4-22
在线时间
187 小时
发表于 2016-10-25 17:48:15 | 显示全部楼层
不同项目的另立一个工程,免得硬件什么的不一样,还要区别对待。
软件所有功能模块化,然后支持模块授权方式,只有授权了才出现。就是说要动态的。这样客户也可以自己选功能,价格灵活调整。
伤情最是晚凉天,憔悴斯人不堪怜。
邀酒摧肠三杯醉,寻香惊梦五更寒。
钗头凤斜卿有泪,荼蘼花了我无缘。
小楼寂寞新雨月,也难如钩也难圆。
回复

使用道具 举报

0

主题

6

帖子

0

精华

初级会员

Rank: 2

积分
60
金钱
60
注册时间
2016-10-13
在线时间
9 小时
发表于 2016-10-25 21:09:29 | 显示全部楼层
功能相似的就用宏定义来做区分,单独写一个h文件用于放宏定义开关,然后在相关代码中引用该文件,根据宏定义的不同编译不同的代码。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-24 11:32

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表