嵌入式工程师学习框架
我整理的是朱有鹏老师所讲的,嵌入式程序员学习的框架(也就是学习路径)。
首先是核心课程的基础——linux环境下的C语言,这部分是最重要也是容量最大的。其次核心课程还包括linux应用程序开发(系统编程、网络编程);ARM编程(ARM体系结构、ARM汇编、开发板常见外设裸机编程);linux系统移植;linux驱动开发。这些是核心课程的内容也是费时最多的,如果按一天4个小时高效学习,要学3个月左右(是不是很多啊,但如果这部分学完你就可以找工作了)。
然后是拓展方面分为三个方面:Android拓展、物联网拓展、实训项目拓展。
Android拓展分为android应用开发、android系统定制、android HAL驱动。前面一个是目前对基础要求低的,主流的方向(网上教程最多)。后面两个都要在linux环境下开发,难度较大。
物联网拓展主要是涉及软硬件结合(本人是物联网专业的,是先学的硬件才接触linux的,感觉也可以),主要有GPS和地图查询服务,WIFI,蓝牙,zigbee,RFID等等,这些硬件挺多的,每个都有自己的特性,买硬件的时候卖家一般都要提供一定的学习资料,只要肯认真肯定可以学会的。一般建议学习路线是:51-zigbee-stm32-arm(也就是linux系统编程、网络编程了),其他模块在做项目过程中再去掌握也是可以的。
实训项目拓展就上将上面三个拓展进行结合:比如四轴飞行器,温湿度采集分析系统等等。
以上就是朱老师的学习总体框架,我的呢和他的有些不一样,我是从硬件先做起然后才接触linux的,每个人都有自己的学习路线,只要能够走下去就行,条条大路通罗马嘛。