前言
单片机是芯片级的微型计算机系统,具有性价比高、功耗低、易于开发等优点,可以嵌入各种应用系统中,以实现智能化控制。近20年来,嵌入式C语言的推广普及,片载Flash程序存储器及其在系统内可编程(ISP)和在应用中编程(IAP)技术的广泛采用,使得单片机越来越受到广大电子工程师的欢迎。
本书以国内最流行的80C51系列单片机的硬件和软件设计为背景,以C语言为基础,以项目为载体,采用任务驱动方式的教学方法,通过丰富的C语言程序实例,由浅入深地介绍了80C51系列单片机的基础知识及各种应用开发技术。在编写过程中,编者注重题材的取舍,使本书具有以下4个特点。
1.项目为载体,任务带动教学
本书以“项目为载体,采用任务驱动方式”编写,强调“教、学、做”一体化,坚持理论知识够用的原则,并将知识点分散到多个任务中,使读者能够边学边做,轻松完成单片机学习之旅。
2.软硬结合,虚拟仿真
沿用传统单片机学习与开发经验,通过相关编译软件(如Keil)编写程序并生成*.Hex文件,然后在Proteus中绘制硬件电路图(这一过程相当于硬件电路的焊接),调用*.Hex文件进行虚拟仿真(这一过程相当于硬件调试)。这样,对于单片机初学者来讲,可节约学习成本,提高学习积极性;对于单片机系统开发人员来讲,可缩短开发时间,提高设计效率,降低开发成本。
3.C语言编程,增强可读性
C语言是一种编译型程序设计语言,它兼顾了多种高级语言的特点,并具备汇编语言的功能。用C语言来编写程序会大大缩短开发周期,且明显地增加程序的可读性,便于改进和扩充。采用C语言进行单片机程序设计是单片机开发与应用的必然趋势。许多人员在学习MCS—51单片机时,均先学习了汇编语言,然后再学习用C语言编写MCS—51程序代码,通过这种历程他们深深地感悟:汇编指令太枯燥,学习起来费时费力,用汇编语言编写一个程序或读懂程序时不是一件容易的事情;使用C语言进行编程时,不必对单片机的硬件结构有很深入的了解,编写程序相对简单,且程序的可读性和可移植性均很强。
4.兼顾原理,注重实用
基本原理、基本实例一直是学习和掌握单片机应用技术的基本要求,本书侧重于实际应用,因此很少讲解相关理论知识,这样避免了知识的重复讲解。为紧随技术的发展,在编写过程中还注重知识的新颖性和实用性,因此本书中讲解了SPI总线、I2C总线、1-Wire总线芯片的使用方法,使读者学习的知识能够紧随时代的发展。
参加本书编写的有湖南工程职业技术学院陈忠平、徐刚强、李锐敏,湖南航天局7801研究所刘琼,湖南涉外经济学院侯玉宝、高金定,湖南科技职业技术学院高见芳,湖南三一重工集团王汉其等。全书由湖南工程职业技术学院陈建忠教授主审,在编写过程中还得到了湖南工程职业技术学院龚亮、龙晓庆、许睿等众位高工、老师的大力支持及帮助,在此向他们表示衷心的感谢。同时,对在编写过程中参考的多部51单片机原理及相关著作的作者表示深深的谢意!由于编者知识水平和经验的局限性,书中难免存在缺点和错误,敬请广大读者给予批评指正。编者E-mail:czpmcu@126.com。
编著者
2012年2月