描述
开 本: 16开纸 张: 胶版纸包 装: 平装-胶订是否套装: 否国际标准书号ISBN: 9787302647348丛书名: 计算机类技能型理实一体化新形态系列
本书内容来自一线教师的多年教学成果,同时作者有多年的企业从业实际工作经验,所以教材定位准,内容实用,书中有大量的实用案例,非常适合学生和从业人员学习。
本书坚持理论够用、侧重实用的原则,以Proteus虚拟仿真技术和Keil C51为基础,用案例/示例来讲解每个知识点,对8051单片机的软、硬件做了较为详细的阐述。全书内容充实、结构清晰、通俗易懂,力争做到使初学者充满兴趣地学习8051单片机技术。本书共11章,分别为: 8051单片机基本结构、单片机仿真环境、指令系统与汇编语言程序设计、C51语言程序设计、键盘与显示器接口技术、中断系统、定时器/计数器、串行口、数模与模数转换接口技术、单片机系统扩展以及Proteus仿真设计实例。其中,第1章、第3章和第4章为本书最基础和最重要的3章,全面而详细地介绍了8051单片机硬件和软件两方面的知识;第2章介绍了Proteus仿真软件和C51开发工具Keil μVision5;第5~11章介绍了各种常见I/O接口的原理与使用方法。本书所有示例均在Proteus上调试通过,可以直接运行。书中所有源代码及各种配套资源可在清华大学出版社网站下载。 本书适合作为高等院校计算机类、电气类、自动化类、通信类、电子信息类、机械类、仪器仪表类及其他相关专业的单片机教材使用,也可作为从事单片机应用系统开发的工程技术人员、单片机技术爱好者及各类自学人员的参考书。
第1章8051单片机基本结构1
1.1单片机概述1
1.28051单片机的内部结构4
1.3CPU5
1.3.1运算器5
1.3.2控制器5
1.3.3位处理器6
1.48051单片机的存储器结构6
1.4.18051存储器结构6
1.4.2程序存储器7
1.4.3片内数据存储器8
1.4.4片外数据存储器9
1.4.5特殊功能寄存器10
1.58051单片机的引脚功能12
1.5.18051单片机的引脚12
1.5.2电源及外接晶振12
1.5.3控制引脚13
1.5.4单片机最小系统14
1.6并行I/O口15
1.6.1P0口15
1.6.2P1口16
1.6.3P2口17
1.6.4P3口18
1.7时钟电路与时序19
1.7.1时钟电路19
1.7.2CPU时序19
1.8单片机应用系统的开发过程21
1.9习题23
第2章单片机仿真环境25
2.1Proteus和Keil μVision5252.1.1Proteus简介25
2.1.2Keil μVision5简介26
2.1.3本书实验环境26
2.2流水灯27
2.2.1使用Proteus设计电路原理图27
2.2.2使用Keil μVision5建立工程文件(汇编语言)30
2.2.3使用Keil μVision5建立工程文件(C语言)34
2.3Proteus与Keil μVision5联合仿真调试35
2.4习题36
第3章指令系统与汇编语言程序设计37
3.1指令系统概述37
3.1.1指令格式37
3.1.2指令分类38
3.1.3执行指令的过程38
3.2寻址方式39
3.2.1寄存器寻址39
3.2.2直接寻址40
3.2.3立即寻址40
3.2.4寄存器间接寻址41
3.2.5基址变址寻址41
3.2.6相对寻址42
3.2.7位寻址43
3.2.8七种寻址方式总结44
3.3指令分类详解44
3.3.1指令中的符号及其含义44
3.3.2数据传送类指令45
3.3.3算术运算类指令48
3.3.4逻辑运算及移位类指令51
3.3.5控制转移类指令53
3.3.6位操作类指令55
3.451单片机汇编语言程序设计57
3.4.1汇编语言的特点57
3.4.2汇编语言的语句格式57
3.4.3汇编语言的伪指令58
3.4.4电路原理图61
3.4.5顺序程序设计61
3.4.6分支程序设计64
3.4.7循环程序设计65
3.4.8查表程序设计68
3.4.9汇编语言程序的框架69
3.5习题70
第4章C51语言程序设计73
4.1C51编程语言简介73
4.2本章所有示例使用的电路原理图74
4.3C51程序设计基础74
4.3.1数据类型75
4.3.2存储器类型75
4.3.3bit、sbit、sfr和sfr16数据类型77
4.3.4存储模式(编译模式)和存储器类型80
4.3.5使用关键字_at_指定变量的绝对地址82
4.3.6使用预定义宏指定变量的绝对地址83
4.3.7C51指针84
4.4C51函数85
4.4.1函数定义的一般形式85
4.4.2函数的调用86
4.4.3本征库函数86
4.5C51程序的一般结构87
4.6C51与汇编混合编程88
4.6.1混合编程的必要性88
4.6.2混合编程的要点88
4.6.3C51程序中直接嵌入汇编代码89
4.6.4C51程序调用汇编子程序——无参数传递的函数调用91
4.6.5C51程序带1个参数调用汇编子程序——自动产生汇编源文件92
4.6.6C51程序带2个参数调用汇编子程序——自动产生汇编源文件95
4.7习题97
第5章键盘与显示器接口技术99
5.1LED数码管显示器接口技术99
5.1.1LED数码管显示器99
5.1.2LED数码管显示器的工作方式100
5.1.3使用LED数码管显示器101
5.1.4使用74HC595驱动8位LED数码管104
5.1.5使用MAX7219驱动多位LED数码管108
5.2键盘接口技术113
5.2.1编码键盘接口技术114
5.2.2非编码键盘接口技术115
5.38279可编程键盘/显示器芯片接口技术118
5.3.18279内部结构及工作原理118
5.3.28279的寄存器120
5.3.3使用8279芯片124
5.4LCD接口技术127
5.4.1LCD工作原理127
5.4.2LM016L液晶显示屏简介127
5.4.3点阵字符型液晶模块的直接访问方式133
5.4.4点阵字符型液晶模块的间接访问方式136
5.4.54位数据总线接口138
5.4.6使用12864点阵图形LCD显示模块140
5.5习题144
第6章中断系统145
6.1中断简介145
6.2中断系统结构与中断控制146
6.2.1中断系统结构图146
6.2.2中断控制147
6.3中断函数150
6.4中断应用举例150
6.4.1中断源扩展151
6.4.2中断嵌套152
6.5习题154
第7章定时器/计数器156
7.1定时器/计数器的工作方式与控制156
7.1.1定时器/计数器的功能156
7.1.2工作方式控制寄存器TMOD156
7.1.3定时器/计数器控制寄存器TCON157
7.2定时器/计数器的工作方式158
7.2.1工作方式0和工作方式1158
7.2.2工作方式2160
7.2.3工作方式3161
7.3定时器/计数器应用举例162
7.3.1定时功能162
7.3.2计数功能168
7.4习题171
第8章串行口173
8.1异步串行通信173
8.1.1字符的帧格式173
8.1.2数据传送速率174
8.1.3数据通路方式174
8.1.4串行口结构175
8.2串行通信控制寄存器176
8.2.1SCON176
8.2.2PCON和波特率177
8.2.3IE和IP178
8.2.4中断请求的撤销178
8.3串行口的工作方式178
8.3.1工作方式0178
8.3.2工作方式1181
8.3.3工作方式2和工作方式3183
8.4习题191
第9章数模与模数转换接口技术193
9.1ADC及DAC的主要性能指标193
9.2DAC接口技术194
9.2.1DAC0832与8051单片机的接口方法194
9.2.2DAC1208与8051单片机的接口方法200
9.2.3串行DAC与8051单片机的接口方法202
9.2.4利用DAC接口实现波形发生器205
9.3ADC接口技术207
9.3.1比较式ADC0809与8051单片机的接口方法207
9.3.2串行ADC与8051单片机的接口方法211
9.4习题214
第10章单片机系统扩展215
10.1线选法和译码法215
10.2程序存储器扩展216
10.3数据存储器扩展219
10.48155可编程并行I/O端口扩展222
10.4.18155引脚和内部结构222
10.4.28155控制字及其工作方式224
10.4.38155外部扩展举例225
10.5利用I2C总线进行串行I/O端口扩展229
10.5.1I2C串行总线系统的基本结构229
10.5.2I2C总线的数据传送规定230
10.5.3I2C接口存储器芯片24C04233
10.5.4I2C接口A/DD/A芯片PCF8591237
10.6习题243
第11章Proteus仿真设计实例245
11.1DS18B20多点温度监测系统设计245
11.1.1功能要求245
11.1.2硬件电路设计245
11.1.3软件程序设计249
11.2带农历的电子万年历设计255
11.2.1功能要求255
11.2.2硬件电路设计256
11.2.3软件程序设计258
11.3电子密码锁设计267
11.3.1功能要求267
11.3.2硬件电路设计267
11.3.3软件程序设计267
附录AASCII码表281
附录B运算符的优先级和结合性282
参考文献283
随着物联网和人工智能等技术不断向纵深发展,单片机的重要性更加凸显。单片机是单片微型计算机的简称,是把组成微型计算机的各功能部件(中央处理单元CPU、随机存取存储器RAM、只读存储器ROM、并行I/O接口、串行通信接口、定时器/计数器、中断系统、系统时钟及系统总线等)封装在一块尺寸有限的集成电路芯片中。由于单片机具有可靠性高、体积小、性价比高和应用灵活性强等特点,因而在工业自动检测与控制、机器人、数据采集、智能仪器仪表、机电一体化产品、汽车电子设备、武器装备、办公自动化设备、武器装备、智能终端、通信设备、导航系统、智能家用电器、计算机外部设备、通信产品和玩具等领域获得广泛应用。
单片机经历了8位机、16位机和32位机3个发展阶段。8位机以Intel公司的MCS51为代表;16位机以Intel公司的MCS96为代表;32位机以意法半导体(ST)公司采用ARM核的STM32为代表。自从Intel公司于20世纪80年代初推出MCS51系列单片机以后,几乎所有MCS51系列单片机都以Intel公司最早的典型产品8051为核心,而且增加了一定的功能部件,所以人们习惯于用8051来称呼MCS51系列单片机。MCS51系列是最早进入我国且在我国得到广泛应用的单片机主流品种。
因为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)、网络与交换技术国家重点实验室开放课题(SKLNST2020101)以及高效能服务器和存储技术国家重点实验室的支持,在此表示感谢。
本书对应的电子课件、源代码文件、Proteus仿真电路文件和虚拟机文件等各种配套教学资源可在清华大学出版社网站(https://www.tup.com.cn)下载。本书配套提供了近70个教学视频,读者在学习的过程中,可扫描教学视频二维码观看与学习。
由于编者水平有限,书中欠妥之处,敬请广大读者批评、指正。
编者2023年8月
评论
还没有评论。