下载地址:

 单片机技术在电子系统中的应用越来越广泛,已有融于其中之势。目前很多新型电子器 件对控制信号要求很高,若不采用单片机或可编程器件则几乎无法使用。单片机技术的应用 不仅可以简化电路设计,而且可以大大提高电路设计水平。 单片机知识大体上分为基本结构、编程语言、定时/中断、通信、系统扩展5部分。除了基 本结构、定时/中断、通信这3部分变化不大,其他部分伴随相关技术的发展均有所变化。尤其 是具有单片机系统仿真设计功能的Pr o t eus软件的出现,使得我们可以在计算机纯软环境中 完成单片机电子系统的设计与调试, Pr o t eus系统库不仅提供了51、 AVR、 PIC等单片机模型, 以及大量模拟、数字、光电、机电类元器件模型,还提供了许多虚拟仪器。Ke i l环境下开发的程 序和Pr o t eus设计的仿真电路进行交互式联调运行,解决了长期以来困扰单片机教学的软件 和硬件无法很好结合的问题。学会Pr o t eus和Ke i l软件的使用,可以极大地降低单片机学习 难度,提高学习质量。本书在附录中给出了Pr o t eus及Ke i l软件平台的使用方法。 第3章“ C51语言程序设计基础”介绍了在51单片机中使用的C语言。C语言具有高级 语言的功能和低级语言控制硬件的能力。传统的单片机编程采用汇编的居多,用汇编编程不 仅需要专门学习汇编语言,而且易与微机原理中的汇编混淆,同时所学汇编语言在其他高档单 片机及嵌入式系统中没有用武之地。与此相反, C语言是电子信息类各专业的通识课程, 51 单片机所用的C语言(即C51)和标准C语言(即ANS IC)基本相同,只要掌握其应用方法即 可。更重要的是, C语言是公认的高效简洁、贴近硬件的编程语言,程序可读性好且易于移植, 其他高档单片机和嵌入式系统均用C语言编程,所以使用C语言学习单片机编程,不仅可以 充分利用已有知识,而且为进一步学习奠定了基础。同时, Ke i l集成环境中的C51编译器是 51单片机最高效、最灵活的开发平台之一,为我们提供了:编译器、汇编器、实时操作系统、项 目管理器以及调试器。 一个完整的单片机系统通常包括键盘输入、显示输出、打印输出、数据采集等许多功能模 块。这些功能模块一般通过I /O端口实现与单片机的数据交换,但是单片机的I /O端口有 限,且一般用来处理数字信号,从而产生了总线式传输模式。这样,系统扩展的方向也由原来 单一的并口应用转到SPI( Se r i a lPe r i phe r a lI n t e r f a c e)、 I 2C( I n t e rICBus)、 1 -Wi r e等器件的应 用。新颖的外围电路、新器件与新技术为实现优化设计、系统集成提供了技术支持。本书把外 部扩展技术的重点放在了以介绍SPI、 I 2C等串行接口的原理和应用方面,这不仅符合技术的 发展方向,同时也更加贴近实际应用。第7章介绍了串行总线应用的知识。 单片机的学习不能宥于单片机本身,必须将单片机置于实际系统之中。全书以夯实基础、 面向应用,理论与实践、方法与实现紧密结合为主线展开,通过实例来切入知识点,通过具体实 际需求的实现来体现单片机技术硬软协同工作的问题。只有让单片机在外围电路环境下工 作,让单片机在电子系统中工作,才能真正体会单片机和外围扩展硬件、控制硬件协同工作的 北京航空航天大学出版社
 51单片机原理与实践(C语言版)
· 2    ·
设计思想及实现方法。 考虑到有些读者是从汇编语言转到C语言以及深入研究的需要,本书在附录中给出了相 关例题的汇编实现程序。 参加本书编写工作的还有吴祖国、张兴胜、汪小会、毕大庆、王津、海磊等同志,在此一并表 示感谢。 本书强调实用性和先进性,目标是将一些新趋势、新技术、新思想融于单片机具体知识的 传递过程中,但由于编者水平有限,难免存在不妥之处,敬请广大读者批评指正