学习嵌入式,显然应偏重于嵌入式软件,特别是嵌入式操作系统方面,应是我们的强项。对于搞嵌入式软件的人,最重要的技术显然是:
(1) 掌握主流嵌入式微处理器的结构与原理
(2) 必须掌握一个嵌入式操作系统
(3) 必须熟悉嵌入式软件开发流程并至少做过一个嵌入式软件项目。
第一层目录:
0.基础预科
1.ARM裸机全集
2.uboot和linux内核移植
3.linux驱动开发
4.C语言专题精讲篇
5.linux应用编程和网络编程
6.阶段项目篇
说明:第一层目录中共有6个部分,共同构成了嵌入式核心课程。每个部分下面又会分为若干模块,以此来构建出整个知识体系网络。
第二层目录:
0.基础预科
0.1.嵌入式软件工程师完全学习指南
0.2.朱老师带你零基础学Linux
0.3.嵌入式linux C编程基础
1.ARM裸机全集
1.1.ARM裸机第一部分-ARM那些你得知道的事儿
1.2.ARM裸机第二部分-ARM体系结构与汇编指令
1.3.ARM裸机第三部分-开发板、原理图和数据手册
1.4.ARM裸机第四部分-GPIO和LED
1.5.ARM裸机第五部分-SDRAM和重定位relocate
1.6.ARM裸机第六部分-时钟系统
1.7.ARM裸机第七部分-串口通信详解
1.8.ARM裸机第八部分-按键和CPU的中断系统
1.9.ARM裸机第九部分-定时器、看门狗和RTC
1.10.ARM裸机第十部分-PWM和蜂鸣器
1.11.ARM裸机第十一部分-I2C通信详解
1.12.ARM裸机第十二部分-NandFlash和文件系统
1.13.ARM裸机第十三部分-ADC
1.14.ARM裸机第十四部分-LCD显示器
1.15.ARM裸机第十五部分-触摸屏TouchScreen
1.16.ARM裸机第十六部分-shell原理和问答机制引入
2.uboot和linux内核移植
2.1.U-Boot学习前传
2.2.补基础之shell和Makefile
2.3.零距离初体验U-Boot
2.4.U-Boot配置和编译过程详解
2.5.U-Boot源码分析1-启动第一阶段
2.6.U-Boot源码分析2-启动第二阶段
2.7.U-Boot源码分析3-启动内核
2.8.U-Boot源码分析4-命令体系
2.9.U-Boot源码分析5-环境变量
2.10.U-Boot源码分析6-硬件驱动
2.11.U-Boot移植1-三星官方
2.12.U-Boot移植2-官方标准移植
2.13.Logo显示和Fastboot原理
2.14.话说Linux内核
2.15.内核的配置和编译原理
2.16.内核的启动过程分析
2.17.从三星官方内核开始移植
2.18.根文件系统的原理
2.19.根文件系统构建实验及过程详解
2.20.buildroot的引入和介绍
3.linux应用编程和网络编程
3.1.Linux中的文件IO
3.2.文件属性
3.3.获取系统信息
3.4.Linux进程全解
3.5.Linux中的信号
3.6.高级IO
3.7.Linux线程全解
3.8.linux网络编程基础
3.9.linux网络编程实践
4.C语言专题精讲篇
4.1.内存这个大话题
4.2.C语言位操作
4.3.指针才是C的精髓
4.4.C语言复杂表达式与指针高级应用
4.5.数组&字符串&结构体&共用体&枚举
4.6.C语言宏定义与预处理、函数和函数库
4.7.存储类&作用域&生命周期&链接属性
4.8.一些杂散但值得讨论的问题
4.9.链表&状态机与多线程
4.10.番外篇-程序员和编译器之间的暧昧
5.Linux驱动开发
5.1.驱动应该怎么学
5.2.字符设备驱动基础
5.3.字符设备驱动高级
5.4.驱动框架入门之LED
5.5.Linux设备驱动模型
5.6.Misc类设备与蜂鸣器驱动
5.7.Framebuffer驱动详解
5.8.input子系统基础之按键
5.9.I2C总线和触摸屏驱动移植实战
5.10.块设备驱动介绍
5.11.网络设备驱动介绍
6.阶段项目篇
6.小项目.图片解码播放器视频课程
学了这些就差不多了