嵌入式开发要学多久?要学哪些课程

2023-05-16

曾经有新手和我抱怨:为什么嵌入式开发这么难?

相信我,你不是学不会,只是没找对方法。

这是一片真正为「终结迷茫」而生的回答,内容有点长,如果你赶时间,建议先点赞+收藏防止找不到,如果你想快速切入嵌入式开发行业,请花几分钟,从头到尾不要错过一字一句,因为字里行间都是我从业11年的经验精华。

学习嵌入式,定位规划比课程本身更重要!

一、定位

1.嵌入式主流的几个方向

这是几个是目前市场需求最大的,说白了就是学完以后工作比较好找。

我相信大多数人学习都是奔着高薪工作的吧。

这几个方向里面,单片机开发是最偏向硬件的,Linux驱动开发其次。

Linux应用开发基本上算是纯软件了,基本很少会接触到底层硬件的东西。

很多人,连这个几个方向都搞不清楚,以为嵌入式就是搞ARM+Linux,怎么搞,搞什么一窍不通。

之前我们无际单片机有些学员就走了这弯路,刚开始就是定位不清晰,各种东西乱七八糟地学,浪费1年时间感觉还是啥也没学到。

后面我们给他规划职业方向,配合我们几个项目实战课程,学了4-5个月就直接去工作了,研究生基本都是16-18K起步。

所以,我认为定位比你盲目找课程重要太多了,方向不对努力翻倍,学习周期长又看不到结果,很容易就放弃了。

除了以上几个方向,还有FPGA、以及安卓开发,这里就不一一举例了。

2.各个方向各自优势

这里我主要拿单片机开发和Linux驱动开发这两个方向对比。

  • 产品应用:

单片机适用于低成本、低功耗中低端产品应用。

Linux驱动开发适合对成本不敏感、对功耗不敏感,高性能中高端产品应用。

  • 学习周期:

单片机更短,Linux驱动开发更长。

  • 薪资待遇:

单片机开发比Linux驱动开发要低。

  • 未来前景:

单片机开发适合个人低成本创业,一个人能同时做硬件和软件。

Linux驱动需要一个团队,比如说硬件设计、驱动开发、应用开发。

  • 投产比评估

如果你急着找工作,可以先从单片机开发入手。

如果你不急着找工作,希望能做更高端产品可以直接上手Linux驱动/应用开发。

根据无际单片机以往学员数据,个人认为单片机开发投产比比Linux方向要高,零基础坚持学4-6个月就能达到工作水平。

虽然起步工资没Linux方向高,但是有稳定的资金流才是王道,后面再想学什么也没那么大压力。

二、学习路径规划

相信看到这里,你已经知道定位的重要性了,不根据职业定位去规划课程就是浪费时间

这11年,我一直在从事单片机开发,所以以下学习路径应该是你见过最高效最实用的

1.C语言基础

很多人问我,汇编要学吗?我直接告诉你,不用学。

我们的目标是快速达到我们的目标,汇编虽然能让你更深入理解单片机原理,但是工作当中并不实用。

至少我做了开发这么多年,基本没用到过。

汇编一般会在以下场景用:

a).资源非常匮乏的51单片机,ROM和RAM不够只能用汇编。

b).RTOS移植的时候,每款单片机指令集有区别,你系统去学习没太大意义,还不如不懂的指令直接网上搜快一点。

所以,听我的,前期主攻C语言不会错。

如果你没学过C语言,建议你看下无际单片机录制的单片机C语言课程。

市面上很多都是针对上位机的C语言,我们这个是针对单片机的,虽然大多相同,但往往就是一些细节让新手从上位机过渡到单片机时一脸懵逼。

 

2.电路基础

学单片机开发,有一半都是在学习电路途中放弃的。

我当初也是差点在学模拟电路时放弃,直到工作了很多年,我直接把模拟电路书和视频都扔了。

实际产品开发用的很少,你只需要学习一些常用元器件原理和应用场景就可以了。

电路不用学得太深,你知道什么信号进来单片机,单片机输出什么信号控制外围功能电路就够了。

至于为什么这里加个电阻,那里并个电容,为什么取值这个,先不用管。

实际产品开发中,这些工作都是由硬件工程师去完成的。

3.51单片机

有些人说51单片机过时了,淘汰了,这种直接当他是外行。

现在51单片机还在大量应用,哪怕你是接触到一些蓝牙产品,很多芯片都是51内核的,比如TI的CC2541。

我向你保证,如果51单片机能实现的功能,老板绝对不会允许你用STM32,哪怕让你用会编写,把你头发写掉光。

原因很简单,51单片机便宜啊!

4.用51单片机做项目

前面学的c语言、基础电路、51单片机都是知识工具而已。

学完就得把知识落地产生价值,而项目就是把这些知识产生价值的唯一途径。

很多人学完了基础知识,发现还是不会做项目,就在想是不是自己基础没学好啊?

其实不是,就像你学会了写字,但是还是不会写作文是一样的感觉。

想写出好作文,除了你的基础知识功底,还需要你有丰富的经历和思维对吧?

做项目就跟你写作文一样,也是考验你项目思维和经历了。

思维和经历好不好,会决定你的程序写得好不好。

很多人着急学STM32,把这最重要的一步给忽略了。

所以越往后缺失的东西越多,学起来自然也越费劲。

 

5.C语言进阶

很多人迷恋C语言指针,而我建议把指、结构体等一些高阶知识放在这个环节学习。

经过前面几个环节洗礼,你的代码水平和理解能力都提升了。

这个时候再去学习C语言高级技巧,时间成本会更低一些。

C语言进阶我们无际单片机系统开源教程,其中包括枚举、指针、结构体、回调函数、队列算法、任务管理等可以直接用于你批量产品的知识。

 

6.STM32单片机

终于来到新手梦寐以求的STM32了。

这个环节,我建议把STM32当作工具来学,就是知道怎么调库把外设用起来就行了。

没必要深入系统地学习,只需要学最常用的外设就行了,学完不用,很快你就忘了。

具体哪些是常用的,上面那个导图写得很清楚了。

7.STM32项目

如果你能坚持到这里,恭喜你,马上可以毕业了。

但是这个环节往往也是最难、最煎熬、最耗时的一步。

STM32项目某宝有一些DIY的项目,比如智能小车、无人机之类的,可以拿来练手。

不过,你能学到的可能也只是对编程的熟练度而已。

如果想学到更好的思维和编程技巧,可以无缝对接实际产品开发的。

最好还是跟着资深的工程师做项目。

三、总结

1.定位比课程本身更重要。

2.把大多数的时间精力放在项目实战上。

最后彩蛋时间!!!

最近很多小伙伴找我要一些单片机学习资料,然后我根据自己从业十年经验,熬夜肝了几个通宵,精心整理一份「单片机入门到高级教程+工具包」,全部无偿共享给大家!!!

除此以外,再含泪分享我压箱底的22个热门开源项目,包含源码+原理图+PCB+说明文档,让你迅速进阶成高手!

据说有小伙伴靠这份资料顺利进入BAT大厂,所以保存了一定要好好学习。

教程资料包和详细的学习路径可以看我下面这篇文章的开头。

单片机入门到高级开挂学习路径(附教程+工具)https://blog.csdn.net/weixin_43982452/article/details/114134096

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

嵌入式开发要学多久?要学哪些课程 的相关文章

随机推荐

  • plc和单片机哪个更有前途?为什么本科生都不搞plc?

    相信很多学电气工程专业的都会学习PLC xff0c 我当初也是电气工程专业 xff0c 主要学的三菱PLC xff0c 后面也玩了下西门子的 当时觉得还挺神奇 xff0c 也对编程比较感兴趣 xff0c 不过学校学得太简单了 xff0c 基
  • 学stm32有机会进大公司吗?如何选择?

    进大公司似乎跟你会什么单片机并没有直接的关系 但凡做过几年研发的都知道 xff0c 虽然我们是从事嵌入式单片机开发 xff0c 但核心其实还是你的编程思维和水平 企业做产品不是固定用哪个单片机的 xff0c 而是根据市场的情况走 xff0c
  • 电气工程及其自动化就业方向及前景

    电气毕业 xff0c 工作10年 xff0c 聊聊这几年的感悟 全文约1800字 xff0c 认真看完 xff0c 相信还在迷茫的你一定茅塞顿开 首先声明一下 xff0c 我实习期间就自学转行进入嵌入式单片机开发了 自己并没有从事过电气工作
  • 大学如何自学嵌入式开发?

    我2011年就开始从事嵌入式软件开发 很多人觉得学习嵌入式开发比高考还难 xff0c 不知道怎么入门 xff1f 要学哪些东西 xff1f 嵌入式开发涉及的知识 xff0c 你确实一辈子都学不完 但是 xff0c 这不代表你需要花费很长的时
  • 嵌入式工作会越来越少吗?

    学习技术并非易事 xff0c 就像唐僧取西经 xff0c 需要经历皮肉之苦和精神上的折磨 学习最迷茫的无非是不确定自己能否学会 xff0c 学会以后能否落地 xff0c 给自己事业赋能 这种焦虑伴随着我当初整个自学过程 xff0c 直到找到
  • 解决ubuntu linux触摸板不能用问题

    解决ubuntu linux触摸板不能用问题 2011 04 16 01 40 其实很简单 xff1a 打开终端 xff0c 然后sudo i获取root权限 xff0c 然后 xff1a sudo modprobe r psmouse s
  • 一文搞懂栈(stack)、堆(heap)、单片机裸机内存管理malloc

    大家好 xff0c 我是无际 有一周没水文了 xff0c 俗话说夜路走多了难免遇到鬼 最近就被一个热心网友喷了 说我的文章没啥营养 xff0c 所以今天来一篇烧脑的 哈哈 xff0c 开个玩笑 xff0c 不要脸就没人能把我绑架 主要是最近
  • spi协议时序图和四种模式实际应用详解

    大家好 xff0c 我是无际 上个章节我们讲解了spi接口定义 xff0c 今天我们更加深入讲解下spi协议时序图和spi四种模式的用法 刚开始接触单片机开发时 xff0c 最怕就是看时序图 xff0c 对于我来说就是奇怪的知识 特别是SP
  • 你用esp8266做出过什么有趣的东西?

    曾经有个40多岁的老板跟我说 xff0c 很羡慕我这种做技术的 xff0c 他也喜欢钻研 xff0c 感觉自己做产品很有成就感 男人是天生的小朋友 xff0c 都喜欢玩 xff0c 都喜欢钻研 我做单片机开发11年了 xff0c 深感技术的
  • stm32正点原子和普中或是野火哪个好?

    看了很多热心网友对正点原子 野火 普中等开发板的对比和评论 说这个讲的不行 xff0c 那个代码写得垃圾 xff0c 还有谁谁谁的像一坨屎 说真的 xff0c 有种卸磨杀驴的感觉 为什么这么说 xff1f 因为忽略了两个问题 xff1a 1
  • 嵌入式Linux和stm32区别? 之间有什么关系吗?

    本人从事嵌入式单片机开发11年 xff0c 很多人对嵌入式 单片机 STM32 Linux傻傻分不清楚 导致学习过程走了很多弯路 xff0c 明明只需要几个月学习时间 xff0c 却浪费了1 2年 xff0c 最后抱怨嵌入式也太高了吧 xf
  • 为什么有些人说单片机简单,我学起来这么吃力?

    相信我 xff0c 你不是学不会 xff0c 只是没找对方法 看完这篇文章 xff0c 你就发现原来自己学起来并没那么吃力 开始前点赞 43 收藏赶紧点起来 xff0c 不然我怕你看得太入神 xff0c 下次想看都找不到 很多人学单片机从入
  • 嵌入式系统中,FLASH中的程序代码必须搬到RAM中运行吗?

    这个问题 xff0c 核心还是得看你用什么芯片方案 xff01 嵌入式系统涉及技术栈特别庞大 xff0c 不仅仅大家理解的ARM 43 Linux而已 我从业11年 xff0c 也只敢说对其中一个方向熟悉而已 嵌入式系统中 xff0c 核心
  • stm32入门开发板选野火还是正点原子呢?

    两个可以说都是行业标杆 不能说哪个比哪个更好 xff0c 各有特色 xff0c 适合自己就是最好的 xff0c 同行之间都是相互参考去做的 我从以下几个维度来对比下 xff1a 1 教程 2 代码 3 开发板价格 4 进阶 一 教程 两家教
  • 树莓派为什么涨价了?

    任何东西涨价都是一个原因 xff1a 供不应求 别说树莓派 xff0c 很多芯片都涨价了 xff0c 比如说STM32 xff0c 去年最高峰涨了将近10倍 所以 xff0c 引发了很多有趣的事 比如说 xff1a 以前接到订单老板开心得睡
  • jtag和swd区别,该用哪个?

    我刚开始学习单片机是STC最经典的STC89C52RC 导致我后面很多51的产品应用都会选择STC xff0c 一方面是因为熟悉 xff0c 一方面是使用确实很方便 其中最让我满意的就是烧录 xff0c 可以直接用串口就可以下载程序 xff
  • 匈牙利算法原理与Python实现

    匈牙利算法原理与Python实现 今天学习一个新的算法 匈牙利算法 xff0c 用于聚类结果分析 xff0c 先用图表示我当前遇到的问题 xff1a 这两列值是我用不同算法得到的聚类结果 xff0c 从肉眼可以看出第一列聚类为0的结果在第二
  • STM32之后哪块板子发展最好?

    从事开发10年了 xff0c 我来说说我个人见解 首先 xff0c 除非是顶尖的垄断技术 xff0c 否则一般不会有屹立不倒的芯片 站在研发经理的角度 xff0c 单片机选型时主要会考虑以下几个因素 xff1a 1 稳定性 2 价格 3 交
  • stm32用什么软件编程烧写比较好呢?

    今天给大家分享我从业单片机开发11年必备的神器 在刚入行不久 xff0c 看到那些老工程师费很大的劲去搭建开发调试环境 xff0c 让我很不解 我想有那工夫 xff0c 我程序都写完了 xff0c 如果有问题就看代码找Bug呗 直到后面做了
  • 嵌入式开发要学多久?要学哪些课程

    曾经有新手和我抱怨 xff1a 为什么嵌入式开发这么难 xff1f 相信我 xff0c 你不是学不会 xff0c 只是没找对方法 这是一片真正为 终结迷茫 而生的回答 xff0c 内容有点长 xff0c 如果你赶时间 xff0c 建议先点赞