图书简介:
目录
第1章单片机及AT89C51单片机硬件结构
11嵌入式系统、单片机、AT89C51/S51单片机
111嵌入式系统、单片机
112单片机发展概况
113AT89C51/S51、STC单片机
12单片机应用系统及其应用领域
121单片机最小系统和单片机应用系统
122单片机应用领域
13单片机应用系统研发工具简介
131单片机软件调试仿真器
132单片机仿真器
133编程器和ISP在系统编程
134PROTEUS EDA(电子设计自动化)
14AT89C51内部结构和引脚功能
141内部结构框图和主要部件
142引脚功能
15AT89C51时钟电路与复位电路
151时钟电路
152复位电路
16存储器结构
161存储器组成
162程序存储器ROM
163数据存储器RAM
164两种省电工作方式
17I/O(输入/输出)口结构、功能及负载能力
171I/O口结构
172I/O口功能
173I/O口的负载能力
18PROTEUS 电路设计基础
181PROTEUS ISIS 窗口
182PROTEUS可视化助手
183PROTEUS 电路设计文件操作
184PROTEUS 元件操作
185PROTEUS电气连线操作
186PROTEUS 总线、标签操作
187PROTEUS 终端操作
188PROTEUS 对象属性设置(Edit Properties)
189PROTEUS ISIS的文件操作与元件操作实例
实验1:“AT89C51最小系统”的PROTEUS设计与制作
习题与思考1
第2章AT89C51汇编语言及汇编语言程序设计
单片机原理、应用与PROTEUS仿真——汇编+C51编程及其多模块、混合编程目录21基本概念
211指令、机器代码、程序、机器语言
212汇编语言、汇编语言指令格式、常用符号
213汇编和编程(固化)
22指令寻址方式
221寻址、寻址方式、寻址存储器范围
222直接寻址
223立即寻址
224寄存器寻址
225寄存器间接寻址
226变址寻址
227相对寻址
228位寻址“bit”
23 汇编语言的指令系统
231数据传送指令
232算术运算类指令
233逻辑运算指令
234控制转移指令
235位操作指令
24汇编语言程序设计流程图及程序结构
241程序设计流程图
242程序结构
25汇编语言程序设计举例
251延时程序
252查表程序
253码制转换程序
254数据排序程序
255算术计算程序
26PROTEUS源程序设计、仿真和仿真调试基础
261PROTEUS汇编语言程序设计、汇编、仿真
262PROTEUS调试窗口、调试按钮和仿真调试
263汇编语言程序设计实例的PROTEUS仿真求解
实验2:“跑马灯”的PROTEUS设计、仿真与实际制作
习题与思考2
第3章C51程序设计基础
31初识C51程序设计
311C51语言特点
312C51程序基本结构
313C51的标识符与关键字
32C51数据的类型及其存储
321C51的数据类型
322C51的数据存储
323数据的存储器类型——明确存储位置
324C51变量的存储模式(编译模式)
325数据类型的重新定义-typedef
326编译预处理命令
33硬件资源访问
331C51对特殊功能寄存器的定义sfr、sfr16
332C51对位变量的定义bit、sbit
333C51对存储器和外设的绝对地址访问
34C51的运算符
341运算符的优先级及结合规则
342混合运算时的数据类型转换
35C51的数组与指针
351C51的数组
352C51的指针
36C51的函数
37C程序基本结构与流程控制
371分支语句
372循环语句
38模块化程序设计
39编程技巧
310Keil C51 应用入门(C51汇编)
习题与思考3
第4章AT89C51中断系统
41中断系统
411中断基本概念
412中断系统结构
413与中断有关的特殊寄存器
414中断过程
415有中断的单片机应用程序的编程要点
42中断应用实例及其PROTEUS设计与仿真
421外中断(INT0)实验装置
422中断优先级实验装置
实验4:“扩展中断源装置”的PROTEUS设计、仿真与制作
习题与思考4
第5章定时器/计数器
51定时器/计数器基础
511定时器/计数器概述
512定时器/计数器的控制
513定时器/计数器的工作方式
514定时器/计数器的计数容量及初值
52定时器/计数器应用
521定时器/计数器应用的基本步骤
522定时器/计数器应用举例
53定时器/计数器应用实例及其PROTEUS设计、仿真
531基于AT89C51的60s倒计时装置
532基于AT89C51的按键发声装置
实验5:“简易跑表”的PROTEUS设计、仿真与制作
习题与思考5
第6章AT89C51的存储器扩展技术
61用SRAM扩展单片机数据存储器(RAM)
611基础知识
612电路设计和程序设计
613PROTEUS仿真、调试
实验6-1: 实际制作、运行、思考
62用串行E2PROM扩展单片机存储器(I2C)
621基础知识
622电路设计和程序设计
623PROTEUS仿真、调试
实验6-2:实际制作、运行、思考
63PROTEUS高级图表仿真(ASF)简介及其应用
631高级图表仿真(ASF)简介
632高级图表仿真(ASF)实例
633AT89C51扩展外RAM的操作时序
634AT89C51扩展外串行E2PROM存储器操作时序
第7章AT89C51人机交互通道接口技术
71单片机与数码管动态显示的接口技术
711基础知识
712“数码管动态显示装置”电路设计和程序设计
713“数码管动态显示装置”PROTEUS仿真、调试
实验7-1:“数码管动态显示装置”的实际制作、运行、思考
72单片机与LCD液晶显示器的接口技术
721基础知识
722“字符型液晶显示装置”电路设计和程序设计
723“字符型液晶显示装置”PROTEUS仿真、调试
实验7-2:“字符型液晶显示装置”的实际制作、运行、思考
73单片机与矩阵式键盘的接口技术
731基础知识
732“矩阵式键盘接口装置”电路设计和程序设计
733“矩阵式键盘接口装置”仿真、调试
实验7-3:“矩阵式键盘接口装置”实际制作、运行、思考
第8章AT89C51后向通道接口技术
81“简易信号发生器”的接口技术
811基础知识
812“简易信号发生器”电路设计和程序设计
813“简易信号发生器”PROTEUS仿真、调试
实验8-1:“简易信号发生器”实际制作、运行、思考
82AT89C51控制步进电动机的接口技术
821基础知识
822“控制步进电动机装置”电路设计和程序设计
823“控制步进电动机装置”PROTEUS仿真、调试
实验8-2:“控制步进电动机装置”的实际制作、运行、思考
第9章AT89C51单片机前向通道接口技术
91“简易数字电压表”的设计与制作
911基础知识
912电路设计和程序设计
913PROTEUS仿真、调试
实验9-1:“简易数字电压表”的实际制作、运行、思考
92“控制直流电动机装置”的设计与制作
921基础知识
922电路设计和程序设计
923 PROTEUS仿真、调试
实验9-2:“控制直流电动机装置”的实际制作、运行、思考
第10章AT89C51串行通信通道接口技术
101“单片机间串行通信装置”的设计与制作
1011基础知识
1012电路设计与程序设计
1013PROTEUS仿真、调试
实验10-1:“单片机间串行通信装置”的实际制作、运行、思考
102“AT89C51与PC间通信装置”的设计与制作
1021基础知识
1022电路设计和程序设计
1023PROTEUS仿真、调试
实验10-2:“AT89C51与PC间通信装置”的实际制作、运行、思考
第11章AT89C51单片机的实际应用
111带存储功能的简易电子琴
1111功能与操作
1112技术要点
1113电路设计和程序设计
1114PROTEUS仿真、调试
实验11-1:“简易电子琴”的实际制作、运行、思考
112单片机控制的DS18B20的数字温度计
1121功能与操作
1122技术要点
1123电路设计和程序设计
1124PROTEUS仿真、调试
实验11-2:“数字温度计”的实际制作、运行、思考
第12章C51、汇编多模块、混合编程
121多模块、混合编程基础
1211基本概念
1212PROTEUS与Keil的联合仿真
1213多模块、混合编程接口
1214多模块、混合编程的原则方法及Keil格式汇编模块
122C51多模块编程实例
1221将被调C51模块作为“工程”中的模块
1222将被调C51模块作为模块包含文件
1223将被调C51文件构造为头(h)文件
123C51、汇编混合编程实例
1231在C51模块中使用编译控制命令嵌入汇编语言程序段
1232使用编译控制命令“SRC”
1233将汇编模块构造为Keil 格式汇编模块
124汇编、C51混合编程实例
1241使用编译控制命令“SRC”
1242将汇编模块构造为Keil格式汇编模块
125汇编多模块编程及带中断混合编程实例
1251汇编多模块编程实例
1252带中断混合编程实例
附录
参考文献
展开
前言
单片机就是“微控制器”,是嵌入式系统中重要的组成部分。将它嵌入到应用对象中,成为众多产品、设备的智能化核心。单片机在国民经济各领域中获得了广泛的应用。《单片机原理及应用》课程已成为高等工科院校本科许多专业的专业基础课程或专业核心课程。
本书主要特点是:
1 紧跟现代信息技术发展,将先进的PROTEUS EDA及Keil C51既作为课程内容又作为教学手段深度融合于书中。
PROTEUS是Labcenter Electronics公司研发的著名EDA(电子设计自动化)软件。它是单片机(AT89C51/S51、PIC、MSP430…)应用系统先进的设计与仿真平台,是真正实现了在计算机上完成从原理图设计与电路设计、程序设计与仿真调试、系统硬软件联合实时仿真与功能验证,直至PCB设计的完整的EDA。Keil是Keil elektronik gmbH和Keil software研发的著名软件,是目前流行的51系列单片机应用系统的研发软件;支持C51和汇编语言。将PROTEUS及Keil深度融合于“单片机原理与应用”等相关课程中,可使课程内容、教学模式、教学方法等发生革命性变化。笔者经过12年的教学实践证明:本书是实现“理论教学、实验(训)教学、仿真教学相融合”及“教、学、做为一体”的教学改革中的成功范例。
2 紧跟单片机智能产品研发现状,使用两种编程语言(汇编语言、C51语言),并较详细地讲述了C51、汇编多模块编程、混合编程。
在单片机智能产品研发中,除使用汇编语言外,越来越多的工程师在使用C51语言。为此,本书在内容、实例、实验等方面都采用两种语言同步编写。
C51语言、汇编语言均有各自的优点、不足,均有各自丰富的成功模块。为综合发挥两种语言的优点,取长补短,为高效采用已有的成功模块,汇编语言、C51多模块编程及它们之间的混合编程,已得到越来越广泛的应用,成为现代科技人员必备的技术与技能。因此,本书的第12章,较为详细地讲述了“C51、汇编多模块、混合编程”。
3 突出实践,强化仿真,安排大量实例、实验。
“单片机原理与应用”课程是实践性很强的课程,且是教师难教、学生难学的课程。为此,必须突出实践,强化仿真。本书安排实例、实验近40个。每个实例、实验均按硬、软件计算机设计→仿真与仿真调试→实际制作的步骤进行。所有实例、实验、实际应用作品都经过教师和学生分别的实践验证。
本书以AT89C51/S51单片机为主体来讲述单片机原理及应用,其内容适用于以8051为内核的兼容单片机(如STC89C51、P87C51…),并可作为学习其他类型单片机的基础。
本书各章所述内容中的实例、实验、编程语言间均有相对的独立性。这样,教师既可同时选用两种语言讲授,也可单独选用汇编语言讲授或单独选用C51语言讲授,还可根据专业的课时要求挑选章节、实例、实验的数量,以满足课时时数从36~78之间的不同要求。
本书可作为高等工科院校本科电子信息类、电气类、机电类、兵器类、自动化类、仪器类、汽车类、计算机应用类等相关专业“单片机原理与应用”课程的教材,也可作为电子工程师、相关专业大学生、单片机应用爱好者的参考书。
单片机原理、应用与PROTEUS仿真——汇编+C51编程及其多模块、混合编程前言本书共12章。张靖武编写第12章, 周灵彬编写第1、3章 , 刘兴来编写第7、8、10章,李百明编写第4、5章,王义编写第6、11章, 王春花编写第2、9章。全书由张靖武、周灵彬、刘兴来策划,最后由张靖武统稿、定稿。李百明负责多媒体课件制作。
参加本书编写的还有疏晓宇、诸成成、朱嘉、屠俞炳、陈敏杰、李臻、陈伟鹏、吴世敏、黄文众、李守帅、干星雨,他们分别负责所有实例、实验的程序检查、仿真检验、实际制作等具体工作。
衷心感谢广州市风标电子技术有限公司(PROTEUS中国总代理Http://wwwwindwaycn)匡载华总经理的大力支持与帮助。
电子工业出版社柴燕同志在编辑出版此书的过程中做了大量且细致的工作,特此表示由衷的感谢。
由于编著者水平有限,书中难免有不妥甚至错误之处,恳请读者批评指正。
本书免费提供多媒体课件、PROTEUS仿真设计及习题参考解答,可在华信教育资源网(wwwhxeducom)下载。
编著者
展开