pcba(printed circuit board assembly)是指将电子元器件安装在印刷电路板(pcb)上,形成一个完整的电子产品的过程。pcba是电子行业的基础,几乎所有的电子设备都是由pcba组成的。pcba的质量和性能直接影响了电子产品的寿命,速度,稳定性和可靠性。
pcba的设计和制造是一个复杂的过程,需要经过多次的修改和优化,才能达到最佳的效果。 因此,对pcba进行版本管理是非常必要的 ,以便于区分不同的设计阶段,追踪问题和改进,匹配软件功能和客户需求等。
pcba的版本管理可以帮助开发者和维护者更好地控制和管理pcba的生命周期。
pcba的版本管理有多种方式,本文将介绍其中的六种,分别是:
gpio上下拉电阻方式
i2c扩展gpio方式
ad采样电压方式
flash保存方式
eeprom保存方式
otp保存方式
gpio上下拉电阻方式
这种方式是利用cpu的gpio(general purpose input output)引脚,通过连接不同的上下拉电阻,来表示不同的pcba版本。例如,如图1所示,如果有四个gpio引脚,那么可以表示16种不同的版本,从0000到1111,分别对应v0到v15。cpu只需要读取gpio引脚的电平,就可以知道当前的pcba版本。
这种方式的优点是:
1、成本低,只需要几个电阻,几分钱就可以搞定。
2、实现简单,只需要读取gpio电平即可。
这种方式的缺点是:
1、占用了cpu的gpio资源,如果需要同时管理pcb和bom(bill of materials)的版本,那么需要更多的gpio引脚。例如,如果要表示8种pcb版本和8种bom版本,那么至少需要6个gpio引脚,这对于gpio紧张的cpu来说是一种浪费。
2、需要注意电阻的选取,避免产生过大的漏电流或者电平不稳定的问题。
i2c扩展gpio方式
这种方式是利用一个i2c(inter-integrated circuit)扩展芯片,来增加gpio的数量,从而实现pcba版本管理。例如,如图2所示,如果使用一个8位的i2c扩展芯片,那么可以表示256种不同的版本,从00000000到11111111,分别对应v0到v255。cpu只需要通过i2c总线读取扩展芯片的寄存器,就可以知道当前的pcba版本。
这种方式的优点是:
1、解决了gpio资源不足的问题,可以表示更多的pcba版本。
2、实现也不复杂,只需要通过i2c通信即可。
这种方式的缺点是:
1、增加了硬件成本,i2c扩展芯片的价格大约在0.5到2元之间,对于低成本的产品来说是一笔不小的开支。
2、需要注意i2c总线的速度和稳定性,避免产生通信错误或者干扰。
ad采样电压方式
这种方式是利用cpu的ad(analog to digital)引脚,通过连接一个分压电路,来产生不同的电压值,从而表示不同的pcba版本。例如,如图3所示,如果使用一个3.3v的电源,那么可以通过调节r1和r2的阻值,来产生不同的电压值,例如0.5v,1v,1.5v等。cpu只需要通过ad采样,就可以知道当前的pcba版本。
这种方式的优点是:
1、只需要一个ad引脚,就可以实现pcba版本管理,如果cpu有多余的ad引脚,那么只需要两个电阻,成本非常低。
2、可以通过调节电阻的阻值,来灵活地设置不同的电压范围,表示更多的pcba版本。
这种方式的缺点是:
1、ad引脚不是每个cpu都有的,而且也是比较稀缺的资源,如果cpu没有ad引脚,或者ad引脚已经被其他功能占用,那么这种方式就不适用。
2、需要注意电压的精度和稳定性,避免误差和干扰。
flash保存方式
这种方式是利用flash(flash memory)中预留一段存储空间,来保存pcba版本的信息。例如,如图4所示,可以在flash的某个地址,写入一个字节的数据,来表示pcba版本。cpu只需要读取flash的数据,就可以知道当前的pcba版本。
这种方式的优点是:
1、硬件成本几乎为零,也不占用cpu的任何资源,版本信息占用的flash空间也可以忽略不计。
2、可以通过软件的方式,来灵活地设置和修改pcba版本,不需要修改硬件电路。
这种方式的缺点是:
1、可靠性是最大的问题,如果flash损坏,软件升级擦写flash,电磁干扰等原因,导致flash中的数据丢失,那么pcba版本的信息也会丢失。
2、需要设置成只读,不允许写,避免误操作。
eeprom保存方式
这种方式是利用eeprom(electrically erasable programmable read-only memory)中预留一段存储空间,来保存pcba版本的信息。例如,如图5所示,可以在eeprom的某个地址,写入一个字节的数据,来表示pcba版本。cpu只需要通过i2c或者spi等总线,读取eeprom的数据,就可以知道当前的pcba版本。
这种方式的优点是:
1、硬件成本较低,eeprom的价格大约在0.1到0.5元之间,也不占用cpu的太多资源,只需要一个i2c或者spi总线即可。
2、可以通过软件的方式,来灵活地设置和修改pcba版本,不需要修改硬件电路。
3、可靠性较高,eeprom的数据可以多次擦写,不易丢失,也不受电磁干扰的影响。
这种方式的缺点是:
1、需要注意eeprom的写入次数,避免超过其寿命,导致数据损坏。
2、需要注意eeprom的速度和稳定性,避免产生通信错误或者干扰。
otp保存方式
这种方式是利用otp(one time programmable)芯片,来保存pcba版本的信息。例如,如图6所示,可以在otp芯片的某个地址,写入一个字节的数据,来表示pcba版本。cpu只需要通过i2c或者spi等总线,读取otp芯片中的信息。
这种方式的优点是:
1、硬件成本低,otp芯片的价格大约在0.01到0.1元之间,也不占用cpu的太多资源,只需要一个i2c或者spi总线即可。
2、可靠性最高,otp芯片的数据只能写入一次,不会丢失,也不受电磁干扰的影响。
这种方式的缺点是:
1、不灵活,otp芯片的数据一旦写入,就不能修改,如果pcba版本有变更,就需要更换otp芯片,或者使用其他方式来表示新的版本。
2、需要注意otp芯片的速度和稳定性,避免产生通信错误或者干扰。
总结
本文介绍了六种通过软件来识别pcba硬件版本的方式,分别是gpio上下拉电阻方式,i2c扩展gpio方式,ad采样电压方式,flash保存方式,eeprom保存方式,和otp保存方式。
这六种方式各有优缺点,设计者应该根据自己的产品特点和需求,选择合适的方式。一般来说,如果gpio引脚足够,推荐使用gpio上下拉电阻方式;如果cpu有多余的ad引脚,推荐使用ad采样电压方式;如果gpio和ad都不够,可以考虑使用i2c扩展gpio方式或者eeprom保存方式;最后再考虑使用flash保存方式或者otp保存方式。
通过软件来识别pcba硬件版本,可以帮助开发者和维护者更好地控制和管理pcba的生命周期。
第一个C语言编译器的来源
瑞萨电子推出用于3、4级自动驾驶汽车前视摄像头的R-Car V3H SoC
联邦快递欲制定区块链物流行业标准 已启动“存储数据争议解决”试点项目
欧盟市场的电子电气产品使用回收图标
【璟丰机电】哈默纳科Harmonic精密减速机高性能齿轮箱系列型号及应用
通过软件来识别PCBA硬件版本的六种方式
VR技术,打开了进一步研究的大门,改变着一个又一个领域的未来
英特尔正式发布多款NUC迷你电脑
基于宽频带UHF RFID标签天线的研究与设计解析
锂电池保护板的主要功能(电池保护板原理图)
如何选择压力变送器
德国制造PK日本制造,“牛”在哪里
回顾嵌入式AI这个词 什么样的垂直场景更需要嵌入式AI
从4个角度,剖析人工智能和互联网的关系
WIFI智能机柜锁在数据机房的运用
有了它,谷歌超越苹果不是梦
铜混合键合的发展与应用(一):技术轮廓
如何估算纹波电压
MEMS技术在消费电子与无线设备市场杀出重围
怎样用树莓派制作Web服务器