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

  • 购买积分:12 如何计算积分?
  • 作  者:周兴华编著
  • 出 版 社:北京:北京航空航天大学出版社
  • 出版年份:2007
  • ISBN:7811242141
  • 页数:346 页
图书介绍:本书以实践为主线,以生动短小的实例为灵魂,穿插介绍C语言的语法及针对单片机的特别定义,使理论与实践结合,使读者掌握单片机的C语言编程。

第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集成开发环境及并口下载软件介绍3.1 Keil C51集成开发平台安装 12

3.2 并口下载软件使用 13

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

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

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

4.3 80C51的内部结构 19

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

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

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

5.1 函数调用实验 30

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

5.3 主函数实验 33

5.4 文件包含处理 34

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

5.6 函数连接实验一 38

5.7 函数连接实验二 40

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

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

6.3 数据类型 48

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

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

6.6 变量的数据类型选择 53

6.7 数据类型之间的转换 53

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

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

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

7.1 常量 58

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

7.3 变量 60

7.4 存储器类型 60

7.5 两个局部变量val1、val2的显示实验 63

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

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

8.1 宏定义 68

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

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

8.4 文件包含 72

8.5 条件编译 73

8.6 重新定义数据类型 74

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

第9章 运算符与表达式 77

9.1 算术运算符与表达式 77

9.2 数学运算与显示实验 77

9.3 关系运算符与表达式 79

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

9.5 逻辑运算符与表达式 83

9.6 赋值运算符与表达式 83

9.7 逻辑判断实验 84

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

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

9.10 逗号运算符与表达式 89

9.11 条件运算符与表达式 89

9.12 位运算符与表达式 89

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

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

9.15 sizeof运算符与表达式 92

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

10.1 表达式语句 93

10.2 复合语句实验 94

10.3 程序的结构化设计 97

10.4 条件语句与控制结构 97

10.5 条件语句实验一 98

10.6 条件语句实验二 99

第11章 switch/case开关语句 102

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

11.2 switch/case开关语句实验 103

11.3 循环语句 108

11.4 while语句实验 109

11.5 for语句实验 111

11.6 goto语句 112

11.7 break语句和continue语句 112

11.8 break语句实验 113

11.9 continue语句实验 114

第12章 函数的定义 117

12.1 函数定义的一般形式 117

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

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

12.4 函数调用的三种方式 119

12.5 对被调用函数的说明 119

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

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

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

第13章 数组 130

13.1 一维数组的定义 130

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

13.3 字符数组 131

13.4 数组元素赋初值 132

13.5 数组作为函数的参数 132

13.6 数组显示实验 133

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

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

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

第14章 指针 149

14.1 指针与地址 149

14.2 指针变量的定义 149

14.3 指针变量的引用 150

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

14.5 指针变量的运算 151

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

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

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

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

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

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

15.1 结构体的概念 161

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

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

15.4 结构体变量的引用 163

15.5 结构体变量的初始化 163

15.6 结构体数组 164

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

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

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

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

15.11 共用体的概念 165

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

15.13 共用体变量的引用 167

15.14 枚举类型 167

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

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

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

15.18 枚举类型实验 184

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

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

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

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

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

16.5 蜂鸣器发音实验 193

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

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

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

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

17.2 特殊功能寄存器PCON 200

17.3 串行口的工作方式 201

17.4 波特率选择 202

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

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

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

18.1 中断的种类 213

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

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

18.4 外中断实验 218

18.5 定时中断实验 221

18.6 简易万年历实例 223

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

19.1 独立式键盘 227

19.2 行列式键盘 228

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

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

19.5 键盘工作方式 229

19.6 独立式键盘输入实验 229

19.7 行列式键盘输入实验 231

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

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

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

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

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

20.3 静态显示实验 244

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

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

20.6 实时时钟实验 248

第21章 I2C串行接口器件24C01及C51编程21.1 EEPROM AT24CXX的性能特点 253

21.2 AT24CXX系列EEPROM芯片的寻址 255

21.3 写操作方式 256

21.4 读操作方式 257

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

21.6 读写AT24C01实验 261

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

第22章 16×2点阵字符液晶模块及C51驱动22.1 16×2点阵字符液晶显示器概述 281

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

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

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

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

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

22.7 HD44780的工作原理 285

22.8 LCD控制器的指令 288

22.9 LCM工作时序 290

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

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

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

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

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

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

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

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

23.4 HD61203的特点 307

23.5 HD61202的特点 308

23.6 HD61202的工作原理 309

23.7 HD61202的工作过程 312

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

23.9 HD61202的操作时序图 314

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

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

23.12 128×64LCM演示程序1 318

23.13 128×64LCM演示程序2 326

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

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

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

参考文献 346