《PIC单片机基础与实例进阶》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:零点工作室编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2012
  • ISBN:9787302269304
  • 页数:298 页
图书介绍:本书面向PIC单片机初中级读者,全书共分三大篇13章,分别介绍了单片机历史及基本发展现状、PIC单片机系统结构等内容。

第1章 单片机概述 1

1.1单片机的历史 1

1.2单片机的发展现状 2

1.3单片机的特点 2

1.4单片机的应用领域 3

1.5常用的单片机产品介绍 4

1.6 PIC单片机概述 5

1.6.1 PIC单片机种类 5

1.6.2 PIC16F877单片机的基本特性 6

思考与练习 7

第2章 PIC 16系列单片机系统结构 8

2.1 PIC16F877的基本结构 8

2.2基本功能模块 9

2.3专用功能模块 14

思考与练习 15

第3章 单片机开发工具 16

3.1软件平台的安装 16

3.1.1 MPLAB功能简介 16

3.1.2 MPLAB集成开发环境的安装 17

3.1.3 C语言编译器HI-TECH PICC的安装 18

3.2单片机项目的建立与运行 18

3.2.1 C语言项目建立过程 18

3.2.2目标代码的生成与运行 21

3.3硬件平台的安装 22

3.3.1单片机模拟软件Proteus的安装与测试 22

3.3.2 ICD2开发板的硬件开发平台的安装 24

3.3.3基于ICD2的硬件开发平台的测试 26

思考与练习 29

第4章 单片机C语言 30

4.1实例:第一个单片机C语言程序 31

4.2数据类型和变量 35

4.2.1常量和变量 36

4.2.2整型数据 38

4.2.3浮点型数据 41

4.2.4字符型数据 42

4.2.5位型数据 44

4.2.6数据类型修饰符 45

4.3 C语言的运算符 47

4.3.1算术运算符 47

4.3.2位运算符 48

4.3.3赋值运算符 53

4.3.4逻辑运算符 54

4.4 C语言的流程控制语句 55

4.4.1 C语言语句概述 55

4.4.2顺序结构 56

4.4.3选择结构 57

4.4.4多分支结构 62

4.4.5 while循环结构 63

4.4.6 for循环结构 66

4.5数组 69

4.5.1数组的定义与初始化 69

4.5.2特别的数组:字符串 72

4.5.3数组的使用 73

4.5.4实例:数码管显示 73

4.5.5二维数组与多维数组 79

4.6函数 81

4.6.1函数的声明和定义 81

4.6.2函数的参数 82

4.6.3数组作为函数的参数 84

4.6.4何时使用函数 84

4.6.5实例:延时函数的编写和使用 85

4.7宏定义 88

4.7.1不带参数的宏定义 88

4.7.2带参数的宏定义 89

4.8多文件项目管理 90

4.8.1 .H文件的书写 90

4.8.2 .C文件的书写 91

4.8.3把模块文件添加到当前项目的过程 92

4.9实例:简单的计数器 93

思考与练习 95

第5章 通用输入/输出接口的用法 97

5.1输入/输出端口简介 97

5.1.1输入/输出端口原理 98

5.1.2输入/输出端口的相关寄存器 99

5.2输出端口用法 100

5.2.1跑马灯的设计 100

5.2.2多数码管的显示控制 102

5.3输入端口用法 108

5.3.1单个开关量状态的读取 108

5.3.2 4×4矩阵式键盘的工作原理 112

5.4实例:简单电子计算器 117

思考与练习 123

第6章 中断系统 124

6.1中断的基本概念 124

6.1.1中断的机理 124

6.1.2中断的作用 126

6.2 PIC16F877的中断系统 126

6.3中断的响应和处理 131

6.4 INT中断的用法 132

6.4.1 INT中断的用途特点 132

6.4.2 INT中断的相关寄存器 133

6.4.3 PICC中断服务程序的编写 133

6.4.4 INT中断的硬件连接 134

6.5实例:INT中断例子 134

思考与练习 137

第7章 定时/计数器 138

7.1 TMR0的特点 138

7.2 TMR0的系统结构及相关寄存器 138

7.3 TMR0的硬件连接 140

7.4实例:TMR0外部计数 141

7.5实例:TMR0内部定时 143

7.6看门狗定时器的用法 147

7.6.1 WDT的系统结构 148

7.6.2 WDT的硬件设置 149

7.6.3 WDT的程序设计 149

7.6.4 WDT使用注意事项 150

7.7 PIC16F877内置定时器的比较 151

思考与练习 152

第8章 A/D转换器 153

8.1 A/D转换基础知识 153

8.2片内ADC模块的基本用法 153

8.2.1 A/D转换模块的系统结构及相关的寄存器 154

8.2.2 A/D转换相关寄存器 156

8.2.3 A/D转换模块的硬件设计 159

8.2.4 A/D转换模块的查询方式操作时序 160

8.2.5实例:查询方式下的A/D转换设计 160

8.3实例:多通道A/D转换设计 163

8.4实例:中断模式下的A/D转换设计 166

8.5实例:休眠模式下的A/D转换 168

8.6 A/D转换细节问题 171

8.6.1转换精度 171

8.6.2采样时间要求 171

8.6.3转换时间要求 173

思考与练习 173

第9章 通用同步/异步收发器USART 175

9.1 USART模块的功能特点 175

9.2 USART发送器用法 175

9.2.1 USART发送器相关寄存器 177

9.2.2实例:采用查询方式的数据发送 179

9.2.3实例:中断方式下的数据发送 182

9.3 USART接收器用法 184

9.3.1 USART接收器相关寄存器 185

9.3.2实例:采用查询方式的数据接收 187

9.3.3实例:中断方式下的数据接收 190

9.4 USART的外围硬件电路设计 192

思考与练习 194

第10章 SPI接口 195

10.1 SPI模块的系统结构图和工作模式 195

10.2 SPI模式相关寄存器 198

10.3主控模式 200

10.3.1寄存器配置 201

10.3.2实例:25C040模块写操作 202

10.4从动模式 205

10.4.1从动模式相关寄存器 205

10.4.2实例:双机SPI协议通信 205

10.5实例:MAX7219串行8位LED显示驱动器 210

10.5.1 MAX7219功能简介 210

10.5.2系统结构与工作流程 211

10.5.3 MAX7219的SPI通信时序图 212

10.5.4实例:MAX7219的软件编程 212

思考与练习 215

第11章 I2C接口 216

11.1 I2C总线基础知识 216

11.1.1 I2C总线的概念 217

11.1.2 I2C协议格式 218

11.2 PIC 16F877单片机的I2C模块 221

11.3 I2C主控模式 226

11.3.1 I2C的主控发送模式 226

11.3.2实例:24C02C模块写操作 227

11.3.3 I2C主控接收模式 231

11.3.4 I2C主控模式的复合帧 233

11.3.5实例:24C02C模块读操作 234

11.4 I2C从动模式 238

11.5实例:PCF8574A的读写 239

11.5.1 PCF8574A功能简介 239

11.5.2 PCF8574A的系统结构与通信格式 240

11.5.3 PCF8574A编程实例 241

11.6区分SPI、I2C与UART 244

思考与练习 245

第12章 CCP模块 246

12.1 PIC单片机的CCP模块概述 246

12.2 CCP1模块相关寄存器 247

12.3捕捉模式 250

12.3.1捕捉模式的系统结构和工作过程 250

12.3.2实例:CCP测速计 251

12.4比较模式 256

12.4.1比较模式的系统结构和工作流程 256

12.4.2实例:CCP频率发生器 256

12.5 PWM模式 259

12.5.1 PWM模式的系统结构和工作流程 259

12.5.2 PWM的周期与占空比 260

12.5.3实例:PWM信号发生器 261

思考与练习 264

第13章 应用设计实例 265

13.1单片机奏乐 265

13.1.1蜂鸣器简介 265

13.1.2单片机奏乐原理 266

13.1.3单个音符的演奏方法 268

13.1.4单片机演奏音乐的方法 270

13.1.5实例:单片机控制蜂鸣器奏乐 274

13.2图形点阵式液晶模块的使用 278

13.2.1 HDG12864F-3模块特点 278

13.2.2 HDG12864F-3的接口与硬件连接 278

13.2.3 HDG12864F-3的指令集 280

13.2.4实例:HDG 12864F-3指令集的程序实现 281

13.2.5 HDG12864F-3的数据显示 283

13.2.6 HDG12864F-3的初始化 284

13.2.7实例:HDG 12864F-3的驱动程序设计 284

13.2.8实例:在图形液晶上显示汉字 292

13.2.9实例:在图形液晶上显示图像 296

思考与练习 298