任何学习一定要有路线图,根据同学,网上搞C和搞硬件的,结合自己的思考整理了一份嵌入式学习路线,之前整理了一份不是很满意,现在又整理了一份。
嵌入式开发学习路线份三个阶段:
第一阶段、 C语言
基础菜鸟教程C语言(网站)《C程序设计语言 (第2版)》《C Primer Plus 第6版》《C程序设计 第5版-谭浩强》
进阶 《C和指针》《征服C指针》《C语言进阶》《C 陷阱与缺陷》C语言从入门到精通(第5版)《C 学习笔记》《C++ primer》
高级 《高质量C语言编程思想》《C专家编程(异步图书) (C和C++经典著作)》《C语言核心技术(原书第2版)》《C高级编程:基于模块化设计思想的C语言开发》《郝斌C语言详细笔记(附源码) (郝斌) 》《嗨翻C语言》《C语言宝典》《C语言非常道》
经典案例 1. 学员成绩管理系统 2. 计算器 3. 电子词典 4. 文件压缩器
阅读开源代码 github,gitee,《30天自制操作系统 (图灵程序设计丛书) - 川合秀实》
第二阶段、基础四大件
数据结构/算法《大话数据结构 (程杰)》《漫画算法:小灰的算法之旅》《数据结构与算法图解》《算法(第4版)》《数学之美 (吴军)》《算法导论》
操作系统 《深入理解计算机系统 原书第3版》《计算机组成原理》《现代操作系统》《linux就该这么学》《鸟哥的Linux 私房菜-基础学习篇》《Linux与Unix Shell 编程指南》《Linux命令行与shell脚本编程大全》
计算机网络 《图解TCP/IP:第5版》《计算机网络:自顶向下方法(第七版)》《图灵程序设计丛书图解TCPIP(第5版) (村山公保 竹下隆史 苅田幸雄 荒井透)》《图解HTTP》《TCP/IP详解 卷1,2,3》
设计模式 《大话设计模式》《设计模式:可复用面向对象软件的基础(典藏版)》《Head First 设计模式(中文版)》《设计模式之禅》《漫谈设计模式:从面向对象开始》
第三阶段、嵌入式
基础《单片机原理及应用——C语言程序设计与实现(第2版)》《零基础学单片机C语言程序设计》《手把手教你学单片机C程序设计》《rtx51小型实时操作》
进阶 《Keil Software –Cx51 编译器用户手册 中文完整版》《STC8H 系列单片机技术参考手册》《 ARM嵌入式系统开发-软件设计与优化》《嵌入式Linux 应用开发完全手册》《嵌入式Linux基础教程》《嵌入式Linux应用程序开发详解》
视频 1.嵌入式扫盲篇——十问嵌入式 2.ARM体系结构与Bootloader开发 3.嵌入式ARM Linux开发——ARM汇编
高级 《51单片机C语言学习之道》《51单片机C语言程序设计经典实例》《risc-v 架构》
嵌入式应用开发 经典学习视频推荐:Linux环境高级编程《GNU Make》《Debugging with GDB》《POSIX多线程程序设计》《Linux高级程序设计》《UNIX环境高级编程》《UNIX网络编程》《嵌入式Linux基础教程》《嵌入式Linux应用开发完全手册》《嵌入式Linux应用程序开发详解》《linux高性能服务器编程》
经典案例: 1、串口监听程序 2、图片浏览器 3、MP3播放器 4、聊天程序 5、 ftp程序6、音频广播程序 7、ping的实现 8、DDos攻击程序 9、ARP攻击程序//------------------------------------------------------------------------------------1. ARM模拟器开发 2. Watchdog控制程序 3. RTC时钟控制程序 4. Uart控制程序 2. LCD控制程序 6. 触摸屏控制程序 7. DMA控制程序 8. 音频控制程序 9. 网卡控制程序 10. 文件系统制作 11. ARM-Linux移植
嵌入式低层开发(内核、驱动)内核 《深入理解Linux内核》《Linux内核源代码情景分析》《Linux内核设计与实现》
驱动 《Linux设备驱动程序》《Linux设备驱动开发详解》《Linux驱动开发入门与实战》《精通Linux驱动程序开发》
经典案例 1. GPIO驱动 2. RTC时钟驱动 3. WatchDog驱动 4. Udev移植 5. 触摸屏输入设备驱动6. LCD显示设备驱动 7. DMA驱动 8. 音频设备驱动 9. Nand Flash块设备驱动 10. 网络设备驱动
硬件/数字电路 《数字逻辑电路与系统设计第二版》《数字集成电路--电路、系统与设计》《手把手教你学高速电路信号仿真》
《道德经》老子说:
合抱之木,生于豪末;九层之台,起于累土;千里之行,始于足下;难作于易,大作于细!
慎终如始,则无败事; 牢记,共勉!