《单片机认识与实践》是2006-8-1北京航空航天大学出版社出版的图书,作者是邵贝贝//龚光华
基本介绍
- 书名:单片机认识与实践
- 作者:邵贝贝//龚光华
- 页数:348
- 出版社:北京航空航天大学出版社
基本信息
ISBN:781077797
作者:邵贝贝//龚光华
出版社:北京航空航天大学出版社
定价:32
页数:348
出版日期:2006-8-1
版次:
开本:16开
包装:平装
简介:本书前8章是为高等院校电类低年级本科生“单片机认识与实践”课程撰写的教材,目的是使学生在尚不具备微机原理等相关知识的情况下也能儘快入门,儘早上手开始相关实践活动。书中强调单片机套用的多样性和个性化。从补充相关硬体知识开始,讲解如何设计基本硬体系统,从而在不使用仿真器的情况下搭建基本硬体开发条件;从编写简单的单片机监控程式开始,讲解如何使用C语言进行单片机编程,从而建立软体的开发环境,即从硬体、软体两个方面引导读者快速入门。后4章适用于嵌入式套用工程师,也可供高校研究生参考,首先讲述如何在8位单片机上运行嵌入式实时作业系统μC/OS-II,并以C语言的形式给出监控程式原始码,搭建起完整的嵌入式软体开发环境;然后以最新出现的S08单片机为例,提供各I/O模组的设备驱动程式;最后讨论套用系统的低功耗设计方法。书中还介绍目前先进的单片机BDM调试方式,这种线上开发方法同样适用于16位、32位单片机。.
本书可作为高等院校电类相关专业本科生或研究生单片机课程的教材,也可作为单片机开发工程技术人员以及单片机爱好者的参考用书。...
目录
第1章 单片机的广泛选择
1.1 单片机世界1
1.2 开发单片机套用不再需要仿真器4
1.3 Freescale单片机5
1.4 Freescale公司的32位单片机6
1.4.1 以68K、CPU32为CPU的32位单片机6
1.4.2 以ColdFire为CPU的32位单片机7
1.4.3 用于控制的以PowerPC为CPU的32位单片机8
1.4.4 用于通信的以PowerPC为CPU的32位单片机8
1.4.5 ARM系列32位单片机9
1.5 Freescale公司的DSP型单片机10
1.5.1 普通16位DSP型单片机10
1.5.2 使用增强型核心的16位DSP型单片机14
1.5.3 StarCore系列16位DSP型单片机15
1.5.4 24位DSP型单片机15
1.6 Freescale公司的16位单片机16
1.6.1 MC68HC12系列单片机16
1.6.2 MC9S12系列单片机17
1.6.3 MC9S12X系列单片机20
1.7 Freescale公司的8位单片机20
1.7.1 MC68HC08系列单片机20
1.7.2 MC9S08系列单片机24
1.7.3 MC9RS08系列单片机28
1.8 相关软体开发工具30
第2章 数字电路基础及S08单片机简介
2.1 数字电路基础31
2.1.1 高速CMOS 电路与逻辑电平31
2.1.2 “与非”门和“或非”门32
2.1.3 三态门33
2.1.4 组合逻辑电路34
2.1.5 D触发器与时序电路34
2.1.6 数的表示法与运算35
2.1.7 中央处理器示意36
2.1.8 存储器38
2.1.9 中断与复位40
2.2 真实单片机——MC9S08GT6040
2.2.1 S08 CPU结构40
2.2.2 S08 CPU暂存器41
2.2.3 MC9S08GT60功能模组结构43
2.2.4 MC9S08GT60单片机存储器组织45
2.2.5 MC9S08GT60的复位与中断46
2.2.6 MC9S08GT60的引脚与封装47
2.2.7 MC9S08GT60复位及系统暂存器设定50
第3章 S08单片机的指令系统及彙编语言程式设计
3.1 指令与定址方式51
3.1.1 指令助记符、操作码和运算元51
3.1.2 彙编指令集52
3.1.3 指令按功能分类52
3.1.4 定址方式58
3.2 S08彙编语言程式设计63
3.2.1 机器语言和彙编语言63
3.2.2 彙编语言源程式的格式64
3.2.3 彙编管理指令67
3.2.5 S记录72
3.2.6 彙编语言程式设计和举例74
第4章 单片机基本系统设计
4.1 晶片选型——初识MC9S08GT6081
4.2 设计规划84
4.3 基本系统的电路设计85
4.3.1 电源电路85
4.3.2 时钟电路86
4.3.3 复位电路86
4.3.4 BDM调试接口88
4.3.5 RS232驱动电路89
4.3.6 外部接口定义89
4.4 系统综合90
第5章 异步串列通信
5.1 串列通信协定RS232标準93
5.1.1 串列数据格式95
5.1.2 RS232电缆的连线方法95
5.1.3 通信速率96
5.1.4 ASCII码96
5.2 SCI功能简介98
5.2.1 SCI传送器99
5.2.2 SCI接收器99
5.3 SCI暂存器100
5.3.1 波特率暂存器100
5.3.2 串列通信控制暂存器1(SCI1C1)100
5.3.3 串列通信控制暂存器2(SCI1C2)101
5.3.4 串列通信控制暂存器3(SCI1C3)102
5.3.5 串列通信状态暂存器1(SCI1S1)102
5.3.6 串列通信状态暂存器2(SCS2)103
5.3.7 串列通信数据暂存器(SCIxD)103
5.4 SCI的软体开发方法104
5.4.1 SCI1的初始化104
5.4.2 SCI的查询方式105
5.4.3 SCI的中断方式106
5.5 SCI套用108
第6章 单片机片内I/O模组
6.1 并行I/O连线埠111
6.1.1 并行口简述111
6.1.2 并行口套用举例112
6.2 定时器114
6.2.1 定时器的结构及基本功能114
6.2.2 输入捕捉117
6.2.3 输出比较118
6.2.4 脉宽调製输出118
6.3 同步串列外设接口SPI119
6.3.1 SPI的数据流动121
6.3.2 SPI功能121
6.3.3 SPI引脚122
6.3.4 SPI暂存器124
6.4 A/D转换模组127
6.4.1 A/D控制暂存器128
6.4.2 A/D状态和控制暂存器130
6.4.3 A/D数据结果暂存器131
6.4.4 A/D引脚允许暂存器131
第7章 用C语言开发应用程式
7.1 C语言是开发单片机套用软体的有力工具132
7.2 开发嵌入式套用的C编译器的特点133
7.2.1 关于初始化变数134
7.2.2 函式的可重入性问题135
7.3 交叉编译和C语言程式运行环境的建立135
7.3.1 应用程式的构成与模组化程式结构139
7.3.2 全局变数与局部变数140
7.3.3 函式的结构与函式间参数的传递141
7.3.4 C语言中的I/O语句143
7.3.5 程式模组的框架与组织144
7.3.6 程式的连结与定位145
7.4 嵌入式套用中的I/O函式146
7.4.1 关于“Hello, World”146
7.4.2 自己编写printf( )函式147
第8章 HCS08实验开发系统及实验指导
8.1 HCS08实验开发系统简介158
8.1.1 HCS08实验开发系统特点158
8.1.2 HCS08实验开发系统套件159
8.1.3 HCS08实验开发系统对PC的要求159
8.1.4 HCS08实验开发系统与PC的连线159
8.2 HCS08实验系统设计框架159
8.2.1 目标评估母板与单片机的接口定义160
8.2.2 8位数字量输入电路160
8.2.3 8位数字量显示电路161
8.2.4 A/D模拟电平产生电路161
8.2.5 数码管显示电路161
8.2.6 键盘中断信号产生电路161
8.2.7 IRQ中断信号产生电路163
8.2.8 SPI输入电路163
8.2.9 SPI输出电路164
8.2.10 MC68HC908QY4编程/调试电路164
8.2.11 麵包板165
8.3 基于HCS08实验开发系统的实验165
8.3.1 实验1——熟悉监控程式与实验环境165
8.3.2 实验2——并行口实验167
8.3.3 实验3——机器语言和彙编程式168
8.3.4 实验4——使用CodeWarrior for S08彙编编译器169
8.3.5 实验5——用彙编语言显示“Hello World”173
8.3.6 实验6——用SCI的中断方式接收字元175
8.3.7 实验7——使用CodeWarrior for S08的C编译器编程177
8.3.8 实验8——用C语言实现SCI通信与LED数码管驱动182
8.3.9 实验9——定时器中断实验184
8.3.10 实验10——定时中断程式设计186
8.3.11 实验11——通用I/O及IRQ中断程式设计189
8.3.12 实验12——键盘中断程式设计190
8.3.13 实验13——SCI中断与A/D转换程式设计192
第9章 建立实用的线上调试环境
9.1 建立单片机的运行环境——系统初始化197
9.2 实现人机互动——串口通信199
9.3 控制CPU的行为——利用CPU固定映像200
9.4 查看和修改RAM区 203
9.5 下载目标程式205
9.5.1 S格式档案205
9.5.2 向RAM下载程式206
9.5.3 在RAM程式中设定断点206
9.5.4 Flash编程基本方法208
9.5.5 将S格式档案下载到Flash区213
9.6 Flash的块保护和保密设定215
9.6.1 块保护215
9.6.2 加密设定217
9.6.3 加密方法218
9.6.4 解密方法218
9.7 实现断点功能——在监控程式中使用DBG模组219
9.8 中断向量重新定向223
9.9 帮助信息224
第10章 BDM后台调试模式
10.1 BDM08概述227
10.2 进入BDM模式228
10.3 BDM通信协定及底层软体230
10.3.1 BDM相关暂存器230
10.3.2 BDM时钟的同步231
10.3.3 BDM基本指令——读、写单位元组233
10.3.4 BDM指令的组织237
10.4 BDM简单套用240
10.4.1 用BDM对Flash编程240
10.4.2 通过BDM显示存储器内容243
10.5 使用DBG模组完成複杂调试244
10.5.1 利用DBG来增加两个硬体断点244
10.5.2 利用DBG捕获指定地址的信息245
10.5.3 获取指定条件下的程式分支跟蹤信息246
10.5.4 实时获取运行记录246
第11章 嵌入式实时作业系统μC/OSII在HCS08上的实现
11.1 实时系统249
11.2 前后台系统250
11.3 嵌入式实时作业系统250
11.3.1 不可剥夺型核心的多任务实时系统251
11.3.2 可剥夺型核心的多任务实时系统251
11.3.3 使用嵌入式实时作业系统的优缺点252
11.4 嵌入式实时作业系统μC/OSII253
11.5 在HCS08上移植μC/OSII254
11.6 为核心编写与硬体相关的代码257
11.6.1 OS_CPU.H257
11.6.2 OS_CPU_C.C和OS_CPU_A.ASM259
11.6.3 产生时钟节拍中断265
11.6.4 编写自己的任务代码266
11.6.5 启动μC/OSII 268
第12章 时钟和低功耗模式
12.1 HCS08的内部时钟发生模组269
12.1.1 时钟发生模组的4种工作模式及特点271
12.1.2 时钟发生模组的初始化272
12.2 看门狗278
12.3 HCS08单片机的低功耗设计279
12.3.1 单片机中功耗的来源279
12.3.2 HCS08的低功耗模式279
12.3.3 降低单片机的供电电压282
12.3.4 嵌入式套用的低功耗设计284
附录A S08Monitor用户手册和原始码
A.1 S08Monitor命令行方式指令列表291
A.2 S08Monitor命令行方式指令详解291
A.3 利用监控代码编写自己的程式295
A.4 S08监控程式(C语言版)296
附录B THUBDM08系统使用说明书
B.1 系统硬体设定说明317
B.2 Serial Monitor方式说明319
B.3 命令行方式说明323
附录C HCS08GT60资源速查
C.1 S08GT60存储空间分配图330
C.2 暂存器汇总331
C.3 中断向量表335
附录D S08CPU指令集
D.1 助记符指令表337
D.2 机器码指令表346