26秋招嵌入式总结
一、嵌入式求职方向
- 嵌入式BSP开发
- 驱动开发
- MCU + RTOS开发
- 其他:蓝牙/WIFI固件开发、BIOS开发、AI嵌入式部署、AUTOSAR嵌入式开发、中间件开发、5G/6G协议栈开发
应届生更多的为MCU(STM32单片机) + RTOS (FreeRTOS)技术栈(项目里用的最多),但是另外的驱动开发以及BSP开发也要懂
二、基本学习路线
嵌入式应届校招基本学习路线总结
嵌入式其实是一个下限和上限都很高的行业,低的可能月入几k,高的应届校招月入35k+。甚至,还有大佬自己嵌入式干了几年,对某块业务很熟练,出去创业挣大米,但是属于极少数,普通人还是安安心心打工把。
01 入门技术栈 (15w+)
1. C语言学习 推荐两本书:C语言三剑客
2. 嵌入式入门学习: 嵌入式C语言自我修养
3. STM32单片机学习 推荐b站UP主 江科大
视频链接: STM32入门教程-2023版 细致讲解
4. 嵌入式开发基础学习
Linux操作系统 建议操作系统还是要好好钻研的,主要包括进程管理/内存管理/设备管理/文件管理
计算机网络 一般在IOT物联网领域以及车企座舱通信领域用到很多,如果对这些感兴趣,需要深刻理解计网
计算机组成原理 经典,无需多言,学习完能够让你对CPU、Cache、Memory有很好的理解
02 进阶技术栈 (30w+)
1. FreeRTOS 推荐嵌入式之父 韦东山
FreeRTOS入门与工程实践 --由浅入深带你学习FreeRTOS(FreeRTOS教程 基于STM32,以实际项目为导向)_哔哩哔哩_bilibili
2. 驱动开发 推荐嵌入式之父 韦东山
70天30节Linux驱动开发快速入门系列课程【实战教学、技术讨论、直播答疑】_哔哩哔哩_bilibili
3. Bootloader
uboot学习/edk2学习 PC端基本都是UEFI框架启动
LK源码学习 (Little Kernel) 一般手机厂商都是LK启动到安卓系统
4. 常用平台工具学习
在上面三部分学习技术以后,个人以为需要学习一些常用的平台工具的使用,一般工作中比较厉害的牛人,也都是各种工具熟练使用,这样开发效率更高!
脚本开发:Linux常用命令、Shell脚本、Python脚本
项目编译:Makefile
Debug工具:GDB(软件)、JTAG(硬件)
应用层芯片验证工具开发:Cpp、QT
补充:
虽然嵌入式平常开发大概率用不到Cpp语言,还是建议应届生学习一下Cpp语言,可以帮助提高上限,可能是35w和40w的区别。因为投递校招,最起码笔试要过,嵌入式面试也会出简单力扣题,Cpp刷题效率更高一点!!!
03 屠龙技术栈 (40w+)
下面列的学习方向都是比较独的方向,一般校招生基本没机会涉足,比如你恰好一段实习从事下列方向,可以考虑学习。
1. 蓝牙/WIFI嵌入式固件/驱动开发
需要手撸蓝牙BLE或者WIFI的Spec协议,如果能在实习中接触最好。
需要懂计算机网络知识
一般在IOT物联网中用的较多
2. BIOS开发/UEFI开发
需要懂UEFI Spec,最好理解edk2代码框架
理解ACPI标准、系统启动过程以及汇编
ISA指令集 X86/ARM/RISC-V
3. AI嵌入式部署
良好的Cpp技术栈,深度学习框架学习
有系统优化、性能优化经历,深刻理解CPU以及Kernel架构知识
三、项目推荐
01 RTOS项目
基于FreeRTOS的智能音箱项目(类似 小度/天猫精灵)
一般推荐做IOT物联网项目或者无人机飞控项目,这两个领域用RTOS多一点
02 驱动项目
基于V4L2架构的Linux相机项目
嵌入式Linux相机
03 OS项目
一般如果自己想要将来从事RTOS开发,建议自己从0到1实现一个RTOS系统,如果对Linux驱动更感兴趣,可以做XV6系统
推荐MIT S6.081 XV6操作系统
MIT6.S081操作系统实验.Lab0. 三行命令搭建xv6实验环境_
MIT 操作系统 6.S081
MIT操作系统6.828/6.S081教程1:参考资料与环境搭建
四、面经推荐
面经一共32篇文章,12w+字数,包含全部最新的面试必问考点,4.7w+同学学习,2800+订阅,非常适合在找工作面经薄弱的同学,3200+订阅还会涨价,提前订阅提前享受,持续更新中。
原帖链接:https://www.nowcoder.com/creation/manager/columnDetail/MJNwoM