王朝百科
分享
 
 
 

PIC单片机常用模块与综合系统设计实例精讲

王朝百科·作者佚名  2010-06-15  
宽屏版  字体: |||超大  

PIC单片机常用模块与综合系统设计实例精讲

图书信息作者:夏彬彬,任明全,屈金学 编著

出 版 社: 电子工业出版社

出版时间: 2009-3-1

页数:340页

开本: 16开

ISBN 9787121079962

分类: 图书>> 计算机>> PIC单片机

定价:¥45.00元(含光盘1张)

内 容 简 介全书从实用的角度出发,通过大量实例详细介绍了PIC单片机常用模块与综合系统设计的方法与技巧。全书共分3篇18章,第一篇为基础知识篇,简要介绍了PIC单片机的硬件结构、中断系统、指令系统和PIC开发工具,引导读者入门;第二篇为PIC单片机常用模块设计篇,通过18个模块实例详细介绍了PIC单片机的各种开发技术和使用技巧,这些模块实例基础、实用、易学易懂,全部调试通过,几乎涵盖了PIC单片机所有的开发技术;第三篇为综合系统设计实例篇,通过3个综合系统实例,对前面所述的PIC单片机常用模块进行了综合应用设计,经过此篇学习,读者的PIC单片机综合系统设计能力将迅速提升,并可产生质的飞跃。

本书语言通俗易懂,结构合理,基础知识与大量实例相结合,边学边练。不但详细介绍了PIC单片机的硬件电路设计和模块化编程,而且提供了综合系统设计思路,对实例的所有程序代码做了详细注释,有利于读者理解和巩固知识点。

本书配有光盘一张,包含了全书所有实例的硬件原理图和程序源代码,方便读者学习和使用。本书适合计算机、自动化、电子及硬件等相关专业的高校学生及从事PIC单片机的科研人员使用。

前 言PIC单片机应用十分广泛,它由美国Microchip公司生产,具有硬件系统设计便捷、指令系统设计精练、采用精简指令集和哈佛双总线结构,拥有速度高、功率低、驱动电流大、控制能力强等优点,能满足各种用户的需要,因此受到广大用户欢迎,同时也是比较容易学习、开发效率较高的单片机系列。

在目前市场上PIC单片机类的图书中,介绍编程语言和基础原理的较多,而对常用模块的开发实例涉及甚少,从常用模块到综合应用系统的实例提高更是处于空白,本书的出版可以填补这种空白。

本书内容

全书从实用的角度出发,通过大量实例精讲的形式,详细介绍了PIC单片机常用模块与综合系统设计的方法与技巧。全书共分3篇18章,主要内容安排如下:

第一篇为基础知识篇,包括第1~4章,简要介绍了PIC单片机的硬件内部结构、CPU特色、中断系统、指令系统及PIC常用开发工具,引导读者入门。

第二篇为PIC单片机常用模块设计篇,包括第5~15章,通过18个模块实例详细介绍了PIC单片机的各种开发技术和使用技巧,这些模块实例基础、实用、易学易懂,全部调试通过,几乎涵盖了PIC单片机所有的开发技术。

第三篇为综合系统设计实例篇,包括第16~18章,通过3个综合系统实例,对前面介绍的PIC单片机常用模块进行了综合应用设计,经过此篇学习,读者对于PIC单片机综合系统设计的能力将迅速提升,并可产生质的飞跃。

光盘说明

本书配有光盘一张,包含了全书所有实例的硬件原理图和程序源代码,方便读者学习和使用。本书适合计算机、自动化、电子及硬件等相关专业的高校学生以及从事PIC单片机的科研人员使用。

本书特色

归纳起来,本书主要具备以下特色:

(1)本书语言通俗,结构合理,内容丰富,由简到难,基础知识与大量实例相结合,可做到边学边练。

(2)本书安排了18个PIC单片机常用模块实例,这些实例基础、典型、实用、易学易懂,涵盖了几乎所有的PIC单片机开发技术,为读者提供了难得的学习途径。

(3)最后安排了3个综合系统实例,对PIC单片机的基本知识和常用模块进行了综合应用,有利于读者举一反三,实现从入门到精通的学习目的。

(4)本书不但详细介绍了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

第二篇 PIC常用模块设计实例篇

第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液晶显示模块:温度测量系统设计实例 97

6.1 实例说明 97

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 硬件电路设计 197

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转换电路 297

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

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
如何用java替换看不见的字符比如零宽空格​十六进制U+200B
 干货   2023-09-10
网页字号不能单数吗,网页字体大小为什么一般都是偶数
 干货   2023-09-06
java.lang.ArrayIndexOutOfBoundsException: 4096
 干货   2023-09-06
Noto Sans CJK SC字体下载地址
 干货   2023-08-30
window.navigator和navigator的区别是什么?
 干货   2023-08-23
js获取referer、useragent、浏览器语言
 干货   2023-08-23
oscache遇到404时会不会缓存?
 干货   2023-08-23
linux下用rm -rf *删除大量文件太慢怎么解决?
 干货   2023-08-08
刀郎新歌破世界纪录!
 娱乐   2023-08-01
js实现放大缩小页面
 干货   2023-07-31
生成式人工智能服务管理暂行办法
 百态   2023-07-31
英语学习:过去完成时The Past Perfect Tense举例说明
 干货   2023-07-31
Mysql常用sql命令语句整理
 干货   2023-07-30
科学家复活了46000年前的虫子
 探索   2023-07-29
英语学习:过去进行时The Past Continuous Tense举例说明
 干货   2023-07-28
meta name="applicable-device"告知页面适合哪种终端设备:PC端、移动端还是自适应
 干货   2023-07-28
只用css如何实现打字机特效?
 百态   2023-07-15
css怎么实现上下滚动
 干货   2023-06-28
canvas怎么画一个三角形?
 干货   2023-06-28
canvas怎么画一个椭圆形?
 干货   2023-06-28
canvas怎么画一个圆形?
 干货   2023-06-28
canvas怎么画一个正方形?
 干货   2023-06-28
中国河南省郑州市金水区蜘蛛爬虫ip大全
 干货   2023-06-22
javascript简易动态时间代码
 干货   2023-06-20
感谢员工的付出和激励的话怎么说?
 干货   2023-06-18
 
>>返回首页<<
 
 
 
静静地坐在废墟上,四周的荒凉一望无际,忽然觉得,凄凉也很美
© 2005- 王朝网络 版权所有