书馨卡帮你省薪
欢迎光临中图网 请 | 注册
> >>
51单片机C语言编程从入门到精通

51单片机C语言编程从入门到精通

出版社:化学工业出版社出版时间:2018-01-01
开本: 16开 页数: 301
中 图 价:¥55.9(7.0折) 定价  ¥79.8 登录后可看到会员价
加入购物车 收藏
运费6元,满39元免运费
?新疆、西藏除外
本类五星书更多>

51单片机C语言编程从入门到精通 版权信息

51单片机C语言编程从入门到精通 本书特色

本书通过大量实例和采用程序逐行解说的方式介绍51单片机和C语言编程。全书主要内容有单片机快速入门、数制与C51语言基础、51单片机编程软件的使用、单片机驱动发光二极管的电路及编程、单片机驱动LED数码管的电路及编程、中断功能的使用及编程、定时器/计数器的使用及编程、按键电路及编程、双色LED点阵的使用及编程、液晶显示屏的使用及编程、步进电机的使用及编程、单片机的串行通信及编程、模拟I2C总线通信及编程、A/D(模/数)与D/A(数/模)转换电路及编程、51单片机的硬件系统、单片机开发常用电子元器件。本书内容由浅入深、语言通俗易懂,并且内容结构安排符合学习认知规律,适合作为初学者学习51单片机C语言编程的自学图书,也适合作为职业院校电类专业的单片机教材使用。

51单片机C语言编程从入门到精通 内容简介

本书通过大量实例和采用程序逐行解说的方式介绍51单片机和C语言编程。全书主要内容有单片机快速入门、数制与C51语言基础、51单片机编程软件的使用、单片机驱动发光二极管的电路及编程、单片机驱动LED数码管的电路及编程、中断功能的使用及编程、定时器/计数器的使用及编程、按键电路及编程、双色LED点阵的使用及编程、液晶显示屏的使用及编程、步进电机的使用及编程、单片机的串行通信及编程、模拟I2C总线通信及编程、A/D(模/数)与D/A(数/模)转换电路及编程、51单片机的硬件系统、单片机开发常用电子元器件。本书内容由浅入深、语言通俗易懂,并且内容结构安排符合学习认知规律,适合作为初学者学习51单片机C语言编程的自学图书,也适合作为职业院校电类专业的单片机教材使用。

51单片机C语言编程从入门到精通 目录

第1章单片机快速入门 1

1.1 单片机简介 / 1

1.1.1 什么是单片机 / 1

1.1.2 单片机应用系统的组成及实例说明 / 2

1.1.3 单片机的分类 / 3

1.1.4 单片机的应用领域 / 4

1.2 单片机应用系统开发实例 / 4

1.2.1 选择单片机的型号 / 4

1.2.2 设计单片机电路原理图 / 5

1.2.3 制作单片机电路 / 6

1.2.4 用编程软件编写单片机控制程序 / 7

1.2.5 计算机、下载(烧录)器和单片机的连接 / 10

1.2.6 用烧录软件将程序写入单片机 / 13

1.2.7 单片机电路的通电与测试 / 16



第2章数制与C51语言基础 18

2.1 数制与数制的转换 / 18

2.1.1 十进制数 / 18

2.1.2 二进制数 / 18

2.1.3 十六进制数 / 20

2.1.4 二进制数与十进制数的转换 / 20

2.1.5 二进制数与十六进制数的转换 / 20

2.1.6 单片机的数的表示及运算 / 21

2.2 C51语言基础 / 23

2.2.1 常量 / 23

2.2.2 变量 / 24

2.2.3 运算符 / 24

2.2.4 关键字 / 27

2.2.5 数组 / 28

2.2.6 循环语句(while、do while、for语句) / 29

2.2.7 选择语句(if、switch…case语句) / 30



第3章51单片机编程软件的使用 33

3.1 Keil C51软件的安装 / 33

3.1.1 Keil C51软件的版本及获取 / 33

3.1.2 Keil C51软件的安装 / 33

3.2 程序的编写与编译 / 35

3.2.1 启动Keil C51软件并新建工程文件 / 35

3.2.2 新建源程序文件并与工程关联起来 / 38

3.2.3 编写程序 / 40

3.2.4 编译程序 / 42

3.3 程序的仿真与调试 / 45

3.3.1 编写或打开程序 / 45

3.3.2 仿真设置 / 46

3.3.3 编译程序 / 47

3.3.4 仿真调试程序 / 48



第4章单片机驱动发光二极管的电路及编程 52

4.1 LED(发光二极管) / 52

4.1.1 外形与符号 / 52

4.1.2 性质 / 52

4.1.3 检测 / 53

4.1.4 限流电阻的阻值计算 / 53

4.2 单片机点亮单个LED的电路及程序详解 / 53

4.2.1 单片机点亮单个LED的电路 / 53

4.2.2 采用位操作方式编程点亮单个LED的程序及详解 / 54

4.2.3 采用字节操作方式编程点亮单个LED的程序及详解 / 55

4.2.4 单个LED以固定频率闪烁发光的程序及详解 / 56

4.2.5 单个LED以不同频率闪烁发光的程序及详解 / 58

4.3 单片机点亮多个LED的电路及程序详解 / 59

4.3.1 单片机点亮多个LED的电路 / 59

4.3.2 采用位操作方式编程点亮多个LED的程序及详解 / 59

4.3.3 采用字节操作方式编程点亮多个LED的程序及详解 / 60

4.3.4 多个LED以不同频率闪烁发光的程序及详解 / 61

4.3.5 多个LED左移和右移的程序及详解 / 61

4.3.6 LED循环左移和右移的程序及详解 / 63

4.3.7 LED移动并闪烁发光的程序及详解 / 64

4.3.8 用查表方式控制LED多样形式发光的程序及详解 / 65

4.3.9 LED花样发光的程序及详解 / 66

4.4 采用PWM(脉宽调制)方式调节LED亮度的原理及程序详解 / 67

4.4.1 采用PWM方式调节LED亮度的原理 / 67

4.4.2 采用PWM方式调节LED亮度的程序及详解 / 68



第5章单片机驱动LED数码管的电路及编程 70

5.1 单片机驱动一位LED数码管的电路及程序详解 / 70

5.1.1 一位LED数码管的外形、结构与检测 / 70

5.1.2 单片机连接一位LED数码管的电路 / 72

5.1.3 单个数码管静态显示一个字符的程序及详解 / 73

5.1.4 单个数码管动态显示多个字符的程序及详解 / 73

5.1.5 单个数码管环形转圈显示的程序及详解 / 74

5.1.6 单个数码管显示逻辑电平的程序及详解 / 74

5.2 单片机驱动8位LED数码管的电路及程序详解 / 75

5.2.1 多位LED数码管外形、结构与检测 / 75

5.2.2 单片机连接8位共阴型数码管的电路 / 76

5.2.3 8位数码管显示1个字符的程序及详解 / 78

5.2.4 8位数码管逐位显示8个字符的程序及详解 / 79

5.2.5 8位数码管同时显示8个字符的程序及详解 / 80

5.2.6 8位数码管动态显示8个以上字符的程序及详解 / 80



第6章中断功能的使用及编程 82

6.1 中断的基本概念与处理过程 / 82

6.1.1 什么是中断 / 82

6.1.2 中断的基本概念 / 82

6.1.3 中断的处理过程 / 83

6.2 8051单片机的中断系统结构与控制寄存器 / 83

6.2.1 中断系统的结构 / 83

6.2.2 中断源寄存器 / 84

6.2.3 中断允许寄存器IE / 85

6.2.4 中断优先级控制寄存器IP / 86

6.3 中断编程举例 / 87

6.3.1 中断编程的电路例图 / 87

6.3.2 用外部中断0以低电平方式触发中断的程序及详解 / 88

6.3.3 用外部中断1以下降沿方式触发中断的程序及详解 / 89



第7章定时器/计数器的使用及编程 91

7.1 定时器/计数器的定时与计数功能 / 91

7.1.1 定时功能 / 91

7.1.2 计数功能 / 92

7.2 定时器/计数器的结构原理 / 92

7.2.1 定时器/计数器的结构 / 92

7.2.2 定时器/计数器的工作原理 / 92

7.3 定时器/计数器的控制寄存器与四种工作方式 / 94

7.3.1 定时器/计数器控制寄存器TCON / 94

7.3.2 工作方式控制寄存器TMOD / 94

7.3.3 定时器/计数器的工作方式 / 95

7.4 定时器/计数器的应用及编程 / 99

7.4.1 产生1kHz方波信号的程序及详解 / 99

7.4.2 产生50kHz方波信号的程序及详解 / 100

7.4.3 产生周期为1s方波信号的程序与长延时的方法 / 101



第8章按键电路及编程 103

8.1 独立按键输入电路与程序详解 / 103

8.1.1 开关输入产生的抖动及软、硬件解决方法 / 103

8.1.2 单片机连接8个独立按键和8个LED的电路 / 104

8.1.3 一个按键点动控制一个LED亮灭的程序及详解 / 104

8.1.4 一个按键锁定控制一个LED亮灭的程序及详解 / 104

8.1.5 四路抢答器的程序及详解 / 106

8.1.6 独立按键控制LED和LED数码管的单片机电路 / 107

8.1.7 两个按键控制一位数字增、减并用8位数码管显示的程序及详解 / 107

8.1.8 两个按键控制多位数字增、减并用8位数码管显示的程序及详解 / 110

8.1.9 按键长按与短按产生不同控制效果的程序及详解 / 111

8.1.10 8个独立按键控制LED亮灭和LED数码管显示的程序及详解 / 114

8.2 矩阵键盘输入电路与程序详解 / 116

8.2.1 单片机连接16键矩阵键盘和8位数码管的电路 / 116

8.2.2 矩阵键盘行列扫描方式输入及显示的程序及详解 / 116

8.2.3 中断触发键盘行列扫描的矩阵键盘输入及显示电路与程序详解 / 120

8.2.4 矩阵键盘密码锁的程序及详解 / 125



第9章双色LED点阵的使用及编程 129

9.1 双色LED点阵的结构原理与检测 / 129

9.1.1 共阳型和共阴型点阵的电路结构 / 129

9.1.2 点阵的混色规律 / 129

9.1.3 点阵的静态字符或图形显示原理 / 130

9.1.4 点阵的动态字符或图形显示原理 / 133

9.1.5 双色点阵的识别与检测 / 134

9.2 单片机驱动双色点阵的电路及编程 / 135

9.2.1 74HC595芯片 / 135

9.2.2 单片机配合74HC595芯片驱动双色LED点阵的电路 / 136

9.2.3 双色点阵显示一种颜色字符的程序及详解 / 136

9.2.4 双色点阵正反交替显示两种颜色字符的程序及详解 / 139

9.2.5 字符移入和移出点阵的程序及详解 / 141



第10章液晶显示屏的使用及编程 145

10.1 1602字符型液晶显示屏的硬、软件 / 145

10.1.1 外形与引脚功能 / 145

10.1.2 内部字库及代码 / 146

10.1.3 LCD屏各显示位与DDRAM的地址关系 / 146

10.1.4 1602显示屏的指令集 / 147

10.2 单片机驱动1602液晶显示屏的电路及编程 / 151

10.2.1 单片机驱动1602液晶显示屏的电路 / 151

10.2.2 1602液晶显示屏静态显示字符的程序及详解 / 151

10.2.3 1602液晶显示屏逐个显示字符的程序及详解 / 154

10.2.4 1602液晶显示屏字符滚动显示的程序及详解 / 154

10.2.5 矩阵键盘输入与1602液晶显示屏显示的电路及程序详解 / 156



第11章步进电机的使用及编程 160

11.1 步进电机与驱动芯片 / 160

11.1.1 步进电机的结构与工作原理 / 160

11.1.2 驱动芯片ULN2003 / 163

11.1.3 五线四相步进电机 / 165

11.2 单片机驱动步进电机的电路及编程 / 166

11.2.1 由按键、单片机、驱动芯片和数码管构成的步进电机驱动电路 / 166

11.2.2 用单4拍方式驱动步进电机正转的程序及详解 / 167

11.2.3 用双4拍方式驱动步进电机自动正反转的程序及详解 / 167

11.2.4 外部中断控制步进电机正反转的程序及详解 / 169

11.2.5 用按键控制步进电机启动、加速、减速、停止的程序及详解 / 171



第12章单片机的串行通信及编程 175

12.1 并行通信和串行通信 / 175

12.1.1 串行通信的两种方式 / 175

12.1.2 串行通信的数据传送方向 / 177

12.2 串行通信口的结构与原理 / 178

12.2.1 串行通信口的结构 / 178

12.2.2 串行通信口的工作原理 / 178

12.3 串行通信口的控制寄存器 / 179

12.3.1 串行控制寄存器(SCON) / 179

12.3.2 电源控制寄存器(PCON) / 180

12.4 四种工作方式与波特率的设置 / 180

12.4.1 方式0 / 180

12.4.2 方式1 / 182

12.4.3 方式2 / 182

12.4.4 方式3 / 183

12.4.5 波特率的设置 / 183

12.5 串行通信的应用编程 / 184

12.5.1 利用串行通信的方式0实现产品计数显示的电路及编程 / 184

12.5.2 利用串行通信的方式1实现双机通信的电路及编程 / 185



第13章模拟I2C总线通信及编程 190

13.1 I2C总线 / 190

13.1.1 概述 / 190

13.1.2 I2C总线通信协议 / 190

13.1.3 I2C总线的数据传送格式 / 191

13.2 I2C总线存储器24C02(E2PROM) / 192

13.2.1 外形与引脚功能 / 192

13.2.2 器件地址的设置 / 192

13.2.3 读/写操作 / 193

13.3 单片机与24C02的I2C总线通信电路及编程 / 196

13.3.1 模拟I2C总线通信的程序及详解 / 196

13.3.2 利用I2C总线从24C02读写一个数据并用LED显示的电路及程序详解 / 199

13.3.3 利用I2C总线从24C02读写多个数据的电路及程序详解 / 201

13.3.4 利用24C02存储按键的操作信息的电路及程序详解 / 202



第14章A/D(模/数)与D/A(数/模)转换电路及编程 206

14.1 A/D(模/数)与D/A(数/模)转换原理 / 206

14.1.1 A/D转换 / 206

14.1.2 D/A转换 / 208

14.2 A/D与D/A转换芯片PCF8591 / 208

14.2.1 外形与引脚功能 / 208

14.2.2 器件地址和功能设置 / 209

14.3 由PCF8591芯片构成的A/D和D/A转换电路及编程 / 210

14.3.1 单片机、PCF8591芯片与8位数码管构成的A/D和D/A转换及显示电路 / 210

14.3.2 1路A/D转换并显示转换值的程序及详解 / 210

14.3.3 4路电压测量显示的程序及详解 / 213

14.3.4 D/A转换输出显示的程序及详解 / 216



第15章51单片机的硬件系统 219

15.1 8051单片机的引脚功能与内部结构 / 219

15.1.1 引脚功能 / 219

15.1.2 单片机与片外存储器的连接与控制 / 221

15.1.3 内部结构 / 223

15.2 8051单片机I/O端口的结构与工作原理 / 225

15.2.1 P0端口 / 226

15.2.2 P1端口 / 227

15.2.3 P2端口 / 228

15.2.4 P3端口 / 228

15.3 8051单片机的存储器 / 229

15.3.1 存储器的存储单位与编址 / 229

15.3.2 片内外程序存储器的使用与编址 / 230

15.3.3 片内外数据存储器的使用与编址 / 231

15.3.4 数据存储器的分区 / 231

15.3.5 特殊功能寄存器(SFR) / 233

15.4 STC89C5X系列单片机 / 238

15.4.1 STC89C5X单片机的版本、封装形式和引脚 / 238

15.4.2 STC89C5X系列单片机的型号命名规则 / 242

15.4.3 STC89C5X系列单片机的常用型号的主要参数 / 242

15.4.4 STC89C5X系列单片机的I/O端口 / 242

15.4.5 STC89C5X系列单片机的程序存储器与数据存储器 / 246

15.4.6 STC89C5X系列单片机的特殊功能寄存器 / 247



第16章单片机开发常用电子元器件 250

16.1 基本电子元器件 / 250

16.1.1 电阻器 / 250

16.1.2 电位器 / 252

16.1.3 排阻 / 253

16.1.4 电容器 / 254

16.1.5 电感器 / 255

16.1.6 变压器 / 256

16.2 半导体元器件 / 259

16.2.1 二极管 / 259

16.2.2 整流二极管与整流桥堆 / 260

16.2.3 稳压二极管 / 261

16.2.4 肖特基二极管 / 262

16.2.5 快恢复二极管 / 263

16.2.6 三极管 / 264

16.2.7 单向晶闸管 / 267

16.2.8 绝缘栅型场效应管(MOS管) / 268

16.3 其他类型元器件 / 270

16.3.1 双色发光二极管 / 270

16.3.2 红外线接收组件 / 271

16.3.3 光电耦合器 / 271

16.3.4 光遮断器 / 272

16.3.5 耳机 / 273

16.3.6 蜂鸣器 / 274

16.3.7 石英晶体谐振器(晶振) / 276

16.3.8 电磁继电器 / 277

16.3.9 干簧管 / 278

16.3.10 自恢复熔断器 / 278

16.3.11 瞬态电压抑制二极管 / 279

16.4 贴片元器件 / 280

16.4.1 贴片封装规格 / 280

16.4.2 手工焊接方法 / 280

16.4.3 贴片电阻器 / 282

16.4.4 贴片电位器 / 282

16.4.5 贴片熔断器 / 283

16.4.6 贴片电容器 / 283

16.4.7 贴片电感器 / 284

16.4.8 贴片二极管 / 284

16.4.9 贴片三极管 / 285

16.5 集成电路 / 286

16.5.1 集成电路的引脚识别 / 286

16.5.2 三端固定输出稳压器(78XX/79XX) / 286

16.5.3 三端精密稳压器(TL431) / 288

16.5.4 双运算放大器(LM358) / 289

16.5.5 双电压比较器(LM393) / 291

16.5.6 单全桥/单H桥/电机驱动芯片(L9110) / 292

16.5.7 常用的74系列芯片型号 / 293

16.5.8 8路三态输出D型锁存器芯片(74HC573) / 294

16.5.9 三-八线译码器/多路分配器芯片(74HC138) / 296

16.5.10 8路选择器/分配器芯片 (74HC4051) / 297

16.5.11 串/并转换芯片(74HC164) / 298

16.5.12 并/串转换芯片(74HC165) / 299



视频讲解清单 301
展开全部
商品评论(0条)
暂无评论……
书友推荐
本类畅销
浏览历史
编辑推荐
返回顶部
中图网
在线客服