=Start=
缘由:
从「USB快充,原来有这么多 血雨腥风。。。」这篇文章开始知道的「硬件十万个为什么」这个公众号,在公众号的下方看到的「硬十宝典」这篇导航文章,真的如其介绍所说——硬十在手,别无所求。虽然我不是做硬件的,对硬件了解的也不多,但光看目录结构(还有作者之前写的文章质量)就能知道内容肯定很不错,在此摘录一下这篇文章,方便自己学习参考。
正文:
参考解答:
#原文如下#原文还在不断更新中,如果想要看最新版本的,可以点击下方链接进行查看。
1、电源类
1.1 电源基础
1.2 开关电源
螺旋线圈输出电感在低压大电流DC-DC转换器中的应用
1.3 线性电源
1.4 电池
1.5 电源保护
1.6 PoE
PoE——美信PoE+电路为用电设备(PD)提供13W至70W功率
1.7 电源环路稳定性
1.8 无线充电技术
2、时钟类
3、处理器类
处理器系列(10)——为什么 CPU 只用硅做,而不用能耗更低的锗做?
处理器系列(11)——PowerPC为什么会没落?
处理器系列(12)——线程,进程,程序的区别
处理器系列(13)——多核处理器骗局
处理器系列(14)——ARM MMU工作原理剖析
性能比ARM高,但功耗比它低,关键还免费!这款处理器牛!
GPU和CPU对比
GPU
4、存储器类
4.1 SSRAM
4.2 SDRAM、DDR、DDR2、DDR3、DDR4
SDRAM的 预充电(Precharge)和 刷新(Refresh)
DDR4容量大速度快还不发烧?
4.3 Flash
4.4 其他
比NAND速度快1000倍以上,寿命是NAND的1000倍以上
5、信号完整性
仿真——你忽略了开发中的这个环节,所以导致你总改板!
电源完整性
6、射频
【一起来玩ble+zigbee+6lowpan!】——TI-CC26xx硬件设计
高精度室内定位技术——UWB
7、音频
8、逻辑类
为什么会有建立时间(Setup Time)和保持时间(Hold Time)?
亚稳态分析
深度学习的三种硬件方案:ASIC,FPGA,GPU;你更看好?
为什么CPU主频比FPGA快那么多,但是却说FPGA可以加速?
芯片
9、分立器件
9.1 运放
9.2电容
9.3继电器
9.4电感
9.5电阻
9.6舵机
9.7二极管
9.8磁珠
9.9 ADC
9.10三极管
9.11 MOSFET
9.12LED
找个男朋友换灯泡?你用上LED之后只能找硬件工程师了(系列2)
9.12其他
10、接口类
11、传感器
Time of Flight(飞行时间技术)——三维手势识别
12、PCB设计
前华为互连部技术老屌丝回忆之(三)—-电源完整性(PI)仿真
前华为互连部技术老屌丝回忆之(四)—-跨界思维:掌握一门高效编程语言SKILL
前华为互连部技术老屌丝回忆之(五)—-基础业务部CAD传输组传记
13、工程类
13.1 结构设计
13.2 硬件测试
13.3 工艺
13.4 EMC
13.5 热设计
13.6 生产
13.7 ICT
13.8
14、嵌入式软件类
15、DFx类
15.1可靠性
案例
可靠性案例分享(2)——AF标准PoE模块在某设备中重启的分析
可靠性案例分享(3)谐波过高导致 UPS 辅助电源板频繁损坏
降额
可生产性
可安装性
当他爬上“监控立杆”时,三只步枪指向他。——研发要思考现场交付的困难
可维修性
可维修性评分为极低,surface 拆机
16、流程类
17、工具类
深入理解:热焊盘与反焊盘(Thermal Relief 及 Anti Pad)
18、硬件系统
无人机
物联网
视频
机器人
智能硬件
19、电路基础
(十)未用管脚处理
20、基本功
21、开源硬件
22、学习华为研发系列
漫谈华为是怎样开发硬件的——之三专题分析
漫谈华为是怎样开发硬件的——之四 器件选型
漫谈华为是怎样开发硬件的——之五白板讲解
华为是怎样开发硬件的——之六问题攻关
华为是怎样开发硬件的——之七开会
华为是怎样开发硬件的——之八兄弟文化
华为是怎样开发硬件的——之九测试
华为是怎样开发硬件的——之十 AV分类与硬件的知识管理
华为是怎样研发的(16)——如果初创公司生搬华为流程,死定了!
华为是怎样研发的(37)——由”华为红包助手”谈以客户为中心
看看HW的硬件类技术任职标准,就知道为什么要努力学习“可靠性”
丰田VS 华为,“精益开发”VS”IPD”——内部学习与持续改进
23、研发管理
“搞事情”之前,先“立项”。
24、心得与总结
深度学习的三种硬件方案:ASIC,FPGA,GPU;你更看好?
写给即将填报“电子”“通信”专业的同学们
为什么这些熊孩子长大以后搞电子(弱电),不搞强电——我终于知道了
参考链接:
=END=
《“[collect]硬十宝典”》 有 1 条评论
硬件是怎么做出来的?带你从软件的视角,揭开神秘面纱
https://www.v2ex.com/t/1005031
`
2023 年,作为软件开发出身的我,做了两款智能硬件产品,注册了两个专利,「硬」气了一把。
你是否也喜欢鼓捣些硬件,是否对电路板是如何做出来的感到好奇?欢迎跟我一起,揭开硬件开发的神秘面纱,看看硬件工程师如何零基础入门。
# 硬件开发的基本流程
首先声明,这里所说的硬件,更偏向于 ARM 单片机及嵌入式开发。我不是硬件工程师出身,属于边学边干;可正是如此,我的视角可能更贴近真实、更容易帮你上手。如果哪个环节有更好的做法,欢迎行业内的朋友指正。
0 、明确需求
硬件领域很大,又很繁杂,从何说起呢?这是个问题。
首先,还是从需求出发。明确产品要实现哪些功能、有哪些约束条件,有了这些硬性标准,问题的边界就被大大缩小了。
这里,以它适智能跑轮为例,从头到尾,走一遍硬件研发的历程。先说一点,产品的研发不是一条直线,而是不断迭代、甚至重头再来的过程。为了描述方便,这里假设一切是一帆风顺的,只按最终的方案来描述。不过,考虑到商业性,一些地方不会说太细。
1 、芯片选型
它适智能跑轮,核心的需求,是记录数据,然后通过蓝牙传递出来;主要的约束,是低功耗、长待机。那么这颗芯片:
性能不能太差,要能支撑起蓝牙连接和数据传输;
性能也不用太强,不然会增加功耗;
最好能以不同的功耗工作;不工作时休眠,并且可以被蓝牙连接唤醒;
要能存储足够多的数据。当然,也可以用外围存储芯片,但那样既会增加成本,也会增加 PCB 的面积和复杂性,所以最好能集成进来。
然后,就是其他核心元件,包括蓝牙芯片、霍尔传感器等。
之后,就是确定产品的交互方式,比如显示、按键、声音等。
再之后,就是确定电源方案。电源对于整个电路设计,是非常重要的。事实上,对最终的电路来说,有一小半的元件,都是电源相关的。具体到这个产品,要支持锂电池供电、Type C 充电、LDO 降压稳压、测量锂电池电压等等。
到这里,主要的芯片及方案就基本确定了。接下来,就是搭建具体的电路、设计 PCB 。
2 、设计电路图
这时,就要面临 EDA 的选择。所谓 EDA ,类似于软件开发中的 IDE ,就是电路设计所需要用到的软件。这里我选择的是 立创 EDA,它是国产的、免费的,简单易用。这对于个人或小团队开发来说,非常重要。商业 EDA 是非常昂贵的;当然,我知道有所谓特别版。但作为软件开发出身的我,对正版、免费有天然的亲切感。
确定好工具后,可以开始设计电路图了。
设计电路图,主要靠两样:电路基础知识、芯片数据手册。基础知识自不必说,比如电阻、电容、三极管、MOS 管等基础元件的使用。对于复杂的芯片,主要是参考其数据手册的典型电路,针对自己具体的场景进行调整。
这一步还挺好玩的,把一堆元件摆出来,然后用线连啊连,像正极连正极、负极连接地,连着连着就好了。当然,步骤是这么个步骤,实际不会这么容易。
一般的电路图,大概长这样:
3 、设计 PCB
电路图设计好之后,就是设计 PCB ,也就是印刷电路板。这一步同样考验功力,也更加耗时。事实上,不考虑芯片选型的话,PCB 布板所花费的时间,比电路图长很多。
这一步,说简单也简单。就是确定后电路板的外尺寸后,把所有元件排排好;并参照电路图,把各元件通过走线连接起来。
最直接的难点是布线。不考虑多层板的话,电路板相当于一个平面,而平面上的线是不能交叉的。这使得必须很恰当地摆放元件,才能避免交叉。有时,还得反向修改电路图。当然,多层板可以改善这一点,但成本高,且设计难度加大。如非必要,常见的还是用双层板,也就是有正反两个面可以走线。
当然,PCB 板还有很多其他难点和要注意的地方,比如要适配外尺寸及开孔、天线及电磁屏蔽、散热、避免回路、差分信号线等等,这里就不展开了。
一般的 PCB 板,大概长这样:
4 、打板
电路板设计好之后,就可以 制作 PCB,俗称打板。这里依然推荐嘉立创,每月有两次免费打板的机会,付费也只是 20 元起;而且很快,最快隔天就可以收到。
打板之后,就要焊接元件。这里又面临一个选择,要么是让嘉立创这样的工厂替你完成 SMT 贴片,要么自己焊接。二者的优缺点很明显:自己焊,省钱、灵活、不用等,但花时间,且一些很小、引脚很多的元件,不好焊;第三方 SMT 则刚好相反。
一般来讲,前期、以及简单的电路板,可以自己焊;后期还是倾向于 SMT 服务。
焊接好元件后,就类似这样:
5 、刷固件
电路板制作好后,就要刷固件。当然,有些简单的电路,是不需要刷固件的。刷固件,就相当于给硬件装个操作系统。这里暂时略去固件的开发。
具体的,电路板上留刷机接口,配合专用的刷机工具、上位机,就可以将固件写入芯片的 Flash 存储。
6 、电路测试
刷好固件后,就要开始测试。简单的,就是先测试下正负极电阻,看有没有短路。没问题可以上电,看电路有没有按预期工作。如果有预留测试点,就测量测试点的电压等。也可以借助示波器等工具进行测量。
如果遇到问题,不要慌,这太正常了。一般来讲,就是先缩小问题的范围。可以用拆焊等方式,去掉不必要电路的影响,只看出问题的那部分,方便排查。
对于固件的测试,可以像黑盒一样观察硬件是否按预期工作,也可以像白盒一样进行调试。只是硬件的调试,远没有软件随便加断点那么轻松。
定位问题,找出解决方案,就可以进行下一次制板。当然,也可以根据实际使用中的不便或问题,对电路进行改进。
7 、制作原型
经过几轮迭代,电路板基本稳定,可以组装成原型机,开始使用场景的测试。
这时,通常要制作产品的外壳。最好自己有一定建模能力,这样可以设计产品的外壳、3D 打印,方便很多。
如果只是简单的外壳,可以用嘉立创的工具,可以比较简单地生成 3D 模型。如果有团队,可以和同事一起配合进行设计。如果已经有外观设计,就可以进行结构设计。比如,如何固定电路板、如何暴露交互接口等。
8 、量产电路板
假设经过一段时间测试,原型通过了,产品也到了规模化生产阶段,就要开始批量生产电路板了。
通常,不是重新上传设计文件下单,而是返单上一次被验证过的电路板。这样更可靠,避免手抖出错,导致批量生产的电路板报废。
电路板批量生产完后,还面临一个繁琐的流程:刷固件。之所以说繁琐,主要还是量。
试想一下,如果刷一个电路板需要 1 分钟,听起来不多吧?可要刷 1000 片呢,那就是 16 小时。不吃不喝,从早上 6 点,刷到晚上 10 点,吓人不。当然,实际没这么慢,但基本是这个数量级,快不了太多。
9 、生产、包装、发货
然后,就可以交付给工厂,进行包装生产了。继而转发至仓库,用户在电商平台下单后,就可以快递出去了。
等用户收到后开始使用,这时能做的,就是 双手合十,祈祷不要出问题。因为一旦出问题,大概率不像软件一样,升级个版本就能解决,很可能要召回。
说到这里,就要提一个话题:OTA ,就是用户可以远程升级固件,来解决问题、或增加功能。这个其实很重要,尤其是在前期、尚未经过大规模用户实测时。OTA 可以在不召回的情况下,解决一部分问题,减少损失。
10 、十全十美
如果一切顺利,用户用起来很开心,满足了实际需求,带来正面评价时,就是 产品人最开心的时刻。
至此,就是硬件产品的基本流程。
`