pic单片机特点_pic单片机硬件结构

第1章 PIC单片机概述 2

1.1 PIC单片机的特点 2

1.2 PIC单片机的系列产品 5

1.2.1 基本级PIC系列单片机 6

1.2.2 中级PIC系列单片机 6

1.2.3 高级PIC系列单片机 8

1.3 PIC16F87X单片机的硬件

1.3 结构 10

1.3.1 PIC16F87X的主要特色 10

1.3.2 PIC16F87X的内部结构 11

1.3.3 PIC16F87X的引脚功能 16

1.4 本章小结 21

第2章 PIC单片机的CPU和中断系统 22

2.1 PIC单片机的CPU 22

2.1.1 系统配置 22

2.1.2 振荡器配置 24

2.1.3 复位 26

2.1.4 中断 33

2.1.5 监视定时器WDT 33

2.1.6 睡眠模式 35

2.1.7 在线调试 37

2.1.8 程序代码保护 37

2.1.9 用户标识码 37

2.1.10 在线串行编程技术ICSP(In-Circuit Serial Programming) 37

2.2 中断系统 38

2.2.1 中断的基本概念 38

2.2.2 PIC16F87X的中断源及中断逻辑 39

2.2.3 与中断相关的寄存器 44

2.2.4 CPU对中断的处理 48

2.3 本章小结 51

第3章 PIC单片机的指令系统 52

3.1 PIC汇编语言指令格式 53

3.2 PIC16F87X指令集 54

3.3 伪操作指令 60

3.4 寻址方式 64

3.5 本章小结 67

第4章 PIC单片机的开发工具 68

4.1 PIC系列单片机的仿真器 68

4.2 PIC系列单片机的编程器及开发套件 73

4.3 MPLAB-IDE 7.4版集成开发环境 77

4.3.1 MPLAB-IDE 7.4概述 77

4.3.2 MPLAB-IDE 7.4工程创建实例 80

4.3.3 几个常用的菜单项 83

4.4 本章小结 85 第5章 I/O输入输出模块 88

5.1 4?4扫描键盘设计实例 88

5.1.1 实例说明 88

5.1.2 键盘知识介绍 88

5.1.3 硬件电路设计 90

5.1.4 软件设计 90

5.1.5 实例总结 93

5.2 直接驱动LED显示 94

5.2.1 实例说明 94

5.2.2 LED数码管知识 94

5.2.3 硬件电路设计 94

5.2.4 软件设计 95

5.2.5 实例总结 96

第6章 LCD液晶显示模块:温度测量系统设计实例

6.1 实例说明

6.2 DS18B20与YMSC-G12864

6.2 IDYEWWD 98

6.2.1 温度传感器DS18B20 98

6.2.2 液晶显示屏YMSC-G12864I-DYEWWD 100

6.3 硬件电路设计 103

6.4 软件设计 105

6.4.1 温度传感器DS18B20的软件设计 105

6.4.2 液晶显示屏YMSC-G12864-IDYEWWD的软件设计 109

6.5 实例总结 116

第7章 定时器模块:用定时器控制端口输出实例 117

7.1 实例说明 117

7.2 定时器Timer0介绍 117

7.3 硬件电路设计 118

7.4 软件设计 119

7.5 实例总结 120

第8章 A/D模块:压力测量系统设计实例 121

8.1 实例说明 121

8.2 A/D转换相关知识 121

8.2.1 A/D转换的原理说明 121

8.2.2 单片机相关寄存器介绍 122

8.2.3 A/D转换操作对时间的要求 124

8.3 硬件电路设计 125

8.4 软件设计 125

8.4.1 程序设计流程 126

8.4.2 程序代码说明 126

8.5 实例总结 128

第9章 存储器模块:基于I2C对EEPROM 24C02的读写 129

9.1 实例说明 129

9.2 24C02与I2C接口介绍 129

9.2.1 24C02简介 129

9.2.2 PIC16F877 I2C接口简介 130

9.2.3 I2C总线规则 130

9.3 硬件电路设计 131

9.4 软件设计 132

9.5 实例总结 136

第10章 比较与检测模块 137

10.1 利用CCP模块控制继电器 137

10.1.1 实例说明 137

10.1.2 定时器TMR1介绍 137

10.1.3 硬件电路设计 139

10.1.4 软件设计 140

10.1.5 实例总结 141

10.2 脉冲频率的检测设计 141

10.2.1 实例说明 141

10.2.2 定时器TMR2介绍 141

10.2.3 硬件电路设计 142

10.2.4 软件设计 143

10.2.5 实例总结 144

10.3 电压测量模块 144

10.3.1 实例介绍 144

10.3.2 硬件电路设计 145

10.3.3 软件设计 145

10.3.4 实例总结 147

第11章 步进电机模块 148

11.1 实例说明 148

11.2 步进电机驱动工作原理 148

11.3 硬件电路设计 149

11.4 软件设计 150

11.4.1 软件设计流程 151

11.4.2 程序代码说明 152

11.5 实例总结 153

第12章 信号发生模块 154

12.1 PWM实现DA转换 154

12.1.1 实例说明 154

12.1.2 PWM模块架构 155

12.1.3 硬件电路设计 156

12.1.4 软件设计程序 157

12.1.5 实例总结 158

12.2 正弦波发生器 158

12.2.1 实例说明 158

12.2.2 TLC5620介绍 158

12.2.3 硬件电路设计 160

12.2.4 软件程序设计 160

12.2.5 实例总结 162

第13章 数字PID控制模块 163

13.1 PID控制概述 163

13.2 位置式PID控制算法 164

13.3 增量式PID控制算法 165

13.3.1 增量式控制算法流程 166

13.3.2 数字PID控制算法的改进 167

13.4 数字PID控制算法代码 168

13.5 实例总结 170

第14章 直流数控稳压电源模块 171

14.1 实例说明 171

14.2 设计思路分析 171

14.2.1 D/A转换器DAC0832 172

14.2.2 步进0.1V实现 172

14.3 硬件电路设计 172

14.3.1 模数转换电路 172

14.3.2 电流放大电路 173

14.3.3 人机接口电路 173

14.3.4 稳压电源电路 174

14.4 软件设计 174

14.4.1 程序设计流程 174

14.4.2 程序代码说明 174

14.5 实例总结 177

第15章 网络通信与数据传输模块 178

15.1 USART串行通信模块实例 178

15.1.1 实例说明 178

15.1.2 打印机并口介绍 178

15.1.3 硬件电路设计 180

15.1.4 软件设计 181

15.1.5 实例总结 182

15.2 I2C总线通信模块实例 182

15.2.1 实例说明 182

15.2.2 I2C总线介绍 183

15.2.3 硬件电路设计 187

15.2.4 软件设计 188

15.2.5 实例总结 195

15.3 SPI总线通信模块实例 195

15.3.1 实例说明 195

15.3.2 SPI模块相关的寄存器 195

15.3.3 硬件电路设计 1

15.3.4 软件设计 198

15.3.5 实例总结 200

15.4 通信模块:CAN总线模块实例 200

15.4.1 实例说明 201

15.4.2 设计思路分析 202

15.4.3 硬件电路设计 206

15.4.4 软件程序设计 207

15.4.5 实例总结 212

15.5 通信模块:USB数据传输模块实例 212

15.5.1 实例说明 212

15.5.2 设计思路分析 213

15.5.3 硬件电路设计 219

15.5.4 USB固件程序设计 220

15.5.5 实例总结 225 第16章 智能手电筒开发实例 228

16.1 系统功能说明 228

16.2 系统工作原理与实现方法 229

16.2.1 系统的供电 229

16.2.2 灯珠和LED点亮或熄灭的实现 229

16.2.3 按键扫描电路和A/D转换电路图原理 230

16.2.4 数据的显示 231

16.2.5 蜂鸣器驱动和背光源驱动 235

16.2.6 电池的自动充电实现 236

16.3 软件设计与代码分析 237

16.3.1 软件设计 237

16.3.2 主程序 239

16.3.3 中断子程序 244

16.3.4 时钟处理子程序 245

16.3.5 2ms到处理子程序 247

16.3.6 A/D中断子程序 252

16.4 实例总结 255

第17章 汽车应急启动器系统开发实例 257

17.1 系统功能说明 257

17.2 系统硬件框图 258

17.3 系统各模块工作原理与实现方法 259

17.3.1 系统电源部分 259

17.3.2 蜂鸣器驱动与系统检测按键扫描电路 259

17.3.3 灯管驱动与灯管按键扫描电路 260

17.3.4 发光二极管驱动与内部电池电压按键扫描电路 261

17.3.5 液晶显示器(LCD)驱动电路 261

17.3.6 内部电池与外部电池连接正确与否检测电路 264

17.3.7 应急启动控制电路 264

17.3.8 轮胎压力检测电路 265

17.3.9 轮胎气泵启动控制与轮胎

17.3.9 充气按键扫描电路 267

17.3.10 加键与减键扫描电路 268

17.3.11 外部电池检测按键扫描电路 269

17.3.12 电池电压检测与电池充电电路 269

17.4 软件设计与代码分析 270

17.4.1 主程序 271

17.4.2 气泵处理程序 280

17.4.3 灯管处理程序 280

17.4.4 外部电池检测程序 282

17.4.5 系统检测程序 283

17.4.6 时钟中断程序 284

17.4.7 内部电池充电程序 288

17.5 实例总结 289

第18章 无功功率补偿控制器设计实例 290

18.1 系统功能说明 290

18.2 系统硬件框图 292

18.3 系统各模块工作原理与实现方法 292

18.3.1 系统的供电 292

18.3.2 按键扫描电路 293

18.3.3 电流和电压相位差检测电路 294

18.3.4 电流和电压的A/D转换电路 2

18.3.5 八段数码管和LED指示灯电路 298

18.3.6 十路电力电容驱动电路 298

18.3.7 EEPROM的驱动电路 300

18.4 软件设计与代码分析 301

18.4.1 初始化、欠流判断和开机按键扫描程序 301

18.4.2 检测电力电容容量程序 308

18.4.3 检测功率因数程序

18.4.3 (主程序) 310

18.4.4 参数设置程序 323

18.5 实例总结 325

按总线分有:8位机、16位机、32位机、64位机。

单片机的发展先后经历了4位、8位、16位和32位等阶段。8位单片机由于功能强,被广泛用于工业控制、智能接口、仪器仪表等各个领域,8位单片机在中、小规模应用场合仍占主流地位,代表了单片机的发展方向,在单片机应用领域发挥着越来越大的作用。

80年代初,Intel公司推出了8位的MCS-51系列的单片机。MCS-51单片机的逻辑部件,包括一个8位CPU及片内振荡器、 80514B掩膜ROM、87514KBEPROM、8031无ROM。

特殊功能寄存 器R128BRAM、定时器/计数器T0及T1、并行I/O接口:P0、P1、P2、P3;串行接口:TXD、RXD;中断系统:INT0,INT1。

扩展资料

硬件特征

1、单片机的体积比较小, 内部芯片作为计算机系统,其结构简单,但是功能完善,使用起来十分方便,可以模块化应用。

2、单片机有着较高的集成度,可靠性比较强,即使单片机处于长时间的工作也不会存在故障问题。

3、单片机在应用时低电压、低能耗,是人们在日常生活中的首要选择, 为生产与研发提供便利。

4、单片机对数据的处理能力和运算能力较强,可以在各种环境中应用,且有着较强的控制能力。

百度百科-单片机?