转行嵌入式行业:如何轻松应对挑战?

发表时间: 2021-07-28 16:50

说到新手学嵌入式开发,我”听到”最多的声音就是门槛太高了,太难了。

事实真的是这样吗?

我还是用我的个人经历来聊下这个话题吧。

这里先说明一下,我是做嵌入式单片机开发的,很多人以为嵌入式就是ARM+Linux,这种思维是不对的,嵌入式底下细分的方向有很多

一个人的精力非常有限,想学会和入行,首先你要给自己一个清晰的定位,自己想从事哪个方向。

这个搞不清楚就像你大海捞针一样,没有目标,没有方向,就不会有规划,没规划又谈何学会?

我是在10年前通过自学进入了嵌入式单片机开发这个行业。

我和新手一样,从不知道嵌入式开发是什么,要怎么学,要学什么?

鬼知道,我一开始是从java学起,又学了mysql(其实是准备去做纯软)。

学到中途感觉学海无涯,不知道学到什么程度才能找到工作,最终放弃。

后面通过java me接触到嵌入式,一开始我很盲目,只听说嵌入式要学习Linux,然后就一头扎进去。

学了一堆乱七八糟的指令,学完也不知道这些到底有啥用,只是跟着视频教程一步一步。

最终又感觉不对劲而放弃。

中间迷茫和焦虑了一段时间,生活所迫唯有继续死磕。

不过这次我换了个方向,我了解到嵌入式其实有几个不同的方向,比如说主流的单片机开发和ARM+Linux,当然还有FPGA等等就不说了。

当时是属于脱产(全职)学习,没收入我慌得一批,读了20年书又不甘心向现实低头做普工。

我就选了一个相对比较好上手的单片机开发方向。

在网上搞了一个51开发板,一个配套教程就开始没日没夜地学习。

之所以能坚持下去,是因为学这个反馈很快。

几个小时就能把一个电路板上的一个LED灯点亮,那种喜悦和成就感现在记忆犹新。

也激发了我的兴趣,这有意思多了,一边学习一边反馈,知道自己学的知识用在哪里。

点亮第一个LED灯,我就在天马行空幻想能不能通过程序去控制我家里的灯实现亮和灭。

后面随着种种好奇,不断激发我学习的欲望,2个月左右学习基本就能写出数字时钟这种小项目了。

所以,与其说是学会的,不如说是玩会的,凡事要坚持的东西都很痛苦。

后面成功转行一做就是10年,本来想进阶到ARM+Linux方向,后面想想还是算了。

毕竟技术是学不完的,也只是工具,怎么用技术创造价值才是逆袭的底层逻辑。

总结这10年的经验,对于如何转行到嵌入式,我给新手以下几个建议:

  1. 先定位

我建议是先从单片机方向入手,见效快,而且单片机的产品应用会比ARM+Linxu多一些,因为成本低。

ARM+Linux适合做一些高端的产品,价格贵。

另外单片机方向对个人创业也比较友好,基本一个人能完成一个产品,外壳那些花点钱找外包就行了。

而ARM+Linux就需要一个团队来完成,有做Linux驱动移植的,有做QT或者安卓应用开发的,有些还需要UI工程师来配合,反正就是人要很多。

2.规划学习路线

这个一定是放在定位以后要去做的,定位决定你的学习内容。

拿单片机开发来说,你主力学好以下几个内容就能快速上手:

  • 基础电路
  • C语言
  • 51单片机

然后再把这3个模块细分成每天需要学什么,按照什么顺序去学习。

3.每日任务,坚持执行

规划好学习内容以后,给每个内容规划好学习时间。

比如说我今天要拿出1个小时时间来学习C语言的数据类型和变量定义这两个章节。

坚持就不用说了,三天打鱼两天晒网,不管你学什么结果都是一样。

能做到以上 3点的,基本也算是个狠人了,学不会是不可能的,难对你来说也是不存在的。