V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
quietjosen
V2EX  ›  分享创造

硬件是怎么做出来的?带你从软件的视角,揭开神秘面纱

  quietjosen ·
atjason · 303 天前 · 18036 次点击
这是一个创建于 303 天前的主题,其中的信息可能已经有所发展或是发生改变。

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 、十全十美

如果一切顺利,用户用起来很开心,满足了实际需求,带来正面评价时,就是 产品人最开心的时刻

至此,就是硬件产品的基本流程。

硬件开发的一些故事

上面只是走马观花地介绍硬件的基本流程,挂一漏万。下面补充一些细节,解释下为什么 硬件工程师通常发量不多

如何上手硬件开发

玩芯片的第一步,都是点亮一颗灯;这个操作,相当于软件领域中打印出 Hello World。当然,做得多了,总有「点亮」芯片 的时候,哈哈。

最好边学边练,做些小东西练手。

  • 比如,我第一个做给自己用的硬件工具,是 IoT Power 电源转接头。
  • 比如,制作批量刷机工具,提高生产效率。
  • 比如,制作小的 PCB ,记录电池放电过程。

总之,制作自己用得上的小工具,是不错的开始

从软件和生态上来讲,可以从 Arduino 入手。相对复杂的,就是树莓派以及各种衍生派。

再说芯片选型

芯片选型非常重要,最考虑经验、能力。而且一旦定了,之后基本不太可能会改;如果改,意味着要兼容两套方案、非常恰当地处理芯片及产品库存,总之很麻烦。

芯片的生态很重要。如果一家公司的芯片被广泛使用,通常意味着它更成熟,隐藏的问题更少。如果选一家小厂的芯片,可能看起来更便宜,但配套的开发软件不好用,市场上不容易找到使用该芯片的开源方案,等等。更关键的,可能有隐藏的问题。而这个问题,一旦量产后才发现,将是非常痛苦的:召回的话,血亏;不召回的话,会有持续不断的用户问题。像 STM32 、兆易创新 GD32 这些系列,都是比较成熟的选择。

还有一个问题,就是 开发效率与运行效率的平衡。对于电脑或手机上的软件开发,通常不需要担心性能问题,CPU 、内存、电量管够。而单片机开发,则没这么幸运了。通常,嵌入式使用 C 语言开发。可惜,实在不想这把年纪了,再去啃 C 语言。

最后选择了 合宙 Air101 这颗主芯片。很大的原因,是它支持 LuatOS 开发。简单地说,就是在芯片上运行了一个 Lua 虚拟机,或者说运行环境。接下来,使用 Lua 这门脚本语言,就可以调用库函数,快速完成生产代码的开发。关键的,它还支持 OTA 升级。主流嵌入式操作系统 RTOS ,包括μClinux 、FreeRTOS 等。

有时感觉,硬件产品不是做出来的,是攒出来的;从巨大的元件库中选型,各种排列组合,最后出产品。

配件采购

芯片的采购也比较关键。尤其到后期,产品已经上市,准备批量返单时,如果发现一个关键的元件缺货了、涨价了,就很头痛。如果换芯片,又要有比较长周期的测试。

延伸来说,在硬件众多配件中,哪怕缺少一个螺丝,也会决定最终产品能否量产。过多屯货,又会压资金;之后如果换方案,很可能屯的芯片就无用了。因此,供应链管理很关键。比如,对于汽车这种有 N 多配件的产品来说,供应链管理的难度极大。

说说焊接

做硬件,手工焊接是基本功。虽然嘉立创这类平台,打样已经比较便宜了。但在开发阶段,频繁测试,花费还是不小。更关键,来来回回比较花时间、影响效率。很多时候,还是得撸起袖子自己焊。

焊接中,植锡、放元件,是很枯燥的。风枪一吹,爬锡过程很解压。小元件、多引脚的连锡,是最头痛的。

当然,还有 焊台最佳伴侣:烫伤膏,别问我是怎么知道的…

硬件佬工具多

硬件佬有很多配件、工具,比如各种型号的电容电阻等元件,万用表、示波器、功率计、焊台等。

电压电流这些,肉眼是看不见的,需要工具来测量。

  • 比如,同样是 5V 的电源,有的纹波大、有的小;
  • 比如,标称是 12V 2A 的电源,真到了 2A 的大负载,是不是会掉电压;
  • 比如,测量上电时序。

原型到产品

对于一款硬件产品,电路板只是其中一个环节,作为一款完整的产品,要考虑的东西还有很多。比如,包装、说明书、宣传文案配图视频、生产备货、等等。

产品原型做出来,离规模化上市,还差很远。什么东西一上量,性质就变了。

工厂生产,有很多不可控的因素,有很多妥协。事实上,初期设计 100 分的产品,最终批量上市时,能妥协到 70 分以上,已经很不错了

第一次批量生产固件,还是很慌的。可能电路设计有问题,也可能生产过程中有缺陷,担心投入的真金白银,变成无用的电子垃圾。

做了硬件,真的相信,第一代产品通常是有问题的。硬件比较复杂,使用环境和方式多种多样;很多问题,只有在用户使用过程中才能发现。而发现了问题,很多时候无法通过固件升级来解决,只能寄希望下一代硬件改进。

当然,如果大家都不支持第一代产品,也就不会有第二代。这世界总需要有人第一个吃螃蟹,也时常奖励吃螃蟹的人,看大家怎么选择了。

硬件抄袭

抄袭哪都有,硬件也一样,术语叫 抄板。怎么应对呢?很难。

打磨丝印,算是比较基础的操作。更有效的,是开发有固件的硬件,也就是硬件里是有代码、有固件的,这种就不好直接抄。

物理开关

硬件很难避免物理开关。本来想,硬件做得优雅,就不需要物理开关。现在看,意外情况总是有,还是要考虑售后的问题。认怂,给智能模块加个物理 Reset 开关。其实,很多硬件设备上都有此类开关,比如路由器就比较常见。

数字量与模拟量

软件与硬件的视角不同。

在软件人眼里,0 就是 0 ,1 就是 1 ,这不是再清楚明白不过的(当然,这里考虑的是整形数、不是浮点数)。进而,这也是一般人的理解。

在硬件人眼里,还真不是。像浮点数,1 可能是 0.998 ,也可能是 1.02 ,也可能是 > 0.5 。或者说,所有的值都有波动、有误差、有范围的。

嵌入式硬件的局促

比如,在存储空间很小的芯片中写代码,会遇到这样的问题:需要考虑 2100 年后的事吗?

如果需要,则需要存储完整的年份,比如 2023 ;如果不需要,则可以省点存储,比如只存 23 。

说说蓝牙通讯

BLE 蓝牙传输比较慢。实测有一次通过蓝牙传输 552KB 的文件,用时 7 分钟(436s)。并且,蓝牙不稳定、传输的可靠性不高;传输过程中,很容易出现丢数据、传错的情况。

硬件中诡异的问题

由于看不见摸不着,而电路又以光速运行,很容易产生诡异的问题。

  • 比如,有一次电路接线完全正确,死活不干活。最后通过万用表测量才发现,其中一根面包线是坏的、不通电的,我去
  • 比如,钰泰 ETA6093 ,连接电池,什么也不做,就会有很多尖峰电流,分钟平均有 120uA ,使得待机时间明显缩短。后来,问了原厂的技术支持,才知道本来就是这样的。如果要低功耗,只能选择其他型号。倒,之前屯的芯片都用不上,又要开始选芯片了。
  • 比如,测量电路中,如果负载有大电流、大负载,会产生比较大的压差,会明显影响测量结果。有时,电源线的长短,都会明显影响测量结果

这些问题,很多是自己经验不足(当然,没有谁天生经验就足,都一个一个坑踩过来的),有的是芯片本身有问题,有的数据手册压根没介绍,等等。

LED 不为人知的细节

不同颜色 LED 的功耗差异非常大。单从电流上看,R/G/B 三者的电流大概是:1.5mA/1mA/0.8mA 。但事实上,在此电流下,三者亮度大概是 G >>> B > R 。相同亮度下,绿色 LED 是最省电的

多一个能力,就多了一扇窗

和已有能力组合,可以增加很多可能性

  • 比如,家里燃气热水器坏了,我可以更换其中的风压开关;
  • 比如,电动车没有电子报警,我可以装一个;
  • 比如,鼠标的按键太吵,可以换个静音开关;
  • 比如,做一款智能音箱,连接 ChatGPT 回答问题。

兴趣归兴趣、炫技归炫技,作为一个产品,满足真实需求,才是最重要的。

欢迎入坑硬件开发

和纯软件开发相比,硬件有不一样的乐趣。入门并没那么难,值得你来尝试,欢迎入坑。

159 条回复    2024-01-06 15:03:56 +08:00
1  2  
israinbow
    1
israinbow  
   303 天前   ❤️ 6
LED 不为人知的细节源于纯粹的生物学之 550 纳米波长的绿光人眼最灵敏, 其他颜色需要更多的辐射功率才能达到同样的感官亮度 (逃

恭喜转行, 感受硬件开发的折磨.
quietjosen
    2
quietjosen  
OP
   303 天前
@israinbow 这解释专业 👍
MozzieW
    3
MozzieW  
   303 天前
借楼问个问题,之前想写个游戏给小朋友玩,类似电视的抢答,需要一个抢答按钮,想法是用蓝牙。但没有找到合适的,自己做的话麻烦吗?我想是需要一个蓝牙芯片,然后找个外壳?
quietjosen
    4
quietjosen  
OP
   303 天前 via iPhone
@MozzieW 按下按钮之后呢,只是本机灯亮,还是要和其它设备比如手机通信?
听起来还可以吧,不复杂。
guess0594
    5
guess0594  
   303 天前
楼主很棒啊
jucelin
    6
jucelin  
   303 天前
各个阶段怎么 debug 啊?
MozzieW
    7
MozzieW  
   303 天前
@quietjosen 就像电视台节目一样,大屏幕(家里的电视)展示比如诗词,小朋友一人一个按钮抢答。家里好几个娃,想着应该挺好玩的。

我想法是蓝牙或者 Wi-Fi ?我哪里可以找到对应的资料吗?
quietjosen
    8
quietjosen  
OP
   303 天前 via iPhone
@jucelin 固件也是可以断点调试的,但不方便。还要结合串口日志、外部测量工具。
好在简单的硬件,整体逻辑不复杂,比纯软件简单些。
quietjosen
    9
quietjosen  
OP
   303 天前 via iPhone
@MozzieW 怎么在电视上显示,是个问题。可以开发 TV App ,或者手机投屏。
蓝牙整体比 WiFi 简单。
蓝牙是一对一。如果多个按钮,简单点就连在一个设备上,然后通过蓝牙和 App 通信。
villivateur
    10
villivateur  
   303 天前   ❤️ 1
作为软硬件都开发的我,点个赞,写的不错
quietjosen
    11
quietjosen  
OP
   303 天前 via iPhone
@villivateur 感谢专业的赞🫡
MozzieW
    12
MozzieW  
   303 天前
@quietjosen 我做 Android 开发的,可以实现 TV 上的游戏。难点是需要一个外设(按钮),蓝牙或者 Wi-Fi 都行,加上协议我就能搞定其他的东西。
我看苹果蓝牙耳机可以分体了,把多个按钮当作一个蓝牙应该可以?我理解 Wi-Fi 更耗电,并且需要更复杂的系统
byte10
    13
byte10  
   303 天前
太酷啦,正好 12 月份要做一个自动化开门的工具,用到舵机,esp32 或 esp8266 ,arduino ,算是嵌入式开发入门吧😁。硬件是真的很好玩,但是里面的学问还是太多了。。。
qinjiang
    14
qinjiang  
   303 天前
点赞,通俗易懂
Felldeadbird
    15
Felldeadbird  
   303 天前
感谢分享,我也折腾过硬件,苦于时间精力,成了三天打鱼两天晒网。
xieren58
    16
xieren58  
   303 天前
硬件是好玩, 就是不赚钱...利润太低...
jaswer
    17
jaswer  
   303 天前   ❤️ 1
本科做硬件,研究生转算法,LZ 这心心得深有体会,硬件 debug 很有意思,软件问题,硬件问题,焊接问题,各种可能,慢慢排查
FreeEx
    18
FreeEx  
   303 天前
很厉害,感谢分享。
quietjosen
    19
quietjosen  
OP
   303 天前 via iPhone
@jaswer 恩,遇到问题很头痛,解决问题很开心;有多头痛就有多开心。
stucom
    20
stucom  
   303 天前
作为一个电子信息工程的本硕生,我转码了.....感觉硬件上手比软件更难
zomco
    21
zomco  
   303 天前   ❤️ 1
工作桌好整洁,不科学。
bocchi1amos
    22
bocchi1amos  
   303 天前
点个赞先
lqw3030
    23
lqw3030  
   303 天前
赞,用心了👍
sankooc
    24
sankooc  
   303 天前   ❤️ 1
想弄一个核手提箱外形的设备 里面有个红色按键 一按代码发布到正式环境
Ericality
    25
Ericality  
   303 天前
纯软件
之前因为智能家居入了硬件坑
最开始是用 esphome+esp32 搞配件模拟控制
后来发现限制太多 说明文档少 稳定性一般
于是转头搞了一堆面包线+板子搞硬件连接(控制配件+电磁继电器+指示灯+输出件)
成品倒是做出来了 但是因为都是明线连接 整个作品体积过大 不适合作为传感器接入智能家居
于是无奈干脆把 idea 分享给会硬件的闲鱼卖家(之前有偿托他帮忙做了个入侵式传感器改造)
于是现在闲鱼上都是我那时候的方案
而我 折腾一圈后觉得还是要珍惜自己的心情和精力
直接买成品🤡
luzemin
    26
luzemin  
   303 天前
quietjosen
    27
quietjosen  
OP
   303 天前
@xieren58 是的,硬件不太赚钱,不是因为更容易,而软件复制成本低,有规模化效应。
quietjosen
    28
quietjosen  
OP
   303 天前
@zomco 网上找的图,示意下 😂
quietjosen
    29
quietjosen  
OP
   303 天前
@sankooc 有点酷。

再弄个更大的手提箱,测试这个小手提箱工作是否正常 😅
quietjosen
    30
quietjosen  
OP
   303 天前
@Ericality 自己买别人做成的、自己的成品,什么心情 😂
shijingshijing
    31
shijingshijing  
   303 天前
@MozzieW 你这种需求,买个做好的通用型的蓝牙开发板最合适,自己不用焊板子,SDK 和资料也齐全,自己看看函数调用 API 就可以写软件了。
Ericality
    32
Ericality  
   303 天前
@quietjosen
hhhhh 有种这代码明明是我写的 却运行在别人的服务器上 然后我还要给他交钱的奇妙感
但是想一想出了 bug(硬件故障)找他修就可以了 以及核算成本的话他的利润很低
而且还省去了焊接调试的烦恼 也就还好吧
花钱买省心呗
而且后面自己劝自己: 毕竟方案也好 创意也罢 能落地才有意义 空有方案但是做不出来 不如就当作没有
大家都开心
(只有钱包受伤的世界达成了
shijingshijing
    33
shijingshijing  
   303 天前
楼主忘了最重要的部分,真正工业级的量产还要做 EVT 、PVT ,还要过 CCC ,FCC ,UL 各种 Certification ,不然你卖不出去。
iwishing
    34
iwishing  
   303 天前
插眼 膜拜大佬
yumenawei
    35
yumenawei  
   303 天前
写的真好,感谢分享
quietjosen
    36
quietjosen  
OP
   303 天前
@Ericality 是的;想想,即使让别人 SMT ,也是要花钱的,就平衡了。
quietjosen
    37
quietjosen  
OP
   303 天前
@shijingshijing 你说的对,成熟产品是要这样的;不然即使卖出去了,也会有后续的问题的。

不过,我去年做的两款产品,已经在某宝上销售了。
OMGZui
    38
OMGZui  
   303 天前
👍🏻
SpiritYa
    39
SpiritYa  
   303 天前
也一直在学,感谢大佬分享
diliburong
    40
diliburong  
   303 天前
看着有点有趣,请问有啥能跟着做的入门教程分享一下嘛。
quietjosen
    41
quietjosen  
OP
   303 天前
@diliburong 随便找个开发板,比如 Arduino ,先点灯。
yasi
    42
yasi  
   303 天前
@quietjosen 点....点....电灯大师😂
mexinesk
    43
mexinesk  
   303 天前
牛逼,讲的深入浅出,我这种门外汉也能看得 津津有味
quietjosen
    44
quietjosen  
OP
   303 天前
@mexinesk 客气;就是从头记录下整个过程,讲得比较白话。
mrfox
    45
mrfox  
   303 天前
学习了,想做个自定义按键的小键盘,已经买了一个 6 键的成品,但还是想自己实现一个出来,LZ 有什么思路
i1MqODKe0P16t1Ra
    46
i1MqODKe0P16t1Ra  
   303 天前
楼主,太牛了!本人也长期搞软件的,一直想做点硬件开发,并且兴趣浓厚,可惜找不到应用方向。做过树莓派,树莓派 pico 对接各种传感器及控制显示什么的都没问题,自行成功设计过红外感应式夜灯,没有方向。。。硬件开发也就止于此。
quietjosen
    47
quietjosen  
OP
   303 天前
@mrfox 这个没研究过哎,看其他群友能不能解答下。

我的理解,就是按键能发指定的信号就行,协议什么的应该是比较直白的。
quietjosen
    48
quietjosen  
OP
   303 天前
@joyarise 还是从自己的实际需求出发,做个对自己有用的小工具,然后慢慢迭代,横向扩展、纵向深入。
sunzhuo
    49
sunzhuo  
   303 天前
感觉入门不难,有点跃跃欲试了
quietjosen
    50
quietjosen  
OP
   303 天前
@sunzhuo 来,点个灯。
Greendays
    51
Greendays  
   303 天前
现在在一个小工厂工作,可能不得不为了工作开始搞点硬件开发的东西了😂
quietjosen
    52
quietjosen  
OP
   303 天前
@Greendays 来,欢迎入坑。
kamilic
    53
kamilic  
   303 天前
硬件的确很有意思,想起了大学的时光。
工作后有时也会想干硬件,总觉得硬件比起互联网可能会少点逼事,因为硬件开发要经过 OP 所说的一系列流程,拍脑袋出需求的成本太高,很难出现「快速迭代,扭头就改需求」这种行为。
quietjosen
    54
quietjosen  
OP
   303 天前   ❤️ 2
@kamilic 软件有频繁修改的烦恼,硬件有想改改不了的烦恼,各有各的事。
lefer
    55
lefer  
   303 天前
@xieren58 #16 不考虑主观层面想要坑消费者或者所谓的互联网玩法,现在硬件产品毛利润必须达到 60-70% 才可能做下去。
fengtalk
    56
fengtalk  
   303 天前
谢谢 OP ,我就看看😁
Tink
    57
Tink  
   303 天前
智能家居 ESP 一把梭
fregie
    58
fregie  
   303 天前
配合 3D 打印自己 DIY 一些东西来玩确实挺好的
lingex
    59
lingex  
   303 天前 via Android
最烦的是搞不清是硬件问题还是软件问题…

上个月 DIY 一个下载器,电脑死活不认,电路很简单,只有晶振最可疑,于是反复拆装更换折腾了两个小时,最后发现是因为插错 USB 线了,一直是插到充电头上而不是电脑上…
vegetableswim
    60
vegetableswim  
   303 天前
以前养仓鼠用过 tafit ,不过那会儿还没有计圈跑轮 :P
quietjosen
    61
quietjosen  
OP
   303 天前
@Tink ESP 生态挺好的。
danhahaha
    62
danhahaha  
   303 天前
硬件最难受的还是调整测试周期太常,一个产品设计到生产几周几月太常见了,一个问题发现到改进需要改设计,打板,焊接...... 想想就头疼,没点耐心真不行,之前并行开发 6,7 个硬件项目,大部分时间就是等,等零件,等板子,前后搞了几十个小项目,搞完的不到 1/5,大部分现在还在箱子躺着,不知道烂尾到何时。还是软件比较好些,调试修改提交分分钟可以看到效果
quietjosen
    63
quietjosen  
OP
   303 天前
@fregie 是的,3D 打印是连接现实与软件桥梁。
quietjosen
    64
quietjosen  
OP
   303 天前
@vegetableswim 这里还能遇到 Tafit 用户,意外 + 开心啊 😀

仓鼠智能计步器,是今年上半年才推出的。
quietjosen
    65
quietjosen  
OP
   303 天前
@lingex 哈哈,这种最无语。

你看我文中说的,有次电路不干活,怎么调不对。最后发现,是一根面包线不通…
quietjosen
    66
quietjosen  
OP
   303 天前
@danhahaha 是啊,有的板子搞到后来,都已经有点陌生,或者没什么兴趣了。
asktao
    67
asktao  
   303 天前
感谢分享。
asm
    68
asm  
   303 天前
感谢分享。每次看着这些 pcb ,就感叹这东西真有魔力。
yangfan1999
    69
yangfan1999  
   303 天前
很有意思的分享。
mobile8
    70
mobile8  
   303 天前
很棒的分享,大学里搞了好多电路实验,设计过一些电路,确实很有趣,找 bug 也是相当痛苦
kevinmissu
    71
kevinmissu  
   303 天前
很牛,点赞
fields
    72
fields  
   303 天前
关于打板,有个疑问,打板是在物理实体的板子上按照电路图安装电路吗
让嘉立创免费打板是可以把物理板子寄给嘉立创,让他们安装线路然后再邮过来吗
lukaz
    73
lukaz  
   303 天前
感谢分享。焊接真的很劝退。
像电阻电容这样的元件有专业的采购平台吗?还是就 tb/pdd 。
quietjosen
    74
quietjosen  
OP
   303 天前
@fields 打板一般是指制作 PCB 板,贴片、焊接元件是 SMT 。
quietjosen
    75
quietjosen  
OP
   303 天前   ❤️ 1
@lukaz 立创商城
heyleo
    76
heyleo  
   303 天前
牛逼,想知道 op 转硬件到挂产品到淘宝上卖,大概花了多长时间
abelmakihara
    77
abelmakihara  
   303 天前
做硬件真的很 coool~
不过看着坑感觉头就大了
huanxianghao
    78
huanxianghao  
   303 天前
楼主真的牛逼
quietjosen
    79
quietjosen  
OP
   303 天前
@heyleo 22 年国庆,看视频学习立创 EDA ; 23 年 5 月底,它适智能跑轮发布。
quietjosen
    80
quietjosen  
OP
   303 天前
@abelmakihara 干啥都有坑;硬件确实门槛高些,学习曲线抖。
ledkk
    81
ledkk  
   303 天前
硬件的世界很有趣 ha
zhangshine
    82
zhangshine  
   303 天前
有趣🤔️
adian
    83
adian  
   303 天前
点赞!
liquid207
    84
liquid207  
   303 天前
感谢分享。
StoneHuLu
    85
StoneHuLu  
   303 天前   ❤️ 2
我 web 后端开发,然后之前折腾家用服务器搞 ha 智能家居,然后顺着入坑了嵌入式,一开始玩的是 esp32 ,但这个功耗太高了,后面为了用 cr2032 纽扣电池供电搞点小传感器,用了 nrf52840 ,先给家里爬虫箱搞了个双 sht30 探头的温湿度计,为了省电直接搞了个墨水屏上去,一趟下来也算把流程跑通了,还是很有趣的。
nicholasxuu
    86
nicholasxuu  
   303 天前
总觉得个人 DIY 的话,用贵一点但是功能强一点的 pi/arduino+飞线 就好了,软件/固件 更新起来容易。而多出来的开发板成本,对比开发人员的时间成本,也不足为道。
dooonabe
    87
dooonabe  
   303 天前
👍
M5tuA
    88
M5tuA  
   303 天前
👍谢谢分享
xiaomageit
    89
xiaomageit  
   303 天前
弱弱问一句,电路板还好,现在成本都在芯片上,假如自己要设计个芯片换句话说怎么降低芯片的成本?
quietjosen
    90
quietjosen  
OP
   303 天前
@StoneHuLu 你这个动手能力很强嘛!
StoneHuLu
    91
StoneHuLu  
   303 天前
@quietjosen #90 都是爱折腾的同好,我个人是半路出家当程序员的,初高中也没怎么念过,当时为了搞这块入坑,还重新啃了电子电路,啃完买了个开发板和面包板,还是非常懵逼不知道从何入手,还问了做嵌入式的朋友才知道要先明确需求从芯片选型入手,你要是早几个月发贴就好了_(:з」∠)_,我当时走了不少弯路,不过一趟流程下来,也算是对嵌入式这块祛魅了,虽然驱动什么的基本都不会写(寄存器相关也是苦手),简单整点小传感器还是不成问题的
chen8511207
    92
chen8511207  
   303 天前
感谢楼主分享👍
quietjosen
    93
quietjosen  
OP
   303 天前
@nicholasxuu DIY 怎么都行,要量产、卖到用户手上,就得严谨些。
quietjosen
    94
quietjosen  
OP
   303 天前
@StoneHuLu 我觉得,还是你更能折腾 😂
quietjosen
    95
quietjosen  
OP
   303 天前
@xiaomageit 你确定是「自己要设计个芯片」?是找个便宜芯片,也能实现相同功能吧。要便宜,找国产替代。
ermao
    96
ermao  
   303 天前
感谢分享。

不得不说分享的例子比如下面这个,是我选择做软件的一大原因。XD
“比如,有一次电路接线完全正确,死活不干活。最后通过万用表测量才发现,其中一根面包线是坏的、不通电的,我去。”
MillaMaxwell
    97
MillaMaxwell  
   303 天前
让我回想起了大学在实验室的时光,手上还有好几个当初留下的烫伤疤
quietjosen
    98
quietjosen  
OP
   303 天前
@ermao 软件也有很多坑;比较你这边是好的,用户那边是好的,怎么搞?😅
quietjosen
    99
quietjosen  
OP
   303 天前
@miraumr 有画面了 😂
xieren58
    100
xieren58  
   303 天前
用 rust 进行嵌入式开发, 用 rust 搞硬件创业, 已经快 3 年了... ... 今年主打出海搞游戏了... 硬件实在利润太低...
1  2  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1393 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 31ms · UTC 23:47 · PVG 07:47 · LAX 16:47 · JFK 19:47
Developed with CodeLauncher
♥ Do have faith in what you're doing.