《8051系列单片机C程序设计完全手册》PDF下载

  • 购买积分:17 如何计算积分?
  • 作  者:求是科技编著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2006
  • ISBN:7115146012
  • 页数:554 页
图书介绍:本书介绍了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