前言

随着物联网和人工智能等技术不断向纵深发展,单片机的重要性更加凸显。单片机是单片微型计算机的简称,是把组成微型计算机的各功能部件(中央处理单元CPU、随机存取存储器RAM、只读存储器ROM、并行I/O接口、串行通信接口、定时器/计数器、中断系统、系统时钟及系统总线等)封装在一块尺寸有限的集成电路芯片中。由于单片机具有可靠性高、体积小、性价比高和应用灵活性强等特点,因而在工业自动检测与控制、机器人、数据采集、智能仪器仪表、机电一体化产品、汽车电子设备、武器装备、办公自动化设备、武器装备、智能终端、通信设备、导航系统、智能家用电器、计算机外部设备、通信产品和玩具等领域获得广泛应用。
单片机经历了8位机、16位机和32位机3个发展阶段。8位机以Intel公司的MCS51为代表;16位机以Intel公司的MCS96为代表;32位机以意法半导体(ST)公司采用ARM核的STM32为代表。自从Intel公司于20世纪80年代初推出MCS51系列单片机以后,几乎所有MCS51系列单片机都以Intel公司最早的典型产品8051为核心,而且增加了一定的功能部件,所以人们习惯于用8051来称呼MCS51系列单片机。MCS51系列是最早进入我国且在我国得到广泛应用的单片机主流品种。
因为8051单片机结构简单、指令易学,所以是单片机初学者的首选。如果不学8051单片机,而直接学STM32,通常会遇到很多难题和困惑,要费很大精力;如果学了8051单片机,则较容易对硬件架构、软件设计、软硬件结合等相关知识和技术进行总体把握与认知,此时再学STM32,会发现很容易上手,且能够更深刻地理解和掌握STM32,可达到事半功倍的效果。因此,通过学习8051单片机可以为其他类型单片机的学习打下坚实的基础。在目前的单片机应用市场中,8位机和32位机各有各的应用场合,会共存很长时间。
为了提高读者学习8051单片机的效率,本书以仿真实验代替实物实验,基于Proteus仿真软件进行电路设计及程序仿真,使8051单片机的抽象概念直观化、编程效果可视化。
本书共包括11章,第1章介绍了8051单片机的内部结构、存储器结构、引脚功能和并行I/O口等硬件的主要知识点。第2章介绍了Proteus仿真软件和C51开发工具Keil μVision5,为后续各个实验打下基础。第3章介绍了指令系统的基本概念、寻址方式和五大类共111条指令,并且通过多个示例介绍了51单片机汇编语言程序设计技术。第4章介绍了C51的数据类型和存储器类型、将变量定义在不同类型存储器中的方法、使用关键字“_at_”和预定义宏指定变量的绝对地址以及C51指针、C51函数定义的一般形式、C51与汇编混合编程。第5~11章介绍了各种常见I/O接口的原理与使用,如键盘与显示器接口技术、中断系统、定时器/计数器、串行口、数模与模数转换接口技术、程序存储器扩展、数据存储器扩展、8155可编程并行I/O端口扩展以及利用I2C总线进行串行I/O端口扩展等。通过这11章的学习,可以提高读者单片机软、硬件系统的整体设计意识和设计能力,为以后深入学习嵌入式技术打下坚实的基础。
本书由北京邮电大学计算机专业博士、高校副教授张同光担任主编,河南师范大学洪双喜和刘春红、电能易购(北京)科技有限公司王晓兵、郑州轻工业大学陈明、新乡学院田乔梅担任副主编。其中,洪双喜、刘春红、王晓兵和陈明编写第5~11章,田乔梅编写第4章,张同光编写第1~3章及其余部分。全书最后由张同光统稿和定稿。
本书得到了河南省高等教育教学改革研究与实践重点项目(No.2021SJGLX106)、河南省科技攻关项目(No.202102210146)、网络与交换技术国家重点实验室开放课题(SKLNST2020101)以及高效能服务器和存储技术国家重点实验室的支持,在此表示感谢。
本书对应的电子课件、源代码文件、Proteus仿真电路文件和虚拟机文件等各种配套教学资源可在清华大学出版社网站(https://www.tup.com.cn)下载。本书配套提供了近70个教学视频,读者在学习的过程中,可扫描教学视频二维码观看与学习。
由于编者水平有限,书中欠妥之处,敬请广大读者批评、指正。

编者2023年8月