新書推薦:
《
不在场证明谜案(超绝CP陷入冤案!日本文坛超新星推理作家——辻堂梦代表作首次引进!)
》
售價:HK$
58.2
《
明式家具三十年经眼录
》
售價:HK$
524.2
《
敦煌写本文献学(增订本)
》
售價:HK$
221.8
《
耕读史
》
售價:HK$
109.8
《
地理计算与R语言
》
售價:HK$
121.0
《
沈括的知识世界:一种闻见主义的实践(中华学术译丛)
》
售價:HK$
87.4
《
大思维:哥伦比亚商学院六步创新思维模型
》
售價:HK$
72.8
《
宏观经济学(第三版)【2024诺贝尔经济学奖获奖者作品】
》
售價:HK$
155.7
|
編輯推薦: |
本书由STC创始人姚永平先生主审,入选宏晶科技STC大学计划推荐教材,采用汇编 C双语教学,内容详实、全面。
|
內容簡介: |
本教材采用STC*产品STC8系列单片机中的STC8A8K64S4A12单片机为教学平台,采用汇编 C双语言教学,精选工程训练实例,设计多样化类型的习题。教材内容包括微型计算机基础、增强型8051内核、STC单片机应用系统的开发工具、指令系统与汇编语言程序设计、C51与C51程序设计、存储器的应用编程、定时器计数器、中断系统、串行通信 、键盘与显示接口 、STC15W201S单片机比较器 、12位AD转换模块、PCA模块、增强型PWM模块、SPI接口、I2C 接口,以及低功耗设计与可靠性设计。 本书可作为高等学校电子信息类、电子通信类、自动化类、计算机应用类专业单片机原理与应用或微机原理课程教材,也可作为电子设计竞赛、单片机应用工程师考证的培训教材。本书也是传统8051单片机应用工程师升级转型的*参考书籍。
|
關於作者: |
丁向荣,男,广东轻工职业技术学院教授,电子信息类专业教学骨干,长期从事单片机方面的教学实践和教科研工作,具备丰富的相关经验,其对STC单片机的理解尤为深入,曾编写并出版过多本相关教材,获得市场广泛认可。
|
目錄:
|
目录
第1章 微型计算机基础 1
1.1 数制与编码 1
1.1.1 数制及其转换方法 1
1.1.2 微型计算机中数的表示方法 4
1.1.3 微型计算机中常用编码 6
1.2 微型计算机原理 7
1.2.1 微型计算机的基本组成 7
1.2.2 指令、程序与编程语言 9
1.2.3 微型计算机的工作过程 10
1.2.4 微型计算机的应用形态 11
本章小结 11
习题与思考题 12
第2章 STC8A8K64S4A12单片机增强型8051内核 13
2.1 单片机概述 13
2.1.1 单片机的概念 13
2.1.2 常见单片机 13
2.1.3 STC8系列单片机 14
2.2 STC8A8K64S4A12单片机资源概述与引脚功能 17
2.3 STC8A8K64S4A12单片机的内部结构 22
2.3.1 内部结构框图 22
2.3.2 CPU结构 22
2.4 STC8A8K64S4A12单片机的存储结构 24
2.5 STC8A8K64S4A12单片机的并行IO口 29
2.5.1 并行IO口的工作模式 29
2.5.2 并行IO口的结构 30
2.5.3 并行IO口的使用注意事项 32
2.6 STC8A8K64S4A12单片机的时钟与复位 34
2.6.1 时钟 34
2.6.2 复位 36
本章小结 38
习题与思考题 39
第3章 STC系列单片机应用系统的开发工具 41
3.1 Keil ?Vision4集成开发环境 41
3.2 STC系列单片机在线编程与在线仿真 50
3.2.1 STC系列单片机在线编程电路 50
3.2.2 单片机应用程序的下载与运行 52
3.2.3 Keil ?Vision4与STC仿真器的在线仿真 53
3.2.4 STC-ISP在线编程软件的其他功能 55
3.3 Proteus仿真软件简介 56
3.3.1 工程训练3.1 Keil C集成开发环境的操作使用 56
3.3.2 工程训练3.2 STC系列单片机的在线调试与在线仿真 64
3.3.3 工程训练3.3 用Proteus仿真软件实现单片机应用系统的仿真 67
本章小结 74
习题 75
第4章 STC8A8K64S4A12单片机的指令系统与汇编语言程序设计 78
4.1 STC8A8K64S4A12单片机的指令系统 78
4.1.1 概述 78
4.1.2 数据传送类指令 84
4.1.3 算术运算类指令 89
4.1.4 逻辑运算与循环移位类指令 95
4.1.5 控制转移类指令 98
4.1.6 位操作类指令 104
4.2 汇编语言程序设计 108
4.2.1 汇编语言程序设计基础 108
4.2.2 基本程序结构与程序设计举例 113
4.2.3 工程训练4.1 LED数码管的驱动与显示(汇编语言版) 122
本章小结 125
习题与思考题 126
第5章 C51与C51程序设计 131
5.1 C51基础 131
5.1.1 C51数据类型 133
5.1.2 C51的变量 135
5.1.3 8051单片机特殊功能寄存器变量的定义 137
5.1.4 8051单片机位寻址区(20H~2FH)位变量的定义 138
5.1.5 函数的定位 138
5.1.6 中断服务函数 139
5.1.7 函数的递归调用与再入函数 140
5.1.8 在C51中嵌入汇编语言程序 140
5.2 C51程序设计 141
5.2.1 C51程序框架 141
5.2.2 C51程序设计举例 145
5.2.3 工程训练5.1 LED数码管驱动与显示(C语言版) 146
本章小结 148
习题与思考题 149
第6章 STC8A8K64S4A12单片机的存储器与应用编程 151
6.1 程序存储器 151
6.2 基本RAM 153
6.3 扩展RAM(XRAM) 154
6.4 EEPROM 158
6.4.1 工程训练6.1 片内扩展RAM的测试 164
6.4.2 工程训练6.2 EEPROM的测试 165
本章小结 169
习题与思考题 169
第7章 STC8A8K64S4A12单片机的定时计数器 172
7.1 定时计数器T0、T1的结构和工作原理 172
7.2 定时计数器T0、T1的控制 174
7.3 定时计数器T0、T1的工作方式 175
7.4 定时计数器T0、T1的应用举例 179
7.4.1 定时计数器T0、T1的定时应用 179
7.4.2 定时计数器T0、T1的计数应用 181
7.4.3 定时计数器T0、T1的综合应用 182
7.5 定时计数器T2 185
7.5.1 定时计数器T2的电路结构 185
7.5.2 定时计数器T2的控制寄存器 186
7.6 定时计数器T3、T4 187
7.6.1 定时计数器T3、T4的电路结构 187
7.6.2 定时计数器T3、T4的控制寄存器 187
?
7.7 可编程时钟输出功能 189
7.7.1 定时计数器T0~T4的可编程时钟输出 189
7.7.2 可编程时钟的应用举例 190
7.7.3 工程训练7.1 定时计数器的定时应用 192
7.7.4 工程训练7.2 定时计数器的计数应用 194
7.7.5 工程训练7.3 定时计数器的综合应用 196
7.7.6 工程训练7.4 可编程时钟输出 198
本章小结 200
习题与思考题 201
第8章 STC8A8K64S4A12单片机中断系统 204
8.1 中断系统概述 204
8.1.1 中断系统的几个概念 204
8.1.2 中断的技术优势 205
8.1.3 中断系统需要解决的问题 206
8.2 STC8A8K64S4A12单片机中断系统的简介 206
8.2.1 中断请求 206
8.2.2 中断响应 215
8.2.3 中断服务与中断返回 218
8.3 STC8A8K64S4A12单片机中断系统的中断应用举例 219
8.3.1 定时中断的应用 219
8.3.2 外部中断的应用 223
8.4 STC8A8K64S4A12单片机外部中断源的扩展 224
8.4.1 工程训练8.1 定时中断的应用编程 227
8.4.2 工程训练8.2 外部中断的应用编程 228
本章小结 230
习题与思考题 231
第9章 STC8A8K64S4A12单片机的串行接口 234
9.1 串行通信基础 234
9.2 STC8A8K64S4A12单片机的串行接口1 237
9.2.1 串行接口1的控制寄存器 237
9.2.2 串行接口1的工作方式 239
9.2.3 串行接口1的波特率 243
9.2.4 串行接口1的应用举例 244
9.3 STC8A8K64S4A12单片机与计算机的通信 256
9.3.1 单片机与计算机RS-232串行通信接口设计 256
9.3.2 STC8A8K64S4A12单片机与计算机的串行通信程序设计 258
9.4 STC8A8K64S4A12单片机串行接口1的中继广播方式 261
9.5 STC8A8K64S4A12单片机串行接口2* 261
9.6 STC8A8K64S4A12单片机串行接口3* 263
9.7 STC8A8K64S4A12单片机串行接口4* 264
9.7.1 工程训练9.1 STC8A8K64S4A12单片机间的双机通信 266
9.7.2 工程训练9.2 STC8A8K64S4A12单片机与计算机间的串行通信 269
本章小结 272
思考与提高题 273
第10章 人机对话接口的应用设计 276
10.1 单片机应用系统的设计和开发流程 276
10.1.1 单片机应用系统的设计原则 276
10.1.2 单片机应用系统的开发流程 277
10.1.3 单片机应用系统工程报告的编制 280
10.2 键盘接口与应用编程 283
10.3 LCD接口与应用编程 291
10.3.1 LCD模块概述 291
10.3.2 点阵字符型LCD模块LCD1602 291
10.3.3 点阵图形型LCD模块LCD12864 299
10.3.4 工程训练10.1 STC8A8K64S4A12单片机与矩阵键盘的接口与应用 309
10.3.5 工程训练10.2 STC8A8K64S4A12单片机与LCD12864(含中文
字库)的接口与应用 311
本章小结 322
习题与思考题 322
第11章 STC8A8K64S4A12单片机的比较器 326
11.1 比较器的内部结构与控制 326
11.2 比较器的应用 329
本章小结 332
思考与提高题 332
第12章 STC8A8K64S4A12单片机的AD转换模块 334
12.1 AD转换模块的结构 334
12.2 AD转换模块的控制 335
12.3 AD转换模块的应用 338
本章小结 343
思考与提高题 344
?
第13章 STC8A8K64S4A12单片机的PCA模块 346
13.1 PCA模块的结构 346
13.2 PCA模块的控制 347
13.3 PCA模块的工作模式与应用编程 350
13.3.1 捕获模式与应用编程 350
13.3.2 16位软件定时器模式与应用编程 353
13.3.3 高速脉冲输出模式与应用编程 355
13.3.4 脉宽调制模式与应用编程 356
13.3.5 工程训练13.1 PCA模块的软件定时器应用 361
13.3.6 工程训练13.2 PCA模块的PWM应用 364
本章小结 366
习题与思考题 367
第14章 STC8A8K64S4A12单片机的增强型PWM模块 369
14.1 增强型PWM模块的结构 369
14.2 增强型PWM模块的控制 370
14.3 增强型PWM模块的应用编程 375
本章小结 382
习题与思考题 382
第15章 STC8A8K64S4A12单片机的SPI接口 384
15.1 SPI接口的结构 384
15.2 SPI接口的控制 386
15.3 SPI接口的通信方式 391
15.4 SPI接口的应用编程 393
本章小结 397
习题与思考题 398
第16章 STC8A8K64S4A12单片机的I2C串行总线和I2C通信接口 399
16.1 I2C串行总线 399
16.2 I2C通信接口 407
本章小结 420
思考与提高题 420
第17章 STC8A8K64S4A12单片机的低功耗设计与可靠性设计 423
17.1 低功耗设计 423
17.2 可靠性设计 428
本章小结 431
习题 431
附录A ASCII码表 434
附录B STC8A8K64S4A12系列单片机指令系统表 435
附录C STC8系列单片机特殊功能寄存器一览表 439
附录D STC8单片机学习板模块电路 446
附录E STC8A8K64S4A12单片机内部接口硬件切换控制 455
附录F C51常用头文件与库函数 460
附录G C语言编译常见错误信息一览表 468
附录H C51的模块化编程与C51库函数的制作 473
|
內容試閱:
|
前言
单片机技术是现代电子系统设计、智能控制的核心技术,其相关课程是应用电子、电子信息、电子通信、物联网技术、机电一体化、电气自动化、工业自动化、计算机应用等相关专业的必修课程。本教材是作者以其三十余年单片机应用经历和教学经验为基础,精心打造的以最新的8051单片机产品为介绍对象的单片机课程教材。
STC单片机传承于 Intel的8051单片机,但STC单片机在传统8051单片机框架基础上注入了新鲜血液,焕发出新的青春。STC的创造者宏晶科技对8051单片机进行了全面的技术改革与创新:全部采用Flash技术 (可反复编程10万次以上)和ISPIAP(在系统可编程在应用可编程)技术;针对抗干扰进行了专门设计,使产品抗干扰能力极强;进行了特别加密设计;对工作速度进行了全面提升,指令速度最快提高为原来的24倍;大幅提高了集成度,集成了AD、CCPPCAPWMPWM还可当成DAC使用)、SPI接口、I2C接口,以及更多的UART、更多的定时器、看门狗、内部高精准时钟源(1%温漂,工作温度-40~ 85℃,可彻底省掉昂贵的外部晶振)、内部高可靠复位电路(可彻底省掉外部复位电路)、大容量SRAM、大容量EEPROM、大容量Flash程序存储器等。STC单片机的在线下载编程、在线仿真功能以及分系列的资源配置,增加了单片机型号的可选择性,使用户可根据单片机应用系统的功能要求选择合适的单片机,从而降低单片机应用系统的开发难度与开发成本,使得单片机应用系统的开发更加简单、高效,提高了单片机应用产品的性能价格比。
根据多年单片机教学经验,作者发现在学生学习单片机课程时,普遍存在这样一个问题:觉得单片机课程很重要,但觉得很难,不知道怎么学。对此,作者认为在学生学习单片机课程前要让学生明白三件事:
(1)学习单片机有什么用?单片机技术是现代电子系统设计的核心技术,学习单片机就是利用单片机设计一个个具有智能化、自动化功能的单片机应用系统。
(2)学习单片机要学什么?简单地说,就是学习单片机有哪些资源,以及如何使用这些资源。
(3)怎么学习单片机?单片机的学习应该分成三个方面:一是掌握一种编程语言(C语言或者汇编语言);二是掌握单片机应用系统的开发工具以及辅助工具(Keil C集成开发环境、STC-ISP在线编程工具与Proteus仿真软件);三是学习单片机的各种资源特性与应用编程技巧 。
本教材选用STC最新产品STC8系列单片机中的STC8A8K64S4A12单片机作为主讲机型,系统地介绍了STC8A8K64S4A12单片机的硬件结构、指令系统与应用编程。教材力求体现实用性、应用性与易学性,以提高读者的工程设计能力与实践动手能力为目标,具有以下几方面的特点;
(1)单片机机型贴近生产实际:STC单片机是我国8位单片机市场占有率最高的,STC8A8K64S4A12单片机更是其中的佼佼者。
(2)采用双语言编程:本书的应用编程,大部分采用了汇编语言和C语言(C51)对照编程。学习用汇编语言编程更有利于加强学生对单片机的理解,而C51的功能、结构及以其编写的程序的可读性、可移植性、可维护性相对而言都有非常明显的优势。
(3)理论联系实际:在学习单片机指令系统前的第3章,本书专门介绍了单片机应用的开发工具 ,对这些工具的应用贯穿了程序的编辑、编译、下载与调试。本书在讲述相关知识时,强调单片机知识的应用性与实践性,不论是一条指令,若干条指令,还是一个程序段,都可以用开发工具进行仿真调试或在线联机调试。
(4)强化单片机应用系统的概念:学习单片机就是为了能开发与制作有具体意义的单片机应用系统,为此,本书在大多数章节中都配置了工程训练实例。
(5)为了便于读者更好地理解教学内容以及教学要求,本书设置了多样化的习题:填空、选择、判断、问答与程序设计。
(6)为便于读者学习与应用开发 ,本书在附录中 提供了实用的技术资料,如使用Keil C集成开发环境编译时的常见错误信息、Keil C库函数的制作方法等。
(7)在教材的编写过程中,作者直接与STC单片机的创始人姚永平先生进行密切沟通与交流,姚永平先生亲自担任本教材的主审,确保了教材内容的系统性与正确性。
(8)本教材所含的工程训练实例是基于STC官方发布的STC8学习板开发的,本教材是宏晶科技STC单片机大学推广计划的指定教材。
本书由丁向荣编著。宏晶科技在技术上给予了大力支持和帮助,STC单片机创始人姚永平先生对全书进行了认真审阅,并提出了宝贵意见。在此。对所有提供帮助的人表示感谢!
由于编者水平有限。书中定有疏漏和不妥之处,敬请读者不吝指正!相关勘误或更新信息也会动态地公布在STC官网上:www.stcmcu.com。如需程序源代码或有其他建议,可发电子邮件到dingxiangrong65@163.com,与作者进一步沟通与交流。
编者
2019.4于广州
|
|