大同 [ 更换 ]
热门城市
北京上海广州深圳成都杭州南京武汉天津西安重庆青岛沈阳长沙大连厦门无锡福州济南宁波昆明苏州郑州长春合肥南昌哈尔滨常州烟台南宁温州石家庄太原珠海南通扬州贵阳东莞徐州大庆佛山威海洛阳淮安呼和浩特镇江潍坊桂林中山临沂咸阳包头嘉兴惠州泉州三亚赣州九江金华泰安榆林许昌新乡舟山慈溪南阳聊城海口东营淄博漳州保定沧州丹东宜兴绍兴唐山湖州揭阳江阴营口衡阳郴州鄂尔多斯泰州义乌汕头宜昌大同鞍山湘潭盐城马鞍山襄樊长治日照常熟安庆吉林乌鲁木齐兰州秦皇岛肇庆西宁介休滨州台州廊坊邢台株洲德阳绵阳双流平顶山龙岩银川芜湖晋江连云港张家港锦州岳阳长沙县济宁邯郸江门齐齐哈尔昆山柳州绍兴县运城齐河衢州太仓张家口湛江眉山常德盘锦枣庄资阳宜宾赤峰余姚清远蚌埠宁德德州宝鸡牡丹江阜阳莆田诸暨黄石吉安延安拉萨海宁通辽黄山长乐安阳增城桐乡上虞辽阳遵义韶关泸州南平滁州温岭南充景德镇抚顺乌海荆门阳江曲靖邵阳宿迁荆州焦作丹阳丽水延吉茂名梅州渭南葫芦岛娄底滕州上饶富阳内江三明淮南孝感溧阳乐山临汾攀枝花阳泉长葛汉中四平六盘水安顺新余晋城自贡三门峡本溪防城港铁岭随州广安广元天水遂宁萍乡西双版纳绥化鹤壁湘西松原阜新酒泉张家界黔西南保山昭通河池来宾玉溪梧州鹰潭钦州云浮佳木斯克拉玛依呼伦贝尔贺州通化朝阳百色毕节贵港丽江安康德宏朔州伊犁文山楚雄嘉峪关凉山雅安西藏四川广东河北山西辽宁黑龙江江苏浙江安徽福建江西山东河南湖北湖南海南贵州云南陕西甘肃青海台湾内蒙古广西宁夏香港澳门
培训资讯网 - 为兴趣爱好者提供专业的职业培训资讯知识

嵌入式开发要学哪些课程?学习路线是什么?

学习 开发 是什么 课程

我2011年就开始从事嵌入式软件开发。

很多人觉得学习嵌入式开发比高考还难,不知道怎么入门?要学哪些东西?

嵌入式开发涉及的知识,你确实一辈子都学不完。

但是,这不代表你需要花费很长的时间才能学会。

我相信大多数人学习的目的,都是先通过学习这个技能找份工作,然后慢慢深入。

如果只是要达到找工作这种程度,亲测只要学习方向正确+够努力,完全可以在3-4个月完成。

一上来就像吃透这个,吃透那个的专家思想,绝对还没入门就入土了。

在学习之前,最重要的不是找教程,方向和方法比教程更重要。

很多人以为嵌入式开发就是搞ARM,搞Linux。

实际上,嵌入式开发分很多方向。

主流的方向有:

  1. 单片机开发
  2. Linx驱动/应用开发
  3. FPGA,不了解不做讲解

这是两个是目前市场需求最大的,单片机开发和Linux驱动开发偏向硬件,Linux应用开发基本是软件。

前期一定要先根据个人情况确定好自己要从事的方向,不同的方向学习内容也不一样

很多人搞不清方向,以为嵌入式开发又要学单片机,又要学Linux,学了1年门都没入。

我做了单片机开发10年,对这个行业比较熟悉,就拿这个方向做详细讲解,技术不用学多,深耕一个就够了。

单片机开发应该是属于最好入门的,Linux驱动/应用开发相对难点,工资Linux也相对高点。

不过做得越久,我越发现单片机开发其实并不比Linux开发简单。

我反而觉得资源越丰富的,用起来反而更简单。

举个例子,很多做家用消费类产品的芯片都是选非常便宜的,内存也非常小,资源非常匮乏。

他们写程序都是用汇编,算着汇编指令去写的。

你可以用资源丰富的芯片做,然后用c把代码写的很健壮,但是成本绝对比别人高。

哪怕一颗芯片只贵1毛钱,如果一个月出货10万个,你就让企业少挣1万。

有些做嵌入式Linux开发的看不起做单片机开发的,觉得很简单,没什么技术难度。

等你做过研发负责人,你就明白任何一个产品,即便功能再简单,要做好都是没那么简单的。

下面,我来总结下,学习单片机开发正确的学习路径

嵌入式开发要学哪些课程?学习路线是什么?

整个学习路径我分为7步:

  1. C语言基本语法

C语言基本语法学习大概需要1-2周时间,这种教程网上已经泛滥了,大多基于上位机的C语言,跟单片机C语言编程用起来还是有点差异。

我们这块也专门录制了一套教程,总结了我们这几年实际开发最常用到的一些语法,可以到小破站找无际单片机编程直接看。

嵌入式开发要学哪些课程?学习路线是什么?

2.基础电路

这一步走弯路的小伙伴最多,再重申一遍,不用死磕模电,甚至都不用去学。

学习电路最好的途径就2个,一是开发板,二是项目。

然后通过项目不断地积累电路,模电负反馈放大电路以后的知识点我在实际工作基本没用到过。

而且我们定位单片机软件开发的话,也不需要具备硬件设计能力,只需要看懂电路关键输入输出就行了。

简单来说就是单片机通过什么方式控制电路,通过什么接口去采集电路过来的数据就行了。

3.51单片机

我第一次接触到的单片机是STC89C52RC,也就是现在开发板最常用最经典的一款。

不管你通过哪一款去入手,51单片机我都建议必须学一下,如果你直接学STM32我也不拦你。

学习51单片机的目的是为了让更好容易地去理解单片机的资源到底是怎么用起来的,怎么通过程序去控制电路的。

相当于为你后续学习别的单片机铺路。

4.51单片机项目

学完前面3个基础知识以后,到这一步,先把你前面所学的知识变成实实在在的项目,可以是一些小项目,比如说寻迹小车之类的,可以到某宝找一些DIY套件自己写程序,也可以找无际单片机编程学习实际产品开发。

嵌入式开发要学哪些课程?学习路线是什么?

这一步非常重要,也容易被初学者忽略,这一步的目的是为了学习实现功能的思维,锻炼代码整合能力,这个能力比你会单片机更重要。

5.C语言高级用法

C语言基本语法学完了,也通过项目落到实处了,就需要学习一下C语言的高级用法了,比如说指针、结构体。

这块也是为下一步学习STM32单片机做铺垫,STM32的库是面向对象的思维,如果不懂结构体和指针基本看不懂。

这块我们无际单片机编程也有原创的、系统的开源教程在小破站。

嵌入式开发要学哪些课程?学习路线是什么?

这套教程是我2019年录这玩的,本来想靠它挣点钱,后来工作一忙没空搞,干脆开源出来。

不要以讲师的标准去要求我,毕竟当初没经验,而且是开源的。

但是课程内容个人认为还是非常有价值了,也是市面上学不到的,看过的评价也比较高。

6.STM32单片机

很多人学习STM32觉得很难,怎么跟51单片机的开发模式完全不一样,控制一个IO口都这么麻烦。

STM32的资源比51单片机多太多了,寄存器自然也多,为了缩短大家开发周期,所以早期ST推出了固件库。

直接调库就能很轻松把STM32的外设用起来,而不需要关心底层配置了什么寄存器。

STM32学习我认为是会调库把外设用起来就行了,不用研究这么深。

除非你以后的产品需要你用寄存器去开发,再针对性去研究。

也不用所有外设都学习,可以看我上面那个思维导图,我为大家总结了最常用的外设。

7.STM32项目

如果你坚持到这个环节,那恭喜你,你已经成功入门了。

接下来的时间,全部放在做项目上面,再去学别的单片机已经没太大意义了,使用起来都是大同小异。

你现在缺的是功能实现的思路,以及代码实现的能力

除了项目,没有更好的方法,到这一步如果有条件了,一定要舍得花钱投资自己。

找一个行业经验丰富的人带你,通过最短的时间去学习别人几年的精华是很划算的。

如果条件不允许或者不认可我说的,也可以去找一些开源的项目学习,只是自己摸索比较浪费时间。

还有就是到某宝找一些单片机的项目DIY套件,一般他们会有提供源码,可以跟着学习。

最后,祝大家学有所成!

相关内容

嵌入式开发要学哪些课程?学习路线是什么?

我2011年就开始从事嵌入式软件开发。很多人觉得学习嵌入式开发比高考还难,不知道怎么入门?要学哪些东西?嵌入式开发涉及的知识,你确实一辈子都学不完。但是,这不代表你需要花费很长的时间才能学会。我相信大多数人学习的目的,都是先通过学习这个技能···

嵌入式软件开发是做什么的?要学哪些课程?

一说到嵌入式开发,大多数人想到的是ARM、Linux、C++、安卓等等。看了很多相关的入门学习文章,一脸茫然,这学习的东西也太多了吧?门槛也太高了吧?我做了这个行业10年,现在看到网上那些入门文章都感觉学习难度很大,很多新手就是这样从入门到···

UI设计需要什么能力

1.基础软件操作能力UI设计常用的软件有PS(图像处理、banner)、AI(插画、图标、LOGO、字体设计)、XD、Sketch(移动端UI设计、标注切图)、Axure(产品原型设计)、XMind(产品框架设计)、figma(在线协作设计···

《插画教室:专业插画设计基础教程》:零基础绘画小白也能学插画

文/夏小忧作为一名资深的手残党,画画一直是我的短板之一,虽然很羡慕那些画画好看的人,也很想解锁一下画画技能,但每每动笔,往往都是以“一看就会,一画就毁”终结。什么线条、什么比例、什么色彩......对于我这样的零基础小白而言,无一不比登天还···

怎么学平面设计?驻马店平面设计培训学这些平面设计软件就够了

如何做一名平面设计师?其实平面设计主要要掌握的就是PS、CDr和AI三大软件,有很多的广告公司都用的是早前的打印设备,所以只接收CDr的文件,但是很多新设备都是要AI文件,不过PS和内AI同属一个公司,所以文件互导还是很方便的,一般来说掌握···

启中网店咨询:天猫店和淘宝店哪种更适合新手?

天猫和淘宝作为阿里巴巴旗下的两大电商平台,在购物模式以及货源上其实都大同小异。那么天猫店和淘宝店作为新手卖家来说有什么区别呢?关于这个问题小编整理了一下,分享给大家。其实天猫的前身是属于淘宝商城,但是天猫和淘宝最大的不同就是,面向的人群:天···