工程开发中,版本管理是必不可少的部分,软件的版本管理非常方便,在代码中插入版本信息,目标文件重新再命名一下就搞定了。但是硬件的版本管理就麻烦很多了,因此很多公司(主要是小公司)基本就忽略了硬件的版本管理。这给后续的升级和维护带来了极大的不方便。
一、 硬件版本管理的优点
产品进行硬件版本管理,有以下的优点:
1. 可以方便进行质量跟踪,历史问题追溯,从而更新换代,优化升级。
2. 软件可以针对性的升级,可以通过硬件的版本区分软件功能或者是不同的客户;
二、 四种硬件版本管理的实现原理
1. 通过上下拉电阻配置实现
如下图1 所示,CPU通过读取外部的配置电阻上拉还是下拉,决定当前的硬件版本(PCB和bom的版本可以分别配置),例如四个下拉电阻全部焊接,四个上拉电阻全部不焊接,CPU四个IO引脚读取到的值为0000. 当前的版本就是V0版本。
![52c09e21dc28e306ce0707a72d4f4bd1.png](https://img-blog.csdnimg.cn/img_convert/52c09e21dc28e306ce0707a72d4f4bd1.png)
图1 :上下拉电阻模式
2. 通过I2C扩展GPIO实现
如下图2 所示,有时候设计者选用的CPU的GPIO引脚不够用,又有io扩展芯片的情况下下,可以使用以下的方法