|
随着嵌入式技术的普及,嵌入式技术的教学实践课程被越来越多的高等院校列为计算机、电子、电信等专业的基础课程。嵌入式技术融合了计算机软/硬件技术、通信技术和半导体微电子技术,覆盖面非常广,这便造成嵌入式教学过程中课程设置的一些障碍。
从2003年开始,国内陆续有多个厂家推出了各种型号的嵌入式技术教学的实验设备和教材,形成了以32位ARM微处理器为核心,包含硬件接口、接口编程实验、操作系统实验等的教学格局。其中,ARM微处理器依据性能从ARM7、ARM9到XScale系统(ARM7多采用三星公司的S3C44B0处理器,ARM9多采用三星公司的S3C2410处理器,Intel Xscale则采用高段的PXA270处理器),形成了低、中、高3个不同的档次。操作系统实验在嵌入式技术的教学中是一个非常重要的方向,目前各个公司提供的能够应用于教学的操作系统非常多,包括VxWorks、Linux、Windows CE和μC/OS-II等,由于课时限制,对于操作系统的教学必须有选择地进行,而如何选择操作系统则是目前教学过程中的一个重要问题。
从目前的应用情况看,笔者认为必须根据不同的专业方向及学生的基础进行选择。Linux是非常有潜力的操作系统,其开源的特点受到越来越多人的追捧,但是它对学生的基础要求比较高,必须掌握C语言以及PC机上Linux操作系统的基本操作。这对于已经开始相关基础课程的计算机专业学生是一个比较好的选择,而对于其他专业的学生课程开设难度比较大。Windows CE则以Microsoft一贯的人机界面优势在手持设备中占有一席之地,适合于偏向人机界面及其上层应用软件教学的相关课程;但是,对于偏向于实时系统及工业数据采集和控制等方向的课程,如果选择Windows CE则不是一个明智的选择。μC/OS-II刚刚被国人接受的时候确实被许多人选择作为学习嵌入式操作系统原理的理想平台,课程开设难度较低;但是随着应用的深入,其有限的功能、开发环境不统一以及很少的成功案例制约了它在嵌入式技术教学中的进一步推广。目前μC/OS-II主要被应用于计算机专业讲授操作系统原理。VxWorks以优良的实时性能、友好的集成开发环境已经在国内外嵌入式领域被广泛采用,也越来越多地被众多高等院校采纳作为嵌入式技术教学的首选操作系统,是目前学生就业的一个重要方向。它是非常适合面向计算机、电子、电信等专业学生开设相关课程。由于它具有Windows下的友好的集成开发环境,因此课程开设难度很低。目前美国风河系统公司正在国内进行推广VxWorks的大学计划,并授权武汉创维特信息技术有限公司在中国境内进行全面推广工作。
本书是〈〈ARM嵌入式技术系列教程〉〉的最后一本,也是嵌入式技术的理论和实践相结合的教材。它采用Intel Xscale系列处理器,全书可结合武汉创维特信息技术有限公司的CVT-PXA270系列教学实验系统进行实验,部分内容也可以直接采用软件仿真方式进行。
本书共分10章,各章内容介绍如下:
第一章介绍嵌入式系统的基础知识,内容包括嵌入式系统的基本概念、发展历程、ARM微处理器、嵌入式操作系统及其应用领域和嵌入式系统的未来发展趋势。
第二章介绍ARM嵌入式开发模式和基本开发流程,是刚接触ARM的读者必读的内容。
第三章简单介绍ARM体系结构的相关知识,并安排了简单的实验以加深读者印象。对于刚接触ARM的读者建议先从该章开始,如果需要进一步深入地了解ARM体系机构知识,请参考ARM相关的数据手册。
第四章以CVT-PXA270教学实验系统为例介绍了ARM系统的硬件设计方法,后续章节的许多硬件相关的内容都与该章节有关。在4.2节详细列举了CVT-PXA270的地址分配信息、扩展接口定义、I/O定义和GPIO定义等硬件资源,供后续章节阅读时查阅,也可以给在CVT-PXA270上进行二次开发的读者提供参考。
第五章介绍VxWorks的软件开发流程。首先简单介绍了其集成开发环境Tornado,然后以实验的方式介绍了如何在Tornado中进行软件仿真,最后介绍了以CVT-PXA270教学实验系统中进行系统移植及内核定义和应用程序编程的过程。对于有CVT-PXA270教学实验系统的读者,可以依次进行实验;如果没有该设备,也可根据5.2节内容学习VxWorks的软件开发流程。本章是VxWorks操作系统的基础知识,在阅读后续章节之前必须充分理解本章内容。
第六章介绍VxWorks BSP的移植过程。在6.4节安排了相关实验,该实验必须有第五章的基础。
第七章介绍VxWorks驱动程序的编写方法,包括字符设备、块设备、串口设备、网络设备等的驱动编写方法以及文件系统。本章安排了众多实验,建议在学习过程中多进行实践操作,这些实验必须有第五章的基础。
第八章介绍VxWorks应用程序的设计方法,包括任务管理、任务通信、看门狗定时器管理、任务间通信和同步、中断管理、网络通信等内容。其中安排了众多试验,建议在学习过程中多进行实践操作,这些实验必须有第五章的基础。
第九章介绍VxWorks图形用户截面的设计方法,详细分析了WindML驱动程序和应用程序的编程方法。其中安排了众多实验,建议在学习过程中多进行实践操作,这些实验必须有第五章的基础。
第十章以GPS车辆跟踪系统和ZIGBEE无线对等网络为例介绍了嵌入式系统的综合设计方法,包括硬件和软件实现。该方法适合于相关课程设计和毕业设计。
阅读本书之前要求读者具有一定的C语言基础,如果有一定的接口技术或者单片机技术的基础,则能更加容易理解。如果从来没有接触过ARM或者嵌入式技术,建议从第一章开始按顺序阅读;如果有一定的ARM嵌入式技术基础而只是想了解VxWorks相关内容,建议首先仔细阅读第五章内容,并按照该章的内容进行实验,然后再阅读第6~9章的内容。在阅读过程中,尽量通过实践验证,对于驱动部分请结合第四章硬件原理图进行理解。书中的实验有许多是必须在CVT-PXA270教学实验系统上进行的,但是如果没有目标硬件,5.3节以及第八章的多数试验也可在VxSim模拟器上运行,而不需要目标硬件。
由于嵌入式技术知识比较新,有许多英文词汇的翻译并没有被统一起来,因此,在本书的编写过程中,对于这些词汇采用中文和英文相结合的方式,以中文为主,在中文后的括号内标注其英文或英文简写。 |