第1章 概述 1
1.1单片机概况 1
1.1.1单片机发展历程 1
1.1.2单片机应用现状 3
1.1.3单片机发展趋势 4
1.2 PIC单片机特点 6
1.3 PIC系列单片机 9
1.4 PIC 16F87X概要 12
1.4.1 PIC16F87X基本特征 12
1.4.2 PIC16F87X外围模块 13
1.4.3 PIC16F87X型号间差异 13
第2章PIC16F87X基础 15
2.1 PIC16F87X功能结构 15
2.1.1 PIC16F87X内核概述 15
2.1.2外围功能模块概述 19
2.1.3引脚功能概述 20
2.2中央处理器 23
2.2.1算术逻辑单元 24
2.2.2工作寄存器 24
2.2.3状态寄存器 24
2.2.4程序计数器 26
2.3存储器 30
2.3.1程序存储器 31
2.3.2数据存储器 32
2.3.3 EEPROM 38
2.3.4 FLASH存储器 42
2.4 I/O端口 45
2.4.1 PORTA端口 45
2.4.2 PORTB端口 47
2.4.3 PORTC端口 49
2.4.4 PORTD及PORTE端口 51
2.5时钟与指令周期 53
2.5.1振荡模式与时钟选择 53
2.5.2指令周期 55
2.6复位 56
2.6.1上电复位 57
2.6.2掉电复位 58
2.63外部复位 58
2.64看门狗复位 59
2.65复位判断 60
2.7休眠模式 61
2.8配置字 62
第3章 中断系统 65
3.1中断的基本概念 65
3.2中断源 66
3.3中断逻辑 69
3.4中断处理流程 70
3.5中断相关寄存器 71
第4章 定时器与CCP模块 76
4.1定时器/计数器 76
4.1.1 TIMER0与WDT 77
4.1.2 TIMER1 81
4.1.3 TIMER2 85
4.2 CCP模块 88
4.2.1捕捉模式 90
4.2.2比较模式 91
4.2.3 PWM模式 92
第5章A/D转换模块 96
5.1 A/D转换基础知识 96
5.1.1 A/D转换器分类 96
5.1.2逐次逼近型A/D的工作原理 97
5.1.3 A/D转换器的主要技术指标 98
5.2 PIC 16F87X的A/D转换模块 98
5.2.1 A/D转换模块的结构 99
5.2.2 A/D转换的时间要求 100
5.23相关寄存器 102
5.2 4 A/D转换流程 105
第6章 串行通信模块 108
6.1串行通信的基本概念 108
6.2 SPI串行通信模式 110
6.2.1 SPI工作原理 110
6.2.2 SPI相关寄存器 112
6.2.3 SPI主控工作方式 114
6.2.4 SPI从动工作方式 115
6.3 I2C串行通信模式 116
6.3.1 I2C工作原理 116
6.3.2 I2C相关寄存器 119
6.3.3 I2C从动工作方式 123
6.3.4 I2C主控工作方式 125
6.4 USART模块 129
6.4.1 USART工作原理 129
6.4.2相关寄存器 130
6.4.3波特率发生器 132
6.4.4异步工作模式 133
6.4.5同步工作模式 138
第7章 指令系统 143
7.1指令格式与分类 143
7.1.1 PIC汇编语言的指令格式 143
7.1.2 PIC汇编语言的指令分类 144
7.2寻址方式 147
7.2.1立即寻址 147
7.2.2直接寻址 147
7.2.3间接寻址 148
7.2.4位寻址 149
7.3指令功能 150
7.3.1字节操作指令 150
7.3.2位操作指令 157
7.3.3立即数操作与控制操作指令 159
7.4伪指令 164
第8章 嵌入式应用实例——无线通信控制 166
8.1红外接收控制 166
8.1.1红外遥控原理 166
8.1.2红外发射器件 167
8.1.3红外接收硬件电路 171
8.1.4程序设计 173
8.2无线芯片控制 186
8.2.1无线通信基础 187
8.2.2无线芯片nRF24L0 1 189
8.2.3控制电路 204
8.2.4程序设计 205
第9章 嵌入式应用实例——显示控制 217
9.1数码管显示控制 217
9.1.1数码管工作原理 217
9.1.2控制电路 218
9.1.3程序设计 220
9.2液晶显示控制 230
9.2.1液晶显示模块 230
9.2.2控制电路 234
9.2.3程序设计 235
参考文献 245