单片机通信与控制应用编程实例
作者:李江全 编
出版时间:2012年版
内容简介
本书从应用的角度介绍了单片机通信与控制技术。全书共分12章,分别为:单片机及控制系统概述;单片机串行通信概述;单片机与单片机串口通信编程实例;单片机与PC串口通信之数据传送编程实例;单片机与PC串口通信之模拟量输入编程实例;单片机与PC串口通信之模拟量输出编程实例;单片机与PC串口通信之数字量输入编程实例;单片机与PC串口通信之数字量输出编程实例;单片机与GSM短信模块串口通信编程实例;单片机与无线数传模块串口通信编程实例;采用组态软件实现单片机与PC串口通信编程实例;单片机的典型应用——智能仪器温度测量。本书内容丰富,可供各类自动化、计算机应用、机电一体化等专业的大学生、研究生学习单片机通信技术,也可供计算机控制系统研发的工程技术人员参考。为方便读者学习,本书提供超值配套光盘,内容包括实例源程序、程序运行录屏、系统测试录像、软硬件资源等。
目录
前言
第1章 单片机及控制系统概述 1
1.1 单片机概述 1
1.1.1 单片机的组成 1
1.1.2 单片机的分类和指标 2
1.1.3 常用的单片机系列 3
1.1.4 单片机的开发工具 5
1.1.5 单片机的特点及应用 5
1.2 单片机应用系统概述 7
1.2.1 单片机应用系统的种类 7
1.2.2 单片机控制系统的组成 7
1.2.3 单片机应用系统的开发过程 10
1.3 单片机开发板B简介 13
1.3.1 单片机开发板B的功能 13
1.3.2 单片机开发板B的主要电路 14
1.3.3 单片机开发板B的功能测试 16
第2章 单片机串行通信概述 23
2.1 串行通信的基本概念 23
2.1.1 并行通信与串行通信 23
2.1.2 串行通信工作模式 24
2.1.3 异步传输与同步传输 25
2.1.4 串行通信的基本参数 26
2.2 串行通信的接口标准 26
2.2.1 RS-232C接口标准 26
2.2.2 RS-422/485接口标准 28
2.3 PC中的串行端口 30
2.3.1 查看串行端口信息 30
2.3.2 串口通信线路连接 31
2.3.3 串口通信调试 32
2.3.4 虚拟串口的使用 33
2.4 单片机中的串行接口 35
2.4.1 串口的结构与控制 35
2.4.2 串口的工作方式 36
2.4.3 波特率的计算与串口初始化 38
2.5 PC编程软件的串行通信开发工具 40
2.5.1 串行通信控件MSComm 40
2.5.2 LabWindows/CVI串口通信函数 47
第3章 单片机与单片机串口通信编程实例 51
3.1 单片机与一个单片机串口通信 51
3.1.1 设计任务 51
3.1.2 线路连接 51
3.1.3 使用查询方式C51程序设计 52
3.1.4 使用中断方式C51程序设计 60
3.2 单片机与多个单片机串口通信 65
3.2.1 多机通信原理与通信协议 66
3.2.2 设计任务 67
3.2.3 线路连接 68
3.2.4 使用查询方式C51程序设计 68
3.2.5 使用中断方式C51程序设计 76
第4章 单片机与PC串口通信之数据传送编程实例 85
4.1 单个单片机与PC串口通信 85
4.1.1 设计任务 85
4.1.2 线路连接 86
4.1.3 单片机端采用C51实现 86
4.1.4 PC端采用Visual Basic实现 91
4.1.5 PC端采用C++ Builder实现 96
4.1.6 PC端采用LabWindows/CVI实现 101
4.2 多个单片机与PC串口通信 107
4.2.1 设计任务 108
4.2.2 线路连接 108
4.2.3 单片机端采用查询方式C51程序设计 109
4.2.4 单片机端采用中断方式C51程序设计 113
4.2.5 PC端采用Visual Basic实现 117
4.2.6 PC端采用C++ Builder实现 118
4.2.7 PC端采用LabWindows/CVI实现 120
第5章 单片机与PC串口通信之模拟量输入编程实例 123
5.1 系统设计说明 123
5.1.1 设计任务 123
5.1.2 线路连接 123
5.2 模拟电压输入程序设计 124
5.2.1 单片机端采用C51实现电压输入 124
5.2.2 PC端采用Visual Basic实现电压输入 129
5.2.3 PC端采用C++ Builder实现电压输入 131
5.2.4 PC端采用LabWindows/CVI实现电压输入 134
第6章 单片机与PC串口通信之模拟量输出编程实例 137
6.1 系统设计说明 137
6.1.1 设计任务 137
6.1.2 线路连接 137
6.2 模拟电压输出程序设计 138
6.2.1 单片机端采用C51实现电压输出 138
6.2.2 PC端采用Visual Basic实现电压输出 143
6.2.3 PC端采用C++ Builder实现电压输出 144
6.2.4 PC端采用LabWindows/CVI实现电压输出 145
第7章 单片机与PC串口通信之数字量输入编程实例 147
7.1 系统设计说明 147
7.1.1 设计任务 147
7.1.2 线路连接 147
7.2 数字量输入程序设计 148
7.2.1 单片机端采用C51实现数字量输入 148
7.2.2 PC端采用Visual Basic实现数字量输入 151
7.2.3 PC端采用C++ Builder实现数字量输入 153
7.2.4 PC端采用LabWindows/CVI实现数字量输入 155
第8章 单片机与PC串口通信之数字量输出编程实例 158
8.1 系统设计说明 158
8.1.1 设计任务 158
8.1.2 线路连接 158
8.2 数字量输出程序设计 159
8.2.1 单片机端采用C51实现数字量输出 159
8.2.2 PC端采用Visual Basic实现数字量输出 161
8.2.3 PC端采用C++ Builder实现数字量输出 162
8.2.4 PC端采用LabWindows/CVI实现数字量输出 164
第9章 单片机与GSM短信模块串口通信编程实例 167
9.1 系统设计说明 167
9.1.1 设计任务 167
9.1.2 线路连接 167
9.2 短信收发程序设计 168
9.2.1 单片机端采用C51实现短信发送 168
9.2.2 单片机端采用C51实现短信接收 175
9.2.3 PC端采用Visual Basic实现短信收发 182
9.2.4 PC端采用C++ Builder实现短信收发 186
9.2.5 PC端采用LabWindows/CVI实现短信收发 198
第10章 单片机与无线数传模块串口通信编程实例 203
10.1 系统设计说明 203
10.1.1 设计任务 203
10.1.2 线路连接 203
10.2 温度测控程序设计 204
10.2.1 单片机端采用C51实现温度测控 204
10.2.2 PC端采用Visual Basic实现温度测控 214
10.2.3 PC端采用C++ Builder实现温度检测 220
10.2.4 PC端采用LabWindows/CVI实现温度检测 223
第11章 采用组态软件实现单片机与PC串口通信编程实例 227
11.1 系统设计说明 227
11.1.1 设计任务 227
11.1.2 线路连接 227
11.1.3 组态王设置 229
11.1.4 单片机与组态王通信协议 229
11.2 程序设计 232
11.2.1 利用Keil C51实现单片机模拟电压输入 232
11.2.2 利用KingView实现单片机模拟电压输入 240
11.2.3 利用Keil C51实现单片机模拟电压输出 246
11.2.4 利用KingView实现单片机模拟电压输出 252
11.2.5 利用Keil C51实现单片机数字量输入 255
11.2.6 利用KingView实现单片机数字量输入 262
11.2.7 利用Keil C51实现单片机数字量输出 265
11.2.8 利用KingView实现单片机数字量输出 269
第12章 单片机的典型应用——智能仪器温度测量 273
12.1 系统设计说明 273
12.1.1 设计任务 273
12.1.2 线路连接 274
12.1.3 通信协议 275
12.1.4 串口调试 277
12.2 单台智能仪器温度测量程序设计 279
12.2.1 PC端采用Visual Basic实现 279
12.2.2 PC端采用C++ Builder实现 282
12.2.3 PC端采用LabWindows/CVI实现 286
12.3 多台智能仪器温度测量程序设计 290
12.3.1 PC端采用Visual Basic实现 290
12.3.2 PC端采用C++ Builder实现 294
12.3.3 PC端采用LabWindows/CVI实现 299参考文献 304