单片机嵌入式应用的在线开发方法PDF电子书下载
- 电子书积分:14 积分如何计算积分?
- 作 者:邵贝贝著
- 出 版 社:北京:清华大学出版社
- 出版年份:2004
- ISBN:7302096589
- 页数:424 页
引言 1
第1章 色彩斑斓的单片机世界 6
1.1单片机世界 6
1.2开发单片机应用不再需要仿真器 8
1.3Motorola(Freescale)单片机 8
1.4MC68HC08系列单片机 10
1.4.1Nitron系列单片机 10
1.4.2面向低端产品的8位单片机 10
1.4.3通用型8位单片机 10
1.4.4带LCD(LED)驱动接口的8位单片机 11
1.4.5用于电动机控制的8位单片机 12
1.4.6带CAN总线接口的8位单片机 12
1.4.7支持LIN总线的8位单片机 12
1.4.8带USB接口的8位单片机 13
1.4.9用于彩色液晶监视器控制的8位单片机 13
1.4.10带无线通信功能的8位单片机 14
1.5MCS08系列8位单片机 14
1.6MC68HC11系列单片机 14
1.7MC68HC12系列单片机 17
1.8MC9S12系列单片机 18
1.8.1MC9S12A系列和B系列16位单片机 18
1.8.2带CAN总线的MC9S12D系列16位单片机 19
1.8.3MC9S12DP256单片机 20
1.8.4带液晶驱动的16位单片机系列 22
1.8.5低供电电压的16位单片机 23
1.8.6带USB接口的16位单片机 24
1.8.7带以太网接口的16位单片机 24
1.9MC68HC16系列单片机 24
1.10Motorola(Freescale)的32位单片机 26
1.10.1以68K、CPU32为CPU的32位单片机 26
1.10.2以ColdFire为CPU的32位单片机 27
1.10.3用于控制的以PowerPC为CPU的32位单片机 28
1.10.4用于通信的以PowerPC为CPU的32位单片机 29
1.10.5Motorola(Freescale)的ARM系列32位单片机 30
1.11Motorola(Freescale)的DSP型单片机 31
1.11.1普通16位DSP型单片机 31
1.11.2使用增强型内核DSP56800E的16位DSP型单片机 35
1.11.3StarCore系列DSP型16位单片机 36
1.11.4 24位、32位的DSP型单片机 36
第2章 单片机基本系统的硬件设计 39
2.1 16位单片机 39
2.1.1MC9S12系列单片机 40
2.1.2MC9S12DP256单片机 40
2.2初识单片机最小硬件系统 43
2.2.1 16位单片机MC9S12的最小系统 45
2.2.2 8位单片机MC68HC08GP32的最小系统 45
2.2.3 32位单片机MC68332的最小系统 46
2.2.4监控程序 47
2.2.5体验机器码 50
2.3异步串行通信 52
2.3.1串行通信协议RS-232标准 52
2.3.2ASCII码 53
2.3.3串行数据格式 54
2.3.4RS-232-C电缆的连接方法 55
2.3.5通信速率 55
2.4MC9S 12单片机系统的硬件设计 56
2.4.1时钟电路 56
2.4.2串行口的RS-232驱动电路 59
2.4.3电源电路 59
2.4.4复位电路 60
2.4.5BDM接口 60
2.4.6单片机并行口及驱动能力 60
2.4.7调试显示 61
2.5运行模式 61
2.5.1单片运行模式 61
2.5.2扩展运行模式 61
2.6BDM调试器及硬件设计 62
2.6.1BDM调试器 62
2.6.2BDM调试器硬件设计 63
第3章 用汇编语言编程 65
3.1CPU的内部寄存器结构 65
3.1.1 16位单片机HC11/12的CPU内部结构 65
3.1.2 8位单片机HC08的CPU内部结构 66
3.1.3 32位单片机68K/ColdFire的CPU内部结构 67
3.2内存空间分配 68
3.2.1基本内存空间分配 68
3.2.2内存空间的扩展 69
3.3汇编指令集 71
3.4指令按功能分类 71
3.4.1数据传送指令 72
3.4.2算术与逻辑运算指令 73
3.4.3程序控制指令 77
3.5CPU12的模糊逻辑指令 79
3.5.1模糊化指令 79
3.5.2模糊推理指令REV和REVW 80
3.5.3反模糊化指令WAV 80
3.6指令按寻址方式分类 81
3.6.1隐含寻址 81
3.6.2立即数寻址 81
3.6.3直接寻址 81
3.6.4扩展寻址 82
3.6.5变址寻址 82
3.6.6带自动加、减5位偏移量的间接寻址 83
3.6.7相对寻址 83
3.7汇编指令表 83
3.8指令的机器码组织 85
3.9用汇编语言编写程序 86
3.9.1汇编程序的格式 86
3.9.2汇编管理指令 86
3.10汇编语言程序设计举例 88
3.10.1检查SCI输入端口状态 88
3.10.2输入一个字符 88
3.10.3输出一个字符 89
3.10.4输出空格 89
3.10.5显示字符串 90
3.10.6输入并显示字符 90
3.11码的转换类子程序 90
3.11.1输入一个十六进制数 90
3.11.2输入一个字节 91
3.11.3输入两个字节的十六进制数 91
3.11.4输出两个字节的十六进制数 92
3.12汇编语言编程技巧 92
3.13用汇编语言写BDM调试命令 94
3.13.1后台调试模式 94
3.13.2进入BDM模式 95
3.13.3BDM通信协议 96
3.13.4BDM命令 98
3.13.5BDM的ROM 99
第4章 建立单片机运行环境和写监控程序 100
4.1建立单片机运行环境 100
4.2堆栈指针初始化 100
4.3时钟初始化 101
4.3.1找出与时钟相关的寄存器 101
4.3.2初始化时钟系统 104
4.4串行口初始化 105
4.4.1与串行口有关的寄存器 105
4.4.2初始化串行口 108
4.5监控程序 109
4.6人机对话 111
4.7命令字与跳转表 114
4.8建立CPU在内存中的固定映像 115
4.8.1CPU响应中断后的栈结构 115
4.8.2CPU寄存器的固定映像 116
4.9执行程序 117
4.10显示与修改内存 118
4.10.1显示内存 118
4.10.2修改内存 119
4.11显示和修改CPU寄存器 120
4.12向RAM下载程序 122
4.12.1数据文件格式 123
4.12.2下载程序 124
4.13Flash的擦除与写入 126
4.13.1与Flash有关的寄存器 126
4.13.2Flash擦除与写入的步骤 127
4.14设置断点 134
4.14.1在RAM程序中设置断点 134
4.14.2在Flash程序中设置断点 138
4.15中断向量表管理 139
4.16系统调用表 142
4.17帮助信息 143
第5章 用C语言开发应用程序 144
5.1C语言是开发单片机应用软件的有力工具 144
5.2开发嵌入式应用的C编译器的特点 145
5.3交叉编译和C语言程序运行环境的建立 147
5.3.1应用程序的构成与模块化程序结构 150
5.3.2全局变量与局部变量 151
5.3.3函数的结构与函数间参数的传递 152
5.3.4C语言中的I/O语句 154
5.3.5程序模块的框架与组织 155
5.3.6程序的链接与定位 156
5.4交叉C编译器及用C语言扩展监控程序 157
5.4.1EEPROM 157
5.4.2EEPROM擦除和编程步骤 158
5.4.3EEPROM编程命令字及其含义 159
5.4.4EEPROM的写保护区设定 159
5.5嵌入式应用中的I/O 164
5.5.1关于“Hello,World” 164
5.5.2自己写printf()函数 164
第6章 使用嵌入式实时操作系统 175
6.1嵌入式实时操作系统 175
6.1.1嵌入式实时操作系统简介 175
6.1.2嵌入式实时操作系统μC/OS-Ⅱ 175
6.2移植μC/OS-Ⅱ 177
6.2.1重新定义内核的大小和功能 178
6.2.2OS_CPU.H 181
6.3编写与硬件相关的代码 183
6.3.1中断服务子程序OSTickISR() 184
6.3.2任务堆栈初始化函数OSTaskStkInit() 185
6.3.3让优先级最高的就绪态任务开始运行OSStartHighRdy() 187
6.3.4任务级任务切换函数OSCtxSw() 187
6.3.5中断级任务切换函数OSIntCtxSw() 188
6.3.6相关接口函数 190
6.4产生时钟节拍中断 191
6.5制作用户自己的项目 192
6.5.1main.h 192
6.5.2main.c 194
6.5.3TaskStart.c 195
6.5.4task1.c和task2.c 196
6.5.5hardware.c 197
6.5.6userlib.c 198
6.5.7链接与程序定位 198
6.6估算μC/OS-Ⅱ占用的RAM资源 200
6.6.1μC/OS-Ⅱ中的全局变量 201
6.6.2任务控制块 202
6.6.3事件控制块 204
6.6.4任务堆栈 205
6.6.5估算内核占用RAM空间举例 207
6.7多任务下的设备驱动 208
6.7.1重新认识异步串行口 208
6.7.2SCI的中断 209
6.7.3用中断方式接收 209
6.7.4用中断方式发送 210
第7章 使用GCC交叉编译器开发HC/S12单片机 213
7.1使用免费的GCC交叉编译器 213
7.2用GCC开发HC/S12系列单片机 214
7.2.1安装“GCC for HCS12” 216
7.2.2使用GNU针对MC68HC11/MC68HC12的开发环境 218
7.2.3使用范例程序库进行交叉编译 221
7.3如何编写makefile文件 223
7.3.1简单makefile的书写规则 224
7.3.2make命令的使用 225
7.4GCC forHCS12编译器 226
7.4.1内嵌汇编语言 229
7.4.2陷阱、软中断和中断 229
7.4.3填写中断向量表 230
7.4.4支持页面Flash ROM 231
7.4.5编译参数 232
7.4.6预处理参数 234
7.4.7汇编参数 234
7.4.8链接参数 235
7.4.9链接器 235
7.5hello world工程应用范例 239
7.5.1源文件描述 239
7.5.2链接地址描述 241
7.5.3编译并运行 241
第8章 单片机软件开发工具 243
8.1商用软件开发工具“CodeWarrior forHCS12” 243
8.2安装CodeWarrior 243
8.3建立工程 244
8.3.1使用C编译器 246
8.3.2使用汇编器 246
8.3.3增加新程序模块 248
8.4编写应用程序main.c 248
8.4.1main.c 248
8.4.2定义装载地址 250
8.4.3利用make命令编译 251
8.5在目标板上运行程序 252
8.5.1向目标机下载程序 252
8.5.2运行程序 253
8.6建立自己的C程序运行环境 255
8.7编译基于μC/OS-Ⅱ的应用程序 255
第9章 实验系统与I/O模块 261
9.1通用I/O接口 262
9.2MC9S12DP256的片内总线接口 264
9.2.1同步串行接口 264
9.2.2I2C总线接口 272
9.2.3CAN总线接口 276
9.2.4Motorola S12系列单片机的MSCAN模块 281
9.2.5CAN总线实验原理及通信程序设计 283
9.3增强型定时器 285
9.3.1输入捕捉/输出比较 286
9.3.2输入捕捉/输出比较通道 287
9.3.3 8位脉冲累加器 287
9.3.4模数计数器 288
9.4PWM模块 288
9.4.1PWM模块概述 288
9.4.2PWM波用作D/A转换接口 288
9.5A/D模块 289
9.6Motorola 16位单片机MC9S12DP256/DG128教学实验系统 291
9.6.1概述 291
9.6.2硬件电路介绍 291
第10章 单片机模糊控制 297
10.1模糊控制 297
10.2模糊控制指令 298
10.2.1模糊控制专用指令 298
10.2.2模糊控制相关指令 298
10.3模糊逻辑的基本概念 298
10.3.1模糊集合及隶属度函数 298
10.3.2模糊逻辑与模糊变量 300
10.3.3模糊推理 301
10.4模糊控制原理与模糊控制器结构 301
10.4.1模糊化 303
10.4.2模糊规则推理 304
10.4.3反模糊化 307
10.4.4模糊控制的实现 309
10.4.5模糊控制器的设计与调整 310
10.5模糊控制开发软件 313
10.5.1Motorola模糊推理机 313
10.5.2MC68HC11模糊推理机 313
10.5.3S12逻辑推理机程序 320
第11章 单片机应用中的电磁兼容问题 323
11.1电磁兼容基本概念 323
11.2电磁兼容组织与标准 324
11.3单片机系统的电磁兼容问题 326
11.4噪声的来源与传输 327
11.4.1信号线间交叉干扰 329
11.4.2来自电源的噪声 330
11.5印刷线路板EMC设计 331
11.5.1元件的布置 331
11.5.2印刷线路板接地线的处理 332
11.5.3多层板设计 333
11.6常用抗干扰器件 334
11.6.1去耦电容 334
11.6.2磁性元件 335
11.6.3低通滤波器 336
11.6.4瞬变干扰吸收器件 336
11.7印刷线路板设计中控制噪声的经验 337
11.7.1控制噪声源 337
11.7.2减小噪声的耦合 338
11.7.3减小噪声接收 338
11.8单片机自身的抗干扰措施 339
11.8.1降低外时钟的频率 339
11.8.2时钟监控电路 339
11.8.3打开“看门狗”电路 340
11.8.4电源电压监控 340
11.8.5非法指令中断和剩余程序区处理 340
附录A MC9S12D系列单片机开发工具包 342
A.1概述 342
A.1.1HCS12D系列单片机 342
A.1.2HCS12开发工具包组件 342
A.2MC9S12DP256/DG128开发板及与PC通信 343
A.2.1MC9S12DP256/DG128开发板 343
A.2.2开发板上的跳线 345
A.2.3开发板的硬件连接 345
A.2.4 PC的设置 346
A.3监控程序及监控命令详解 349
A.3.1命令详解 349
A.3.2改变波特率 353
A.3.3复位、中断向量表 355
A.3.4用户可以使用的RAM空间 355
A.3.5系统调用 355
A.4编译器CodeWarriorforHCS12使用方法入门 356
A.4.1建立工程文件 356
A.4.2编写main.c程序 357
A.4.3定义存储空间分配 359
A.4.4应用程序的编译 360
A.4.5向开发板下载程序 361
A.4.6运行应用程序 362
A.5BDM调试器及使用方法 363
A.5.1BDM调试器使用方法 364
A.5.2设置BDM头的时钟频率 364
A.5.3和目标板连接 365
A.5.4Help命令 366
A.5.5向Flash下载程序 367
A.5.6擦除目标板的片内Flash 368
A.6常用BDM调试命令 368
A.6.1汇编和反汇编命令 368
A.6.2控制目标CPU运行的命令 370
A.6.3显示和修改CPU寄存器的命令 370
A.6.4显示和修改内存 370
A.6.5以S格式读出目标代码 370
A.6.6其他BDM命令 370
附录B 监控程序源代码 372
附录C CPU12汇编指令表 406
附录D CPU12指令机器码表 420
附录E 本书所附光盘说明 423
参考文献 424
- 《中风偏瘫 脑萎缩 痴呆 最新治疗原则与方法》孙作东著 2004
- 《基于地质雷达信号波的土壤重金属污染探测方法研究》赵贵章 2019
- 《第一性原理方法及应用》李青坤著 2019
- 《数学物理方法与仿真 第3版》杨华军 2020
- 《Helmholtz方程的步进计算方法研究》李鹏著 2019
- 《土壤环境监测前沿分析测试方法研究》中国环境监测总站编著 2018
- 《物联网与嵌入式技术及其在农业上的应用》马德新 2019
- 《单片机原理及应用》庄友谊 2020
- 《大数据环境下的信息管理方法技术与服务创新丛书 俄罗斯档案事业改革与发展研究》徐胡乡责编;肖秋会 2019
- 《交通工程安全风险管控与隐患排查一体化理论方法与信息化管理技术》王海燕著 2019
- 《中风偏瘫 脑萎缩 痴呆 最新治疗原则与方法》孙作东著 2004
- 《水面舰艇编队作战运筹分析》谭安胜著 2009
- 《王蒙文集 新版 35 评点《红楼梦》 上》王蒙著 2020
- 《TED说话的力量 世界优秀演讲者的口才秘诀》(坦桑)阿卡什·P.卡里亚著 2019
- 《燕堂夜话》蒋忠和著 2019
- 《经久》静水边著 2019
- 《魔法销售台词》(美)埃尔默·惠勒著 2019
- 《微表情密码》(波)卡西亚·韦佐夫斯基,(波)帕特里克·韦佐夫斯基著 2019
- 《看书琐记与作文秘诀》鲁迅著 2019
- 《酒国》莫言著 2019
- 《大学计算机实验指导及习题解答》曹成志,宋长龙 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《大学生心理健康与人生发展》王琳责任编辑;(中国)肖宇 2019
- 《大学英语四级考试全真试题 标准模拟 四级》汪开虎主编 2012
- 《大学英语教学的跨文化交际视角研究与创新发展》许丽云,刘枫,尚利明著 2020
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《复旦大学新闻学院教授学术丛书 新闻实务随想录》刘海贵 2019
- 《大学英语综合教程 1》王佃春,骆敏主编 2015
- 《大学物理简明教程 下 第2版》施卫主编 2020
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019