本人是一名大一工程本科在校生,有一定C语言基础但是对于逻辑电路以及芯片架构等只有很浅的了解。之前独自花了些时间思考了一下,感觉物联网是自己以后可能想走的路线。觉得现在从嵌入式开始学习是个不错的起点。于是想利用今年暑假的时间自学入门一波嵌入式系统&单片机。请问各位前辈有没有一些嵌入式系统的学习路线以及学习资源推荐?
本人是一名大一工程本科在校生,有一定C语言基础但是对于逻辑电路以及芯片架构等只有很浅的了解。之前独自花了些时间思考了一下,感觉物联网是自己以后可能想走的路线。觉得现在从嵌入式开始学习是个不错的起点。于是想利用今年暑假的时间自学入门一波嵌入式系统&单片机。请问各位前辈有没有一些嵌入式系统的学习路线以及学习资源推荐?
我认为无论是物联网还是嵌入式系统都是比较大且宽泛的概念,涉及的知识面很多。建议根据你自身的能力和兴趣,从一个点出发,去逐步的拓展完善你在这方面的知识体系。多动手,多实践,是学习技术的不二途径,没有什么固定的学习路线。比如我看你已经会使用 Arduino 了,那么你可以继续基于 Arduino 去做一些和这方面相关的小项目,逐步深入了解。在单片机里目前学习资料最丰富的就是 STM32 一类的 ARM 架构的单片机了,弄一个简单的开发板,把他提供的例程、小项目自己动手做一做,边做边思考。说到底,还是动起手来,实践出真知!
如果你要学习 stm32,我觉得『野火』的开发板和视频可以试试。在有了一定了解了之后就是要学会看芯片手册等官方资料。
这本书对了解 arm 也很有帮助
学单片机/嵌入式的话,我觉得 Arduino 是一个非常适合入门用的平台,上手容易,正反馈强。学习 Arduino 的过程中,可以在尽量少涉及电子、计算机原理层面的知识,去学习和了解开发嵌入式应用的流程,以及了解程序编写、器件选型、架构设计等的大致流程。
在仅考虑嵌入式软件开发的工程实践层面,Arduino 玩得熟了之后,可以把方向分为以下三种,在其中去选一个或多个去学习:
以上三个方向之间其实并没有明确界线,裸机可以套上操作系统,也可以把操作系统给去掉只剩裸机。前两个方向软件和硬件都涉及,第三个方向更侧重于软件层面。
当然,后面的学习过程中,其实不能仅学习各种嵌入式平台的应用,电子、计算机原理层面的理论/实践知识也是需要视题主感兴趣的领域去加强学习的,具体自己偏向于哪个领域可以在后面的不断摸索中慢慢了解到。
题主还提到了物联网,个人认为物联网可能不能算作一个路线,因为物联网这个概念其实涉及到很多很多学科,作为一个个人,时间有限,只能选择其中的部分领域去深入学习,例如,物联网可以分为以下几个领域:
物联网包含的学科比较多,以上可能也没有全列出来,题主可以在后期的慢慢摸索中找到自己更感兴趣或者更擅长的方向去深入学习。
总结一下,在学习过程中要注意的就是两点:
祝题主学习愉快!
// 翻上去读了读题目,我感觉我好像写跑题了...