前言
2003年,国内单片机教学以8位机和16位机为主,80C51单片机是其中的主流机型,尽管当时许多使用80C51单片机开发产品的工程师已开始使用C51高级语言开发软件,但在高校里,许多老师仍然以汇编语言作为教学语言,许多大学生感到单片机的开发抽象且难以理解,从此放弃进入此行业。为了在高校推广单片机高级语言教学,笔者在广泛收集材料的基础上,于2004年在电子工业出版社出版了《单片机应用系统设计技术——基于C语言编程》,前后印刷4次,被不少学校、培训单位选为教材。
2008年秋季学期,因课程调整,遂产生对教材进行修订的想法,第1版教材到2008年已过去4年,国内外单片机系统软硬件开发技术也得到了很大发展,如在我国香港地区乃至国外单片机开发中,非常普遍地应用了Proteus虚拟仿真技术。Proteus提供了一种可视化仿真开发环境,很好地解决了单片机及其外围电路的设计和协同仿真问题,可以在没有实际单片机系统硬件的条件下,利用PC进行虚拟仿真,实现单片机系统的软硬件协同设计。在原理图设计阶段即可对系统性能进行评估,验证所设计的电路是否达到了功能和性能要求,使设计过程变得简单容易。修订教材的想法在电子工业出版社的大力支持下很快变为现实,《单片机应用系统设计技术——基于C51的Proteus仿真(第2版)》于2009年与读者见面,随后又出版了配套的仿真实验教材《单片机原理与应用系统设计——基于C51的Proteus仿真实验与解题指导》。至2011年1月底已重印4次,被国内30多所高校选为教材,得到读者的广泛好评。
笔者长期从事与嵌入式系统有关的科研与教学工作,近年来一直有这样的愿望,即编写一部嵌入式系统课程方面的教材,内容包括嵌入式系统基础、8位单片机原理与应用、32位单片机原理与应用。大量的实践经验表明,只有学习完单片机和C语言,并已经很好地掌握了其中的知识点,才有可能进一步学习ARM、Linux等高级嵌入式课程。我们最终决定将上述内容分为两个不同层次编写:本书为第一层次是基于8位单片机的嵌入式计算机系统,这个层次是面向目前最广泛的中低端应用,带有明显的电子系统设计特点。第二个层次则是基于32位单片机的嵌入式计算机系统,这个层次主要是面向中高端应用,如移动信息设备、网络产品等。从8位AVR或51单片机,到32位ARM、Linux和Windows Embedded等高端嵌入式系统,使读者可以从一个没有任何基础的初学者,循序渐进地成长为可以进行复杂嵌入式系统设计和开发的工程师。教学计划上,建议两个层次安排在不同学期,前者为嵌入式系统的入门教材,作为必修课,后者为嵌入式系统的高级教程,作为高年级选修课或作为研究生课程。
许多公司推出了1T规格的80C51单片机,即1个时钟周期为1个机器周期,与标准的80C51相比,指令执行速度提高了约12倍;同时进一步增强了单片机的SoC功能,如片内集成大容量存储器、A/D转换器、PWM、DataFlash、多种串行通信接口等外设;并直接使用标准的异步串口下载程序。基于这些特性,第一层次的机型仍选用80C51单片机。
全书包含理论知识、教学实验和课程设计,共10章。
第1章阐述嵌入式系统的定义、组成、概念、特点和分类,介绍嵌入式处理器的分类和选择方法、嵌入式操作系统的特点与分类、基于单片机的嵌入式系统、常用的单片机系列。
第2章阐述与计算机有关的数学知识及嵌入式计算机系统中最基本的单元电路。
第3章从实用的角度介绍单片机化产品的研制步骤和软硬件开发环境,着重介绍Keil C51的集成开发环境µVision2 IDE和支持微处理芯片仿真的ProteusVSM软件。
第4章阐述80C51单片机中的CPU结构、存储器结构及I/O端口的功能。
第5章阐述单片机指令系统和程序设计语言。
第6章阐述80C51单片机的内嵌外设:中断系统、定时器/计数器、串行口的工作原理与应用编程。
第7章阐述80C51单片机系统扩展与应用编程。
第8章以电梯控制器为设计实例,介绍80C51单片机嵌入式系统硬件电路设计和软件编程方法。
第9章阐述多任务实时操作系统RTX-51,并以Proteus交通信号灯控制器仿真电路为实例,介绍RTX-51 TINY实时操作系统的应用。
第10章为教学实验和课程设计内容,共包含11个教学实验和3个课程设计。
本书大部分程序均配有与此程序相对应的Proteus格式的电路原理图,打开原理图文件,单击“运行”按钮可以看到该示例程序的仿真运行情况。Keil µVision2 IDE调试配合Proteus单片机仿真电路,解决了以往单片机课堂教学无法现场演示的问题。
为了方便教师备课和读者学习,本书除提供PPT格式的教学课件外,还包括各章的Proteus仿真电路、相应的源程序及工程文件,单击PPT课件中的CAI图标,即可打开相应的仿真电路。
本书由张齐、朱宁西和毕盛编著。在成书过程中,莫锦辉、李蕾、赵峙岳、曾令华、李大新、张英彬、胡佳、劳炽元、李攀登、杨琴波、何俊伟、王京林、甘义成等参与了部分内容的编写、仿真电路设计和程序调试等工作,限于幅面,封面和扉页上无法一一署名。
本书得以顺利出版与电子工业出版社的大力支持和帮助是分不开的,王羽佳编辑对本书的出版做了大量细致的工作。本书部分程序示例来自于互联网,许多网友只是用昵称或符号表示,无法署名,在此一并表示衷心的感谢。
本书配套电子课件和大部分程序的源代码以及Keil μVision2 IDE调试配合的Proteus单片机仿真电路,请登录华信教育资源网http://www.hxedu.com.cn/,免费注册后,即可直接下载。或与电子工业出版社的王羽佳编辑联系(wyj@phei.com.cn)。
由于作者水平有限,本书一定还有不完善之处,殷切地期望读者给予批评指正。
作者
2011年7月