《51单片机C语言开发与应用技术案例详解》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:魏伟,胡玮,王永清编著
  • 出 版 社:北京:化学工业出版社
  • 出版年份:2010
  • ISBN:9787122077646
  • 页数:300 页
图书介绍:本书系统介绍了51单片机C语言程序设计方法与应用技术。

第1篇 单片机系统开发基础篇 2

第1章 51系列单片机开发的基础知识 2

1.1 单片机应用系统开发 2

1.1.1 单片机应用系统的一般硬件组成 2

1.1.2 单片机应用系统的设计 4

1.2 单片机应用系统开发过程 5

1.2.1 系统需求与方案调研 6

1.2.2 可行性分析 6

1.2.3 系统方案设计 6

1.2.4 系统详细设计与制作 6

1.2.5 系统调试与修改 6

1.2.6 生成正式系统(或产品) 7

1.3 单片机应用系统的一般开发流程 7

1.3.1 确定系统的功能与性能 7

1.3.2 确定系统基本结构 7

1.3.3 单片机应用系统硬、软件的设计原则 8

1.3.4 硬件设计 9

1.3.5 软件设计 10

1.3.6 资源分配 10

1.4 单片机应用系统调试 11

1.4.1 单片机应用系统调试工具 11

1.4.2 单片机应用系统的一般调试方法 12

1.5 单片机应用系统设计与调试实例 14

1.6 小结 16

第2章 单片机软件开发工具 17

2.1 Keil软件简介 17

2.2 8051开发工具 20

2.2.1 8051开发工具概述 20

2.2.2 Keil C51编译器 20

2.2.3 A51宏汇编器 27

2.3 8051开发工具的使用 29

2.3.1 μVision开发平台 29

2.3.2 创建与编辑一个程序 30

2.3.3 用串口调试软件查看单片机输出信息 33

2.4 小结 35

第2篇 常用模块设计案例篇 38

第3章 LED显示模块 38

3.1 实例说明 38

3.2 设计思路分析 38

3.2.1 MAX7219的引脚功能 38

3.2.2 基本工作原理及使用方法 38

3.2.3 MAX7219的工作时序 40

3.3 硬件电路设计 41

3.4 软件设计 42

3.5 小结 44

第4章 液晶显示模块 45

4.1 实例说明 45

4.2 设计思路分析 45

4.2.1 液晶显示模块 45

4.2.2 液晶显示工作原理 46

4.2.3 设计思路 47

4.3 硬件电路设计 47

4.3.1 器件选取 47

4.3.2 电源模块 48

4.3.3 液晶显示模块 49

4.3.4 单片机模块 51

4.4 软件设计 51

4.4.1 液晶控制驱动器指令集 51

4.4.2 程序说明 53

4.5 小结 55

第5章 D/A转换与A/D转换模块 57

5.1 基于MAX527的并行D/A转换器设计实例 57

5.2 实例说明 58

5.3 设计思路分析 58

5.3.1 D/A转换原理 58

5.3.2 如何选择D/A转换器件 61

5.3.3 D/A转换对电源电路的要求 61

5.4 硬件电路设计 61

5.4.1 主要器件 61

5.4.2 电路原理图及说明 63

5.5 软件设计 64

5.5.1 MAX527的地址和重要引脚 65

5.5.2 程序流程 65

5.5.3 程序说明 65

5.6 D/A转换器实例小结 67

5.7 A/D转换器的接口设计实例 67

5.7.1 实例说明 67

5.7.2 设计思路分析 68

5.7.3 A/D转换原理 68

5.7.4 并行比较型A/D转换器 70

5.7.5 逐次逼近型A/D转换器 71

5.7.6 双积分型A/D转换器 74

5.7.7 A/D转换器的转换精度与转换时间 76

5.8 多路模拟开关 76

5.8.1 模拟开关的功能及电路组成 76

5.8.2 模拟开关的各种工作模式 77

5.9 MAX195电路设计 78

5.9.1 MAX195芯片介绍 78

5.9.2 MAX195引脚及说明 78

5.9.3 MAX195转换原理及时序 79

5.9.4 MAX195的校准 79

5.9.5 AT89C51与MAX195的接口设计 80

5.9.6 实例小结 80

第6章 MCS-51单片机与键盘的接口 81

6.1 设计思路分析 81

6.1.1 键盘的工作原理 81

6.1.2 键盘的分类 82

6.1.3 键盘处理设计的流程和内容 82

6.2 硬件电路设计 83

6.2.1 按键中断方式接口 83

6.2.2 口线查询方式的键盘接口 84

6.2.3 矩阵式键盘接口电路设计 84

6.2.4 采用编码器的键盘接口 91

6.3 小结 92

第7章 串行接口模块 94

7.1 实例说明 94

7.2 设计思路分析 95

7.2.1 串行通信的定义 95

7.2.2 异步通信协议 98

7.2.3 常用串行通信接口 100

7.3 硬件电路设计 105

7.3.1 RS-232驱动芯片 105

7.3.2 静态RAM芯片HM628128 106

7.3.3 单片机AT89C52 107

7.3.4 单片机与RS-232的接口 111

7.4 软件设计 112

7.4.1 程序流程图 112

7.4.2 程序说明 113

7.5 小结 115

第3篇 综合应用设计案例篇 118

第8章 单相交流多用表设计实例 118

8.1 实例说明 118

8.2 设计思路分析 119

8.3 硬件电路设计 120

8.3.1 系统的总体设计 120

8.3.2 设计中应当注意的问题 120

8.3.3 微处理器的选择 120

8.3.4 电源设计 126

8.3.5 A/D转换设计 126

8.3.6 显示接口设计 129

8.3.7 测量电路 131

8.3.8 功率测量电路设计 132

8.3.9 通信接口电路设计 132

8.4 软件设计 132

8.4.1 仪表的系统程序结构 133

8.4.2 主要功能模块简介 133

8.4.3 主程序设计 133

8.4.4 数据采集子程序设计 133

8.4.5 显示子程序设计 135

8.4.6 中断子程序设计 135

8.4.7 告警子程序设计 136

8.4.8 键盘扫描子程序设计 136

8.4.9 仿真与调试 136

8.4.10 程序源代码 136

8.5 小结 136

第9章 程控直流电压电流表设计实例 138

9.1 实例说明 138

9.2 硬件电路设计 138

9.2.1 主电路设计 138

9.2.2 单片机的选择 138

9.2.3 按键处理 140

9.2.4 可控量程自动转换(可控衰减/放大) 140

9.2.5 高耐压、大电流达林顿阵列——ULN2003 140

9.2.6 数码管显示模块设计 141

9.2.7 其他功能 143

9.2.8 串行A/D转换器TLC1543 143

9.2.9 串行通信接口电路 146

9.3 软件设计 146

9.3.1 主程序设计 147

9.3.2 数据采集子程序设计 147

9.3.3 显示子程序设计 147

9.3.4 中断子程序设计 147

9.3.5 告警子程序设计 148

9.3.6 键盘扫描子程序 148

9.3.7 串行通信子程序设计 148

9.3.8 程序源代码 149

9.4 小结 149

第10章 基于TLC1543的A/D转换及数显实例 150

10.1 实例说明 151

10.2 设计思路分析 151

10.2.1 A/D转换器基本原理及主要技术指标 151

10.2.2 LED数码管显示 152

10.2.3 系统设计思路分析 154

10.2.4 详细数据分析 155

10.3 硬件电路设计 156

10.3.1 使用器件介绍 156

10.3.2 适用芯片功能比较 156

10.3.3 硬件电路原理图设计 158

10.4 软件设计 160

10.4.1 系统软件总体设计 160

10.4.2 A/D转换与显示子程序设计 161

10.4.3 应用软件简介及程序源代码 161

10.4.4 关于Proteus及KeilC51联机仿真 162

10.5 小结 162

第11章 步进电机控制设计实例 164

11.1 实例说明 164

11.2 设计思路分析 165

11.2.1 步进电机系统发展趋势 165

11.2.2 步进电机及其控制 166

11.3 硬件电路设计 170

11.4 总体硬件电路设计 172

11.4.1 系统硬件结构框图 172

11.4.2 电路原理图及说明 172

11.5 软件设计 175

11.5.1 程序流程 175

11.5.2 程序代码 175

11.6 小结与分析 175

第2章 基于DS18B20的数字温度计设计 177

12.1 实例说明 177

12.2 设计思路分析 177

12.2.1 温度传感器DS18B20 178

12.2.2 模拟量/数字量转换 179

12.2.3 DS18B20芯片测温原理 180

12.3 硬件电路设计 181

12.3.1 DS18B20数字温度传感器 181

12.3.2 硬件电路原理图设计与系统合成 184

12.4 软件设计 186

12.4.1 传感器控制命令 187

12.4.2 系统软件总体设计 188

12.4.3 传感器的读写操作程序设计 188

12.4.4 温度转换程序设计 189

12.4.5 温度值转换BCD码程序设计 190

12.4.6 数码管显示程序设计 190

12.4.7 程序示例 190

12.5 Proteus及KeilC51联机的仿真 191

12.6 小结 192

第13章 基于DDS的信号发生器的设计实例 193

13.1 实例说明 193

13.2 设计思路分析 193

13.2.1 DDS原理和结构 193

13.2.2 FPGA现场可编程门阵列 194

13.2.3 查表方法 195

13.3 硬件电路设计 195

13.3.1 系统原理框图 195

13.3.2 DDS核心板设计 196

13.3.3 信号发生器设计 196

13.3.4 正弦波通道和方波通道设计 196

13.3.5 稳压电源设计 197

13.3.6 DAC电路设计 197

13.3.7 可变增益放大及功率放大电路设计 198

13.3.8 低通滤波器电路设计 198

13.4 软件设计 199

13.4.1 主程序设计 199

13.4.2 单频、扫频、数字调频子程序设计 200

13.4.3 模拟调频子程序设计 200

13.4.4 普通波形功能实现 200

13.4.5 串口通信程序设计 201

13.4.6 MAX+PLUS II软件设计流程 201

13.4.7 程序源代码 202

13.5 小结 202

第14章 可控整流直流电源设计实例 204

14.1 实例说明 204

14.2 设计思路分析 204

14.3 硬件电路设计 205

14.3.1 主电路设计 205

14.3.2 主电路元件的选择 208

14.4 软件设计 214

14.4.1 主程序设计 214

14.4.2 键盘输入子程序设计 214

14.4.3 LED显示子程序设计 216

14.4.4 A/D转换子程序设计 217

14.4.5 D/A转换子程序设计 219

14.4.6 程序源代码 219

14.5 小结 219

第15章 直流斩波电源的设计实例 220

15.1 实例说明 220

15.2 设计思路分析 221

15.3 硬件电路设计 221

15.3.1 直流斩波电源的整体设计 221

15.3.2 驱动电路的原理分析与设计 222

15.3.3 PWM技术 224

15.3.4 主电路图及原理分析、参数计算 226

15.3.5 控制电路的设计 227

15.3.6 硬件控制电路设计 228

15.3.7 保护电路的设计 230

15.3.8 MAX7219的驱动接口电路 231

15.4 软件设计 232

15.4.1 主程序设计 232

15.4.2 电压电流测量子程序设计 232

15.4.3 程序源代码 233

15.5 小结 233

第16章 LCR数字电桥设计实例 234

16.1 实例说明 234

16.2 设计思路分析 234

16.3 硬件电路设计 235

16.3.1 单片机的选择 235

16.3.2 键盘电路设计 236

16.3.3 测试频率的产生 237

16.3.4 相敏检波电路设计 238

16.3.5 A/D转换器电路设计 238

16.3.6 LCD显示控制模块 238

16.3.7 电压测量电路设计 239

16.4 软件设计 240

16.4.1 主程序设计 240

16.4.2 键盘控制子程序设计 241

16.4.3 A/D转换控制 242

16.4.4 L、C、R的测量计算 243

16.4.5 测量校准与误差分析 243

16.4.6 程序源代码 244

16.5 小结 244

第17章 智能断路器设计实例 246

17.1 实例说明 246

17.2 设计思路分析 247

17.3 硬件电路设计 248

17.3.1 智能断路器总体结构布置 248

17.3.2 断路器智能化关键技术 249

17.3.3 智能脱扣器的设计 250

17.4 软件设计 256

17.4.1 主程序设计 256

17.4.2 各功能子程序设计 257

17.4.3 程序源代码 258

17.5 小结 258

第18章 单片机实现485总线现场监测系统 260

18.1 实例说明 260

18.2 设计思路分析 261

18.2.1 RS-485驱动芯片 261

18.2.2 MAX485芯片构成的485总线网络 262

18.3 硬件电路设计 263

18.3.1 232/485转接卡 263

18.3.2 带有485接口的单片机系统 265

18.4 软件设计 266

18.4.1 通信协议设计 266

18.4.2 程序流程 268

18.4.3 程序源代码 269

18.5 小结 269

第19章 基于ST7920芯片的液晶显示设计 270

19.1 实例说明 270

19.2 设计思路分析 270

19.2.1 LCD结构及原理 270

19.2.2 液晶显示模块的种类 271

19.2.3 液晶显示模块NH12864M 271

19.2.4 中文图形控制芯片ST7920 272

19.3 硬件电路设计 280

19.3.1 并口直接访问方式 281

19.3.2 并口间接访问方式 282

19.3.3 串口访问方式 282

19.3.4 驱动电压即对比度调节电路 282

19.3.5 硬件系统合成 282

19.4 软件设计 283

19.4.1 系统软件总体设计 283

19.4.2 程序示例 284

19.5 小结 284

第20章 基于CPLD的等精度数字频率计设计 285

20.1 实例说明 285

20.2 设计思路分析 285

20.2.1 等精度测频原理 286

20.2.2 系统设计指标 286

20.3 硬件电路设计 286

20.3.1 系统原理框图 286

20.3.2 测频模块设计 287

20.3.3 单片机控制电路 289

20.3.4 外围电路设计 290

20.4 软件设计 292

20.4.1 主程序设计 292

20.4.2 测频子程序设计 293

20.4.3 显示子程序设计 293

20.4.4 键盘扫描子程序设计 293

20.4.5 时间值输入子程序设计 294

20.4.6 VHDL简介 294

20.4.7 实验测试及误差分析 295

20.4.8 程序源代码 296

20.5 小结 296

附录 MCS-51系列指令表 297

参考文献 300