《51单片机C语言开发与实例》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:汤竞南,沈国琴编著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2008
  • ISBN:711517332X
  • 页数:351 页
图书介绍:本书针对MCS-51系列单片机以及以51为内核的单片机,利用Keil公司最新版的μVision3集成开发环境作为开发工具,从应用的角度,全面地介绍了用C51开发调试MCS-51单片机程序的方法、过程和应注意的事项。书中列举了大量应用实例,着重介绍了一些51单片机的新技术及其应用方法,并介绍了几款简易编程器的自制和使用,使读者尽快、尽可能容易地掌握用C51对MCS-51单片机进行开发的过程。系统全面、突出重点、由浅入深、通俗易懂、学用结合、软硬兼备、实例丰富是本书的主要特色,因此,本书适用于具备一定电子技术基础和具有一定的单片机基础知识的学生、教师、单片机爱好者、电子制作爱好者、电器维修人员、电子产品开发设计者、工程技术人员阅读参考。

第1章 MCS-51单片机与C语言 1

1.1 MCS-51单片机的特点 1

1.1.1 MCS-51单片机简介 1

1.1.2 MCS-51单片机的内部结构 3

1.1.3 MCS-51单片机的存储器组织 4

1.2 汇编语言 6

1.3 C语言 8

1.4 单片机汇编语言与C语言程序设计对照 10

1.5 汇编语言和C语言混合编程 12

1.5.1 在C51中嵌入汇编 12

1.5.2 C程序中调用汇编功能程序 15

1.5.3 汇编程序调用C程序 18

第2章 Keil C51的数据结构 20

2.1 Keil C51 20

2.2 数据类型 22

2.3 存储种类及存储区 25

2.3.1 整型常量 25

2.3.2 字符型常量 25

2.3.3 字符串常量 26

2.3.4 位标量 26

2.4 变量 26

2.4.1 变量的定义 26

2.4.2 存储器类型 27

2.4.3 存储器模式 27

2.4.4 重新定义数据类型 28

2.5 数组 29

2.6 指针 31

2.7 结构 33

2.8 联合 34

2.9 枚举 36

第3章 Keil C51程序设计 39

3.1 预处理 39

3.2 运算符与表达式 41

3.3 控制流语句 46

3.3.1 条件语句 46

3.3.2 while循环 47

3.3.3 do-while循环 47

3.3.4 for循环 48

3.3.5 goto语句 49

3.3.6 switch语句 50

3.3.7 Break语句和continue语句 51

3.3.8 返回语句return 51

3.4 函数 53

3.4.1 定义函数 54

3.4.2 调用函数 55

3.4.3 中断服务函数 56

3.4.4 函数的递归调用与再入函数 59

第4章 Keil C51集成开发环境 61

4.1 Keil C51安装 61

4.2 μVision3集成开发环境 65

4.3 μVision3的栏目和窗口 66

4.4 创建项目 67

4.5 简单的程序调试 72

4.6 含有多个文件的项目 75

4.7 代码优化 76

4.8 技巧和窍门 80

4.9 Keil C编译器常见警告与错误信息的解决方法 81

第5章 用Keil C51开发8051单片机内部资源 85

5.1 用Keil C51开发输入/输出端口 85

5.1.1 输入/输出端口简介 85

5.1.2 输出端口应用实例 86

5.1.3 输入端口实例 88

5.2 用Keil C51开发定时器/计数器 89

5.2.1 定时器/计数器简介 89

5.2.2 控制和状态寄存器 89

5.2.3 定时器/计数器设置实例 90

5.2.4 定时器/计数器2 91

5.2.5 编程实例 92

5.3 中断系统编程 94

5.3.1 中断系统 95

5.3.2 中断系统的控制寄存器 95

5.3.3 中断的响应过程 96

5.3.4 中断实例 97

5.4 用Keil C51开发串行口 98

5.4.1 数据通信的基本概念 98

5.4.2 MCS-51的串行口控制寄存器 99

5.4.3 工作方式 100

5.4.4 数据传输率的确定 101

5.4.5 串行通信实例 102

第6章 单片机的资源扩展 105

6.1 扩展并行口 105

6.1.1 用8255扩展并行接口 106

6.1.2 用74HC573(或74HC373)扩展输出口 108

6.2 串并转换 111

6.2.1 用74HC164扩展并行输出口 111

6.2.2 用74HC165扩展并行输入口 112

6.3 扩展外部并行ROM 115

6.4 扩展外部串行EEPROM 116

6.4.1 三线制Microwire串行总线的E2PROM 116

6.4.2 三线制Microwire串行总线在MCS-51系列单片机上的应用 117

6.4.3 程序设计 118

6.5 扩展外部RAM 121

第7章 8051单片机的系统设计 123

7.1 静态数码管显示 123

7.2 动态数码管显示 125

7.3 键盘输入 127

7.4 A/D转换 130

7.4.1 TLC0831 8位A/D转换器 130

7.4.2 TLC0831应用实例 131

7.5 D/A转换 133

7.5.1 MAX532简介 133

7.5.2 MAX532读写时序 134

7.5.3 MAX532的应用实例 135

7.6 温度测量 138

7.6.1 DS18B20概述 138

7.6.2 DS18B20的寄存器 139

7.6.3 DS18B20的读写 140

7.6.4 DS18B20指令 141

7.6.5 DS18B20与单片机接口电路图 143

7.6.6 DS18B20测温C51程序 143

第8章 8051单片机程序固化方法 149

8.1 通用编程器 149

8.2 印制板制作 151

8.3 AT89S51编程器 153

8.4 Willem编程器 155

8.5 STC编程器 161

第9章 单片机的断电保护 165

9.1 硬件电路实现方法 165

9.2 断电检测电路 168

9.3 实时断电保护和恢复程序 169

9.4 用EEPROM保存断电数据 172

9.5 注意事项 185

第10章 单片机与PC机通信 187

10.1 RS-232C简介 187

10.1.1 连接器的机械特性 188

10.1.2 RS-232C的接口信号 188

10.1.3 电气特性 189

10.2 单片机与PC机通信电路 190

10.3 单片机与PC机通信程序设计 192

10.3.1 PC机发送和接收程序 192

10.3.2 单片机发送和接收程序 196

第11章 在系统编程和在应用中编程 199

11.1 在系统编程和在应用中编程 199

11.2 PHILIPS单片机的实现方法 203

11.2.1 P89C51RB2/RC2/RD2单片机的存储结构 204

11.2.2 P89C51RB2/RC2/RD2单片机的在系统编程 205

11.2.3 P89C51RB2/RC2/RD2单片机的在应用中编程 207

11.3 STC单片机的实现方法 211

11.3.1 STC单片机的在系统编程 211

11.3.2 STC单片机的在应用中编程 212

第12章 单片机之间的通信 226

12.1 单片机之间的通信方法 226

12.2 单片机之间的并行通信 227

12.3 两个单片机之间的串行通信 231

12.4 串行多机通信 234

12.5 采用双口RAM的双机通信 237

第13章 I2C总线接口技术 244

13.1 I2C总线 244

13.1.1 I2C总线的基本结构 245

13.1.2 起始和停止条件 245

13.1.3 数据传输 246

13.1.4 总线竞争的仲裁 246

13.2 模拟I2C总线的C51程序 248

13.3 I2C总线在IC卡中的应用 253

第14章 用C51开发线切割机床控制器 261

14.1 线切割机简介 261

14.2 插补运算 262

14.3 终点判别 264

14.4 间隙补偿 265

14.5 插补运算的数学模型 267

14.6 C51线切割机控制程序 268

第15章 步进电机驱动 277

15.1 步进电机 277

15.1.1 步进电机的特点 277

15.1.2 步进电机的类型 278

15.1.3 步进电机的工作原理 278

15.1.4 部分步进电机技术数据 280

15.2 控制电路 282

15.2.1 功率放大电路 282

15.3 环形分配器 284

15.4 混合式步进电机的驱动 287

第16章 红外器件应用 300

16.1 红外器件 300

16.1.1 IrDA器件的类型划分 300

16.1.2 IrDA器件的构成及其使用 301

16.2 红外遥控器设计 302

16.2.1 红外遥控器基本原理 302

16.2.2 HS9012红外遥控发射电路 302

16.2.3 HS0038B红外遥控接收电路 304

16.2.4 红外遥控接收和解码电路 306

16.2.5 红外遥控接收程序 307

16.3 红外报警栏杆 309

16.3.1 红外栏杆简介 309

16.3.2 发射器 310

16.3.3 接收器 316

附录A MCS-51指令表 322

附录B Keil C51的库函数 326