《手把手教你学单片机C程序设计 第2版》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:周兴华编著
  • 出 版 社:北京:北京航空航天大学出版社
  • 出版年份:2014
  • ISBN:9787512413672
  • 页数:426 页
图书介绍:本书以实践为主线,以生动短小的实例为灵魂,穿插介绍C语言的语法及针对单片机的特别定义,使理论与实践结合,使读者掌握单片机的C语言编程。内容包括:C语言的基础知识、Keil软件的使用、程序的编写与调试方法及其他相关知识。随书光盘提供了作者所设计的实验仿真板、书中所有的例子、实验过程及现象的动画等。本书可作为中等职业学校、高等职业学校、电视大学等的教学用书,也是单片机爱好者自学单片机C语言合适的教材。第2版增加部分实验,以满足读者新增的需求。

第1章 概述 1

1.1高效率的C语言编程 1

1.2 C语言具有突出的优点 2

第2章 单片机简史及实验器材简介 4

2.1单片机的发展简史及特点 4

2.2单片机C语言入门的有效途径 5

2.3实验器材介绍 6

第3章Keil C51集成开发环境及并口下载软件介绍 13

3.1 Keil C51集成开发平台安装 13

3.2 USBasp程序下载软件的安装 15

第4章 单片机基本知识及第一个C51程序 21

4.1 MCS-51单片机的基本结构 21

4.2 80C51的基本特征及引脚定义 22

4.3 80C51的内部结构 24

4.4 80C51的存储器配置和寄存器 26

4.5第一个C51演示程序及效果 29

第5章C语言程序的基本结构 37

5.1函数调用实验 37

5.2 C语言程序的组成结构 39

5.3主函数实验 40

5.4文件包含处理 42

5.5通用的C语言程序组成结构 44

5.6函数连接实验一 46

5.7函数连接实验二 48

第6章C语言的标识符、关键字和数据类型 52

6.1标识符和关键字 52

6.2 4个LED数码管从左至右显示“1234” 54

6.3数据类型 57

6.4 8个LED数码管从左至右扫描显示“00000000”(一) 59

6.5 8个LED数码管从左至右扫描显示“00000000”(二) 62

6.6变量的数据类型选择 62

6.7数据类型之间的转换 63

6.8无符号字符型变量值与无符号整型变量值相乘实验 63

6.9无符号整型变量值与无符号整型变量值相乘实验 65

第7章 常量、变量及存储器类型 68

7.1常量 68

7.2乘法运算:两个乘数分别为常量与变量 68

7.3变量 70

7.4存储器类型 70

7.5两个局部变量vall、va12的显示实验 73

7.6全局变量globe_x的显示实验 75

第8章 编译预处理及重新定义数据类型 79

8.1宏定义 79

8.2两数相加并输出结果实验 80

8.3使用带参数的宏定义进行运算 82

8.4文件包含 84

8.5条件编译 85

8.6重新定义数据类型 86

8.7 8个LED模拟彩灯闪烁实验 87

第9章 运算符与表达式 89

9.1算术运算符与表达式 89

9.2数学运算与显示实验 90

9.3关系运算符与表达式 92

9.4输入数的大小比较及判断实验 92

9.5逻辑运算符与表达式 95

9.6赋值运算符与表达式 96

9.7逻辑判断实验 97

9.8自增和自减运算符与表达式 100

9.9自增运算a++和++b实验 100

9.10逗号运算符与表达式 102

9.11条件运算符与表达式 102

9.12位运算符与表达式 102

9.13两个变量x、y的位运算实验 103

9.14强制类型转换运算符与表达式 105

9.15 sizeof运算符与表达式 106

第10章 表达式语句与复合语句 107

10.1表达式语句 107

10.2复合语句实验 108

10.3程序的结构化设计 111

10.4条件语句与控制结构 112

10.5条件语句实验一 112

10.6条件语句实验二 114

第11章switch/case开关语句 117

11.1 switch/case开关语句的组成形式 117

11.2 switch/case开关语句实验 118

11.3循环语句 123

11.4 while语句实验 125

11.5 for语句实验 127

11.6 goto语句 128

11.7 break语句和continue语句 128

11.8 break语句实验 129

11.9 continue语句实验 131

第12章 函数的定义 133

12.1函数定义的一般形式 133

12.2函数的参数和函数返回值 134

12.3无参数函数、有参数函数及空函数 134

12.4函数调用的三种方式 135

12.5对被调用函数的说明 136

12.6参数传递的函数调用实验 136

12.7三个数大小自动排列实验 139

12.8华氏-摄氏温度转换的仪器实验 141

第13章 数组 147

13.1一维数组的定义 147

13.2二维及多维数组的定义 148

13.3字符数组 149

13.4数组元素赋初值 149

13.5数组作为函数的参数 150

13.6数组显示实验 150

13.7输入10个整数(0~999之间),输出其中的最大数实验 156

13.8选择法数组排序显示实验 162

13.9模拟花样广告灯显示实验 165

第14章 指针 168

14.1指针与地址 168

14.2指针变量的定义 169

14.3指针变量的引用 169

14.4数组指针与指向数组的指针变量 170

14.5指针变量的运算 171

14.6指向多维数组的指针和指针变量 171

14.7直接引用变量和间接引用变量实验 172

14.8下标法和指针法引用数组元素实验 174

14.9地址传递的函数调用实验 175

14.10用数组名作为函数的参数进行传递实验 178

第15章 结构体、共用体及枚举 181

15.1结构体的概念 181

15.2结构体类型变量的定义 181

15.3关于结构体类型有几点需要注意的地方 183

15.4结构体变量的引用 183

15.5结构体变量的初始化 184

15.6结构体数组 184

15.7指向结构体类型数据的指针 185

15.8用指向结构体变量的指针引用结构体成员 185

15.9指向结构体数组的指针 186

15.10将结构体变量和指向结构体的指针作函数参数 186

15.11共用体的概念 186

15.12共用体类型变量的定义 186

15.13共用体变量的引用 188

15.14枚举类型 188

15.15计时器设计(待显时间存放于结构体变量中)实验 189

15.16跑表设计(计时时间存放于结构体变量中)实验 193

15.17计时器设计(计时时间存放于共用体变量中)实验 201

15.18枚举类型实验 206

第16章 定时器/计数器控制及C51编程 209

16.1定时器/计数器的结构及工作原理 209

16.2定时器/计数器方式寄存器TMOD和控制寄存器TCON 210

16.3定时器/计数器的工作方式 212

16.4定时器/计数器的初始化 215

16.5蜂鸣器发音实验 215

16.6定时器T1以方式1计数实验 217

16.7定时器T0以方式2定时实验 220

第17章 串行接口及C51编程 223

17.1串行口的控制与状态寄存器SCON 223

17.2特殊功能寄存器PCON 224

17.3串行口的工作方式 226

17.4波特率选择 227

17.5单片机与PC机的通信实验1 228

17.6单片机与PC机的通信实验2 232

17.7在51 MCU DEMO试验板上,进行单片机与PC机(个人电脑)的模拟485通信试验 238

第18章 中断控制及C51编程 246

18.1中断的种类 246

18.2 MCS-51单片机的中断系统 246

18.3编写80C51单片机中断函数时应严格遵循的规则 251

18.4外中断实验 251

18.5定时中断实验 254

18.6简易万年历实例 256

18.7单片机使用定时器及中断演奏音乐 260

18.8交通灯实验 264

第19章 键盘接口技术及C51编程 269

19.1独立式键盘 269

19.2行列式键盘 270

19.3独立式键盘接口的编程模式 270

19.4行列式键盘接口的编程模式 271

19.5键盘工作方式 271

19.6独立式键盘输入实验 272

19.7行列式键盘输入实验 274

19.8扫描方式的键盘输入实验 277

19.9定时中断方式的键盘输入实验 280

第20章LED显示器接口技术及C51编程 285

20.1 LED数码显示器构造及特点 285

20.2 LED数码显示器显示方法 286

20.3静态显示实验 288

20.4慢速扫描动态显示实验 290

20.5快速扫描动态显示实验 292

20.6实时时钟实验 293

第21章I2C串行接口器件24C01及C51编程 298

21.1 EEPROM AT24CXX的性能特点 298

21.2 AT24CXX系列EEPROM芯片的寻址 301

21.3写操作方式 302

21.4读操作方式 303

21.5读写AT24C01的相关功能子函数 304

21.6读写AT24C01实验 307

21.7具有断电后记忆定时时间的实时时钟实验 313

第22章16×2点阵字符液晶模块及C51驱动 328

22.1 16×2点阵字符液晶显示器概述 328

22.2液晶显示器的突出优点 329

22.3 16×2字符型液晶显示模块的特性 329

22.4 16×2字符型液晶显示模块的引脚及功能 329

22.5 16×2字符型液晶显示模块的内部结构 330

22.6液晶显示控制驱动集成电路HD44780的特点 331

22.7 HD44780的工作原理 332

22.8 LCD控制器的指令 336

22.9 LCM工作时序 339

22.10 16×2点阵字符液晶模块与单片机的连接方式 340

22.11 16×2点阵字符液晶模块及C51驱动子函数 340

22.12在51 MCU DEMO试验板上实现16×2LCM演示程序1 343

22.13在51 MCU DEMO试验板上实现16×2LCM演示程序2 348

22.14设计一个液晶显示的4位整数运算计算器 353

22.15液晶显示高精度温度测试仪的设计及实验 366

第23章 点阵图形液晶模块及C51编程 381

23.1 128×64点阵图形液晶模块的特性 381

23.2 128×64点阵图形液晶模块的引脚及功能 381

23.3 128×64点阵图形液晶模块的内部结构 382

23.4 HD61203的特点 384

23.5 HD61202的特点 385

23.6 HD61202的工作原理 386

23.7 HD61202的工作过程 390

23.8点阵图形液晶模块的控制器指令 390

23.9 HD61202的操作时序图 392

23.10 128×64点阵图形液晶模块与单片机的连接方式 393

23.11 128×64点阵图形液晶模块及C51驱动子函数 394

23.12 128×64LCM演示程序1 396

23.13 128×64LCM演示程序2 405

第24章AT89S51看门狗定时器原理及应用 420

24.1看门狗定时器原理 420

24.2看门狗实验:“流水灯”实验1 421

24.3看门狗实验:“流水灯”实验2 423

参考文献 423