本书以KEIL公司最新版本8051单片机开发套件讲述单片机C语言应用程序设计。该套件的编译器有支持经典8051和8051派生产品的版本,统称为Cx51。Windows集成开发环境μVision2把μVision1用的模拟调试器dScope与集成环境无缝地结合起来,使用更方便,支持的单片机品种更多。全书共分三部分:Cx51基础篇、Cx51工具篇和Cx51应用篇。基础篇适用于单片机的初学者,结合8051结构讲述C语言基础知识。使用篇包括详细的编译器、宏汇编器和链接器的控制命令,以及μVision环境使用方法。应用篇包括混合编程以及单片机内部资源、扩展资源和实时操作系统的编程方法。
\r\n 本书的特点是取材于最新原文资料,总结实际教学和应用经验,内容范围广泛,实例详细具体。本书既适用于单片机初学者学习,又可作为单片机设计开发人员的工具书。
\r\n 本书附带一张光盘,内含评估版本软件和书中程序。
第一部分 Cx51基础篇\r\n 第一章 单片机基础知识\r\n 1.1 8051单片机的特点\r\n 1.2 8051的内部结构\r\n 1.2.1 中央处理器\r\n 1.2.2 存储器组织\r\n 1.2.3 片内并行接口\r\n 1.2.4 8051的内部资源\r\n 1.2.5 8051的芯片引脚\r\n 1.2.6 单片机的工作方式\r\n 1.3 8051的系统扩展\r\n 1.3.1 外部总线的扩展\r\n 1.3.2 外部程序存储器的扩展\r\n 1.3.3 外部数据存储器的扩展\r\n 1.4 8051指令系统\r\n 1.4.1 寻址方式\r\n 1.4.2 指令说明\r\n 1.4.3 伪指令\r\n 1.4.4 指令系统表\r\n 1.5 实用程序设计\r\n 第二章 C与8051\r\n 2.1 8051的编程语言\r\n 2.2 Cx51编译器\r\n 2.3 KEIL 8051开发工具\r\n 2.4 KEIL Cx51编程实例\r\n 2.5 Cx51程序结构\r\n 第三章 Cx51数据与运算\r\n 3.1 数据与数据类型\r\n 3.2 常量与变量\r\n 3.3 Cx51数据的存储类型与8051存储器结构\r\n 3.4 8051特殊功能寄存器(SFR)及其Cx51定义\r\n 3.5 8051并行接口及其Cx51定义\r\n 3.6 位变量(BIT)及其Cx51定义\r\n 3.7 Cx51运算符、表达式及其规则\r\n 3.7.1 Cx51算术运算符及其表达式\r\n 3.7.2 Cx51关系运算符、表达式及优先级\r\n 3.7.3 Cx51逻辑运算符、表达式及优先级\r\n 3.7.4 Cx51位操作及其表达式\r\n 3.7.5 自增减运算符、复合运算符及其表达式\r\n 第四章 Cx51流程控制语句\r\n 4.1 C语言程序的基本结构及流程图\r\n 4.1.1 顺序结构及其流程图\r\n 4.1.2 选择结构及其流程图\r\n 4.1.3 循环结构及其流程图\r\n 4.2 选择语句\r\n 4.2.1 选择语句 if\r\n 4.2.2 switch/case语句\r\n 4.3 循环语句\r\n 4.3.1 while语句\r\n 4.3.2 do while语句\r\n 4.3.3 for循环语句\r\n 第五章 Cx51构造数据类型\r\n 5.1 数组\r\n 5.1.1 一维数组\r\n 5.1.2 二维数组\r\n 5.1.3 字符数组\r\n 5.1.4 查表\r\n 5.1.5 数组与存储空间\r\n 5.2 指针\r\n 5.2.1 指针的基本概念\r\n 5.2.2 数组指针和指向数组的指针变量\r\n 5.2.3 指向多维数组的指针和指针变量\r\n 5.2.4 关于KEIL Cx51的指针类型\r\n 5.3 结构\r\n 5.3.1 结构的定义和引用\r\n 5.3.2 结构数组\r\n 5.3.3 指向结构类型数据的指针\r\n 5.4 共用体\r\n 5.5 枚举\r\n ……\r\n第二部分 Cx51工具篇\r\n第三部分 Cx51应用篇\r\n附录A KEIL Cx51与ANSI C的不同\r\n附录B KEIL Cx51的版本差异\r\n附录C 代码优化\r\n附录D 编译器限制\r\n附录E 提示和技巧\r\n附录F 库函数参考\r\n参考文献
单片机体积小、重量轻,具有很强的灵活性而且价格不高,得到越来越广泛的应用。20世纪80年代中期,Intel公司将8051单片机内核使用权以专利互换或出售形式转给世界许多著名IC制造厂商,如Philips,Atme1,Dallas,Infineon和ADI公司等。这样8051就变成有众多制造厂商支持的、发展出上百个品种的大家族。到目前为止,其他任何一个单片机系列均未发展到如此的规模且如此具有生命力。8051是单片机教学的首选机型,已成为单片机领域的实际标准。
C语言是一种编译型程序设计语言。它兼顾了多种高级语言的特点,并具备汇编语言的功能。用C语言来编写目标系统软件,会大大缩短开发周期,且明显地增加软件的可读性,便于改进和扩充,从而研制出规模更大、性能更完备的系统。用C语言进行8051单片机程序设计是单片机开发与应用的必然趋势。单片机的程序设计应该以C语言为主,以汇编语言为辅。汇编语言掌握到只要可以读懂程序,能在时间要求比较严格的模块中进行程序的优化即可。采用C语言不必对单片机和硬件接口的结构有很深入的了解,编译器可以自动完成变量存储单元的分配,编程者只需专注于应用软件部分的设计,可大大加快软件的开发速度。采用C语言可以很容易地进行单片机的程序移植工作,有利于产品中单片机的重新选型。
KEIL公司C51编译器DOS版本曾通过美国Franklin公司在市场上销售多年,最早传入我国并得到广泛使用的是Franklin C51 V3.2版本。北京航空航天大学出版社1997年就出版了以此版本为基础的《单片机的C语言应用程序设计》;1999年对该书进行了修订,使其成为一些学校的单片机教材,受到广大单片机用户的欢迎。随着时间的推移,KEIL公司的产品不断升级,V5.0以上版本C51编译器就配有基于Windows的μVision集成开发环境和dScope软件模拟调试程序。现KEIL公司的编译器有支持经典8051和8051派生产品的版本,统称为Cx51。新版本μVision2把μVision1用的模拟调试器dScope与集成开发环境无缝地结合起来,界面更友好,使用更方便,支持的单片机品种更多。广州周立功单片机发展有限公司已取得KEIL公司8051单片机开发套件的代理权,拥有KEIL公司最新使用手册,可为国内单片机高级语言编程者提供技术支持。本书是在周立功公司的技术人员与北京理工大学、中国海洋大学和中央民族大学的老师通力协作下完成的。
全书共分三大部分:Cx51基础篇、Cx51工具篇和Cx51应用篇。Cx51基础篇为第一章~第六章,包括单片机基础和C语言基础,使单片机的初学者可以具备基本的编程能力。C语言的讲解结合8051的硬件结构。Cx51使用篇为第七章~第十章,包括Windows集成开发环境、编译器、汇编器、链接器和实用工具的使用,使学习者可以熟练使用开发环境和配置控制命令。控制命令带有μVision环境的使用方法和使用样例。Cx51应用篇为第十一章~第十四章,包括单片机内部资源和扩展资源的编程技术、C语言和汇编语言混合编程技术以及带实时操作系统的编程技术,读者可得到深入的编程知识。混合编程技术结合模块化结构程序设计,是高效编程的关键。
本书取材于最新原文资料,总结实际教学和应用经验,编程实例丰富,内容覆盖面广,附带一张光盘,内含评估版本软件和书中程序。希望本书能作为单片机开发人员的必备工具书,对单片机的应用推广工作起到一定的作用。
由于书中程序和图表较多,难免有误漏之处,恳请读者批评指正。