嵌入式学习基础课程
以下是根据网络上网友的建议及自己对嵌入式系统开发的了解列出的一个课程名录,希望自己能一步一步地好好学下去!
1、《C语言》第二版 谭浩强 ; 《C程序设计语言》第二版 徐宝文译 机戒工业出版社
你能区分开指针数组和数组指针吗?
你知道函数指针吗?
你能区分开定义一个变量时系统给它分配的空间与用malloc()函数给一个变量分配的空间有什么不一样吗?
2、《数据结构》C语言版 黄国愉、叶乃青编 清华大学出版社
你能合上书本,用C语言实现书中的单链表、双链表数据结构吗?
3、《实用C++程序设计》第二板 中国电力出版社 Steve_Oualline著
此阶段主要是学习其面向对象的编程思想,加深对C语言和数据结构的理解。
4、学习单片机,最好能找个前辈带一带。
你能用51单片机做出一样实际的东西吗?即使它再简单!要注意加深对中断的理解。
5、学习ARM单片机。
(1)、细读《ARM微控制器基础与实战》周立功编写 (注:即使你不用书中的开发板)
(2)、细读相关芯片的原版英文文档。如:arm920TE.pdf S3C2410_1.2.pdf
6、学习uC/OS-II操作系统。
(1)、细读《嵌入式实时操作系统uC/OS-II》第二版 邵贝贝译
你能把uCOS-II移植到自己的平台上吗?
(2)、能编写在uCOS-II操作系统环境下运行的针对具体硬件的驱动程序
7、熟悉Linux环境,学习Linux环境编程,学习交叉编程
(1)、细读《linux命令大全.pdf》
(2)、细读《GNU Make 使用手册(中译版).pdf》
(3)、学习创建交叉编程环境.
8、学习Linux操作系统。
(1)、《UNIX环境高级编程》
(2)、细读“joyfire 笔记”,可在“www.qianrushi.com”网站的好书下载栏目获取
(3)、细读《linux内核完全注释》
(4)、细读《understanding the linux kernel 2》
(5)、利用源代码阅读利器工具"Source Insight"进行真正的linux内核原码刨析
(6)、最后进行内核移植,并能编写在linux操作系统环境下运行的针对具体硬件的驱动程序
9、 学习Linux设备驱动编写。可参考《Linux设备驱动程序》
10、复习C++,学习用QT进行图形界面编程
(1)、细读《QT编程宝典》
(2)、学会通过查看QT电子文档进行QT GUI实地编程
(3)、学习交叉编程.(其实就是把命令qmake变为tmake)
11、当然,你也可学习一下PCB的制作和设计一个自己的CPU(即软壳)
------------------------------------------------------------------------------------------
以下是学习目标:
1、学会在windows环境下编程;
2、学会在Linux环境下编程;
3、学会简单片机应用开发;
4、学会使用某一款开发板进行简单系统开发(如家居安防系统);
5、……
------------------------------------------------------------------------------------------------------
另外的课程列表:
1、C/C++语言(面向单片机);
2、数据结构;
3、数字电路/模拟电路;
4、汇编原理;
5、单片机;
6、计算机接口技术;
7、计算机组成原理;
8、编译原理;
9、计算机操作系统;
10、计算机网络;
11、实时操作系统原理;
12、8086体系架构;
13、ARM体系架构;
14、……
(具体先后顺序下次调整)
优质内容筛选与推荐>>