内容简介
本书首先从单片机基础、C语言、开发编译环境、典型资源编程、单片机通信等几个方面介绍了8051系列单片机C程序设计所应掌握的基础知识,内容全面、讲解清楚。然后通过工程开发实例和典型模块应用实例两部分内容系统地介绍单片机系统设计的方法使理论与实际相结合。
本书可以作为大学本、专科单片机技术课程的教材,也可作为8051系列单片机C程序设计开发的技术人员以及高等学校相关专业师生的参考用书。
目录
第1章 单片机基础 1
1.1 单片机技术发展状况 1
1.2 51系列单片机体系结构 2
1.2.1 内部结构 2
1.2.2 存储器组织结构 4
1.2.3 内部功能模块 10
1.2.4 外部引脚 16
1.2.5 系统资源扩展 20
1.3 单片机的编程方法 24
第2章 C语言编程基础 25
2.1 基本概念 25
2.1.1 概述 25
2.1.2 变量与算术表达式 28
2.1.3 for语句 33
2.1.4 符号常量 35
2.2 数据类型、运算符和表达式 36
2.2.1 C语言的数据类型 36
2.2.2 常量与变量 37
2.2.3 整型数据 38
2.2.4 实型数据 40
2.2.5 字符型数据 41
2.2.6 运算符 46
2.2.7 表达式 51
2.3 程序控制语句 54
2.3.1 程序的3种基本结构 54
2.3.2 条件控制语句 54
2.3.3 程序应用举例 62
2.4 循环控制语句 64
2.4.1 while语句 64
2.4.2 do...while语句 66
2.4.3 for语句 67
2.4.4 break与continue语句 70
2.4.5 程序应用举例 71
2.5 小结 74
第3章 C语言高级编程 75
3.1 函数与程序结构 75
3.1.1 函数的基本知识 75
3.1.2 返回非整数值的函数 79
3.1.3 外部变量 81
3.1.4 作用域规则 82
3.1.5 头文件 83
3.1.6 静态变量 84
3.1.7 寄存器变量 84
3.1.8 分程序结构 85
3.1.9 初始化 85
3.1.10 递归 87
3.2 数组 88
3.2.1 一维数组 88
3.2.2 二维数组 91
3.2.3 多维数组 96
3.2.4 数组的初始化 96
3.3 指针 98
3.3.1 指针与指针变量 98
3.3.2 指针变量的定义与引用 99
3.3.3 指针运算符与指针表达式 100
3.3.4 指针与数组 103
3.3.5 指针的地址分配 119
3.3.6 指针数组 121
3.3.7 指向指针的指针 129
3.4 结构体与共用体 132
3.4.1 结构体类型变量的定义和引用 132
3.4.2 结构体数组的定义和引用 136
3.4.3 结构体指针的定义和引用 143
3.4.4 共用体 147
3.5 小结 151
第4章 C51程序设计 152
4.1 C51对标准C语言的扩展 152
4.1.1 存储区域 152
4.1.2 数据变量分类 153
4.1.3 存储器模式 156
4.1.4 绝对地址的访问 157
4.1.5 指针 158
4.1.6 函数 163
4.2 C51函数库 166
4.2.1 字符函数CTYPE.H 167
4.2.2 一般I/O函数STDIO.H 174
4.2.3 字符串函数STRING.H 183
4.2.4 标准函数STDLIB.H 192
4.2.5 数学函数MATH.H 194
4.2.6 绝对地址访问ABSACC.H 196
4.2.7 内部函数INTRINS.H 197
4.2.8 变量参数表STDARG.H 199
4.2.9 全程跳转SETJMP.H 200
4.2.10 访问SFR和SFR_bit地址REGxxx.H 201
4.3 C51程序编写 202
4.3.1 C程序基本结构 202
4.3.2 编写高效的C51程序及优化程序 206
第5章 Windows集成开发环境μVision2 209
5.1 μVision2编辑界面及其功能介绍 209
5.1.1 μVision2界面综述 209
5.1.2 主菜单栏 210
5.1.3 μVision2功能按钮 212
5.1.4 μVision2窗口环境 215
5.2 应用μVision2开发流程介绍 221
5.2.1 建立新项目 221
5.2.2 常用环境配置 223
5.2.3 代码优化 227
5.2.4 目标代码调试 227
5.3 CPU仿真 228
5.3.1 μVision2调试器 228
5.3.2 调试命令 234
5.3.3 存储器空间 237
5.3.4 表述(Expressions) 237
5.3.5 技巧 248
5.4 深入了解μVision2 250
5.4.1 μVision2的项目管理 250
5.4.2 使用技巧 253
5.4.3 μVision2调试函数 259
第6章 C51编译器 269
6.1 预处理 272
6.1.1 宏定义 272
6.1.2 文件包含 273
6.1.3 条件编译 274
6.1.4 其他预处理命令 276
6.2 C51编译器控制指令详解 278
6.2.1 源控制指令 278
6.2.2 列表控制指令 280
6.2.3 目标控制指令 286
6.3 C51的高级配置文件 299
6.3.1 目标程序启动配置文件——STARTUP.A51 299
6.3.2 CPU初始化文件——START751.A51 307
6.3.3 静态变量初始化文件——INIT.A51 309
6.3.4 专用变量初始化文件——INIT751.A51 319
第7章 C51的典型资源编程 323
7.1 中断系统设计 323
7.2 定时/计数器的使用 327
7.3 I/O口的使用 332
7.4 扩展存储器 336
7.4.1 外部ROM 336
7.4.2 外部RAM 337
7.4.3 外部串行E2PROM 343
7.5 一个使用多种资源的完整例程 351
7.5.1 项目需求 351
7.5.2 步进电机背景知识 351
7.5.3 解决方案设计与实现 354
第8章 单片机通信 374
8.1 串口通信 374
8.1.1 串行通信基础 374
8.1.2 单片机串口使用 375
8.2 单片机点对点通信 379
8.2.1 通信接口设计 379
8.2.2 单片机点对点通信程序设计 380
8.3 单片机多机通信 390
8.3.1 主机部分通信程序设计 392
8.3.2 从机部分通信程序设计 395
8.4 单片机I2C总线通信 399
8.4.1 I2C总线介绍 399
8.4.2 I2C总线硬件接口设计 409
8.4.3 I2C总线模拟硬件接口软件设计 415
8.4.4 I2C总线系统的设计要点 420
8.5 单片机与计算机的互连 420
8.5.1 电路设计 420
8.5.2 电路的C51程序代码 421
8.5.3 计算机端的Visual C++程序代码 422
第9章 C51单片机的工程开发实例 442
9.1 单片机系统设计方法 442
9.2 C51系统设计的相关知识 444
9.2.1 硬件以及电路的知识 444
9.2.2 软件以及编程语言的知识 447
9.3 C51系统设计需要注意的一些问题 447
9.3.1 单片机资源的分配 447
9.3.2 单片机的寻址 448
9.3.3 C51函数的返回值 448
9.3.4 单片机的看门狗功能 449
9.3.5 单片机的外设 449
9.3.6 单片机的功耗 449
9.4 有关C51的一些问题 450
9.5 键盘和发光数码管显示 452
9.5.1 电路设计的背景及功能 452
9.5.2 电路的设计 453
9.5.3 键盘扫描电路的C51程序代码 453
9.5.4 电路的改进——键盘的消抖动程序 457
9.5.5 电路的显示部分——LED数码管电路 461
9.6 A/D、D/A转换器使用 465
9.6.1 电路设计的背景及功能 465
9.6.2 电路的设计 466
9.6.3 电路的C51程序代码 468
9.7 基于单片机的数字钟 472
9.7.1 电路设计的背景及功能 472
9.7.2 电路的设计 472
9.7.3 电路的C51程序代码 473
第10章 C51单片机典型模块实例 481
10.1 典型外部ROM和RAM器件的使用 481
10.1.1 实例功能 481
10.1.2 器件和原理 481
10.1.3 电路 485
10.1.4 程序设计 487
10.2 液晶显示和驱动实例 488
10.2.1 实例功能 488
10.2.2 器件和原理 489
10.2.3 电路 494
10.2.4 程序设计 496
10.3 用A/D芯片进行电压测量 507
10.3.1 实例功能 507
10.3.2 器件和原理 507
10.3.3 电路 514
10.3.4 程序设计 516
10.4 使用DS1820进行温度补偿和测量 518
10.4.1 实例功能 518
10.4.2 器件和原理 519
10.4.3 电路 522
10.4.4 程序设计 523
10.5 语音芯片在单片机系统中的使用 528
10.5.1 实例功能 528
10.5.2 器件和原理 528
10.5.3 电路 532
10.5.4 程序设计 534
10.6 时钟芯片在单片机系统中的应用 536
10.6.1 实例功能 536
10.6.2 器件和原理 537
10.6.3 电路 539
10.6.4 程序设计 540
10.7 单片机中滤波算法的实现 543
10.8 信号数据的FFT变换 549
下载地址:
【必读】版权免责声明
1、本主题所有言论和内容纯属会员个人意见,与本论坛立场无关。2、本站对所发内容真实性、客观性、可用性不做任何保证也不负任何责任,网友之间仅出于学习目的进行交流。3、对提供的数字内容不拥有任何权利,其版权归原著者拥有。请勿将该数字内容进行商业交易、转载等行为,该内容只为学习所提供,使用后发生的一切问题与本站无关。 4、本网站不保证本站提供的下载资源的准确性、安全性和完整性;同时本网站也不承担用户因使用这些下载资源对自己和他人造成任何形式的损失或伤害。 5、本网站所有软件和资料均为网友推荐收集整理而来,仅供学习用途使用,请务必下载后两小时内删除,禁止商用。6、如有侵犯你版权的,请及时联系我们(电子邮箱1370723259@qq.com)指出,本站将立即改正。
|