📄
字号:
“嵌入式系统基础”课程读书指引(1)嵌入式应用和开发是当前计算机领域和软件产业的一大热点;各种各样嵌入式产品为计算机和软件的发展开辟了光阔的天地。嵌入式系统与计算机体系结构、网络、分布式计算和普及计算等密切相关。但也正因为此,嵌入式系统涉及的面非常广而杂;而“嵌入式系统基础”在高校是一门比较新的课程,迄今不过两三年的时间,也不太成熟,尤其是教材难以选择,如果对大家造成不便,请原谅!下面对我选教材和读书的想法做一简单说明,希望对大家有所帮助:一、“嵌入式系统基础”作为一门课程,要有知识体系和理论方面的内容,要能超越某一特定的技术,我选择了Wayne Wolf的“嵌入式系统设计原理”和印度人Raj Kamal的书“Embedded Systems: Architecture, Programming and Design”,这两本书主线都不错,内容涵盖也可以(当然不具体)。但后一本书现在看来写得比较乱,可读性不好,在此表示歉意;二、同时嵌入式系统到底是一门具体的技术领域,所以我们的教学必须落实在某一技术上,所以我选择了ARM、uC/OS和Linux;尤其以我们的实验设备和材料为学习的很好的载体。这方面其实书和电子材料都很多,还不错,我也都在上课时告诉大家,也上传到ftp或TSS上了。根据上课强调的内容,抓住关键点即可!总之,希望大家树立一个观点:我们是学习一门课程或技术的,就是要广泛的实验、阅读,只要在这个过程中抓住学习的根本和目的,抓住主线就可以了。而这些,也正是我上课和PPT想尽量提供给大家的。“嵌入式系统基础”课程读书指引(2)具体到特定书的阅读,我以两本教科书的内容为主线说:一、Wayne Wolf的书:从设计的角度讲嵌入式系统,思路清晰,娓娓道来,不错!要看的内容:第一章 嵌入式计算(理解,次重点)第二章 指令系统(结合ARM编程模型、指令系统、汇编语言程序设计和实验,重点)第三章 CPU(主要是输入输出编程、CPU模式,结合C/汇编语言混合编程和实验,重点)第四章 嵌入式计算平台(阅读、了解,一般)第五章 程序设计和分析(这一章本来写得还是不错的,尤其是5.4节“汇编和链接”,但不作我们课程的要求,了解一下即可)第六章 进程和操作系统(结合uC/OS-II,重点)其他章节可以略过了。这本书还有一个特点,就是几乎每章后面都有一个设计示例,用软件工程的方法设计嵌入式应用系统,从需求分析到规格说明到体系结构设计和详细设计,写得非常不错。大家可以多参考、学习!还有一点要提,这本书的作者从事的是EE的教学,出发点和我们不一样,这一点希望大家注意。二、Raj Kamal:这本书罗列细致,覆盖的内容和知识点也比较全,但写得的确不够自然。1-4章写得还好,后面几章同样的内容我们有更好的材料可以替代,大家就作阅读材料吧。要看的内容:第一章 嵌入式系统简介(这一章写得不错,比Wayne Wolf写得好,内容更新,更切近我们的学习内容,次重点)第二章 处理器和存储器结构(也写得不错,结合附录A-E、G,结合ARM编程模型、指令系统、汇编语言程序设计和实验,重点)第三章 设备网络的设备和总线(Devices and buses for device networks,主要看3.2节,结合实验2,次重点)第四章 设备驱动程序和中断服务机制(写得不如我们实验材料清楚,看看则已;结合C/汇编语言混合编程,结合实验4、5、6,重点)第五章 编程概念及C/C++嵌入式编程(写得很乱,看看5.4.3-.5.4.6就行了,结合C/汇编语言混合编程和实验,重点)第6、7章:作为阅读材料,本门课程不做具体要求。第8、9、10章:讲操作系统的,看我们的PPT和上课提供的材料就可以了,虽然这是重点,但该书这部分写得不好;第11章:很多case study,本门课程不做具体要求,但多看看,看之前也可以自己思考一下,或许对大家有启发。附录:不错。“嵌入式系统基础”课程读书指引(3)此外,ARM的书很多,把我们上课的讲义弄清楚,再加上做好实验、看看源代码就差不多了。如果要看书,就看我们参考资料里的蓝皮书“ARM体系结构与编程”(杜春雷著,清华大学出版社 ),或如果不买书,最好看我以前放在ftp上、刚刚上传到TSS的“ARM开发详解”,内容不多,也很精练。还有我刚刚在网上搜到,上传到TSS的PDF文件“基于ARM的嵌入式系统程序开发要点”非常好,只有45页。有些内容是我上课讲过,但大家觉得很难懂的;在后面的课中,我会尽量再补充清楚完整。学习uC/OS-II主要是让大家对一个嵌入式操作系统内核到底是怎样运行的有一个实实在在的理解,如果你认为你理解了,也会在它基础上编写应用,那就够了。我不会再考太多。如果真要看书,北航版“嵌入式实时操作系统uC/OS-II”(第二版),先看第1章(迅速扫描)、第2章(重点)、第3、4、5章,第13章,这就差不多够了;如果想继续深入,就看第6、7、8、9、10、11章,与IPC有关的内容;最后看第12章“内存管理”。我争取让大家在实验中看到uC/OS-II在我们的开发板上运行。参考书的最后一本“嵌入式技术与系统——Intel XScale结构与开发“(陈章龙著,北京航空航天大学出版社),其主要内容就是PXA255 Developer's Manual的翻译,要在开发板上做应用,可以做手册多翻翻。至于嵌入式Linux,那内容就更广了,大家到时候就以我的讲课为主,多做实验、弄通实验吧。如果有兴趣,无尽的宝藏等着你去挖掘、整理。(完)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -