前言

哈喽同学们!今天咱来一期超详细的长内容,好好聊聊嵌入式的学习路线。为啥要做长内容呢?就是想把每个细节都给大家讲得明明白白。这次分享会给大家提供内容和书本两种学习方式哦,而且这些可都是经过几位大佬亲身实践验证过的,可不是随便说说糊弄人的哈。
由于时间有限,一些大家常见的疑问,内容里会先给结论,具体原因呢,我会在后续更新的内容里详细展开。感兴趣的同学记得蹲一蹲哦!话不多说,咱们直接开整!

嵌入式学习的第一步——C语言

同学们,嵌入式学习的第一步就是 C 语言。C 语言那可是嵌入式开发必备的基础技能,是咱们的入门必修课。在开发环境方面呢,我超推荐用 VS 开发工具。VS 提供了开发 C 语言所需的各种工具,对于咱们个人学习来说,社区版本就完全够用啦。大家直接去微软官网就能下载。
接下来说说 C 语言入门。入门学习有两条路可以选,看书或者看内容。大家可以根据自己接收信息的习惯来选,是更擅长从文字里吸收知识,还是看内容学习效果更好。咱先聊聊看书这条路。

C语言入门书籍推荐

看书比较适合那些对文字接收效率高的同学。这里我强烈推荐一本 C 语言入门经典书籍 ——《C 程序语言》。这本书可不简单哦,它是 C 语言创始人写的,像大家都知道的经典 “Hello World” 程序,就是从这本书里出来的。这本书的经典程度,网上一搜一大把介绍,我就不多说了。用它作为 C 语言入门书籍,那是妥妥没问题的,书里的代码风格也超值得我们学习借鉴,同学们一定要读一读。
可能有同学会好奇,为啥不推荐谭浩强老师的《C 程序设计》呢?这确实是个好问题。我推荐前面那本书,主要是因为它的代码风格更标准。具体原因我后面更新内容会详细讲哦。

C语言提高阶段的学习资源

当同学们对 C 语言基本语法有一定了解后,就可以考虑提升啦。不过前期没基础的同学可以先跳过这部分哈,这主要是给有点底子的同学准备的。在提高阶段,我们就不能只盯着 C 语言本身啦,还得考虑硬件的工作状态,要和 CPU 中断、ARM 打交道,这就得深入研究。
这个阶段我推荐三本书:《C 与指针》《C 专家编程》《C 陷阱和缺陷》。大家在淘宝上一搜就能找到。这三本书内容有不少重复的地方,看完一本后,再看另外两本就会快很多。时间充裕的同学,建议三本都看看;要是时间紧,那就重点看《C 与指针》。
学习的时候,大家可以搭配内容,比如郝斌主讲的 C 语言入门内容,配合着书一起看。快速过一遍,遇到不好理解的地方,像指针部分,先放一放,后面用到了再回头深入学习。除了郝斌的内容,浙江大学翁凯老师的 C 语言也很不错,这俩二选一就行。看完内容还想进一步提高,就看看刚刚推荐的那三本书。

C语言学习的IDE选择及时间预估

学 C 语言,用啥 IDE 都行,但我还是推荐 vs2019 社区版本。百度上能找到安装教程。微软家这个 IDE 超好用,号称宇宙第一 IDE 呢!不过它也有缺点,就是太大了,里面工具一大堆,但完全能满足咱们初学者的需求。
同学们要是只想入门 C 语言,大概 15 天就够啦。大家可以先心里有个数,规划下时间。C 语言学习完,咱就可以进入单片机的学习啦。

单片机学习推荐——STM32

接下来咱进入单片机学习环节,我强烈推荐直接学习 STM32。好多同学可能想问,学 STM32 之前,要不要先学 51 和模电数电呀?我的结论是可以直接跳过 51 和模电数电,直接学 STM32。跳过 51 的原因比较复杂,我后面会专门出内容讲;跳过模电数电的原因,我前几天发的内容已经讲过啦,同学们可以去看看。
STM32 芯片内容超多,但作为初学者,咱们不用关心太复杂的东西,掌握常用开发和基本知识点就行。

STM32常用外设学习重点

根据以往经验,下面这些常用外设是咱们重点要掌握的:GPIO 口、串口中断、定时器、ADC、SPI、I2C。基本上所有 ARM 芯片都有这些外设。学习顺序不固定,但我推荐按照我刚才说的这个顺序来。
课程方面呢,我强烈推荐江科大的内容。和正点原子、野火比起来,江科大的课程会配套一些小项目,像舵机的使用、光敏电阻器的使用,学完就能跟着练,超实用!要是大家觉得江科大课程内容多,想让我给划个重点,就在弹幕里喊一声,人多的话,我后面专门出一期给大家划重点。
另外呢,还得用一款开发工具链,我推荐 Keil。毕竟它是 ARM 公司的,咱们掌握基本使用方法就好。

STM32学习后的实践项目推荐

学完基本外设,肯定得动手做些小项目练练手呀,嵌入式超注重动手能力的。好多同学都问,学完 STM32 该干啥,我给大家准备了五个项目。第一个是屏幕显示 DHT11 数据;第二个是蓝牙控制 LED;第三个是连接 OneNet 平台;还有两个项目我就先卖个关子。每个项目都对应着相应知识点,做完还能写到简历里呢。

RTOS学习推荐——FreeRTOS

学完单片机,咱还得学一款 RTOS。大家找工作的时候会发现,招聘基本都要求会用 RTOS。我推荐大家学 FreeRTOS,它代码量少,市场占有率高,资源还丰富。
学习 RTOS,咱先学会怎么用,再去研究内部实现机制。RTOS 里用得最多的就是任务管理和任务通信。

RTOS学习资料推荐

学习资料方面,内容我推荐野火和正点原子的,二选一就行。野火的内容讲得超详细,B 站 上就能找到;正点原子呢,它的文档更详细。同学们可以根据自己喜好选。
再给大家推荐几本书,《操作系统》《现代操作系统》,都是机械工业出版社出版的,大家可以选择性阅读。这里还有个小窍门哦,学完一款 RTOS 后,再学其他的 RTOS 就很简单啦,学习成本几乎为零。因为它们原理很相似,学会了 FreeRTOS,知道怎么创建任务、信号量、互斥量、队列这些,面试考的就是这些内功,而且这些原理通用。
学完 RTOS,咱可以顺便学学各种中间件的使用,像做图形界面开发用的 emWin,做磁盘管理文件系统,还有以太网通信这些。咱们知道它们的使用场景和方法就行,别太纠结细节,会用就 OK。

总结

今天主要给同学们讲了嵌入式学习路线的大框架,一些常见问题和学习经验,后面的内容我会详细给大家解答哦。同学们要是还有啥疑问,评论区留言,咱们一起探讨!

Logo

智能硬件社区聚焦AI智能硬件技术生态,汇聚嵌入式AI、物联网硬件开发者,打造交流分享平台,同步全国赛事资讯、开展 OPC 核心人才招募,助力技术落地与开发者成长。

更多推荐