首页>参考读物>计算机科学与技术>综合

零基础学PIC单片机
作者 : 赵化启 闫广明 孙小君 等编著
出版日期 : 2010-08-06
ISBN : 978-7-111-30787-7
定价 : 66.00元
扩展资源下载
扩展信息
语种 : 简体中文
页数 : 528
开本 : 16
原书名 : PIC单片机从入门到精通 (视频实录)
原出版社:
属性分类: 店面
包含CD :
绝版 : 未绝版
图书简介

本书主要内容包括21章:PIC单片机概述、单片机开发流程、PIC单片机最小系统组成、PIC汇编语言及其开发环境使用、PIC单片机的C语言应用、PIC单片机内置模块的原理及应用、项目实例设计等。

图书特色

于入门读者,学习PIC单片机最有效的途径是什么?
第1步:宏观把握。选择一个合适的中档型号,了解PIC单片机的开发流程与开发工具(MPLAB+HI-TECH PICC+PROTEUS),并通过一个开发方案巩固这些基本工具的使用。
第2步:庖丁解牛。认真学习PIC单片机的体系结构、指令系统及C语言编程,并通过大量的小示例透析硬件与软件的开发。
第3步:更上层楼。学习PIC单片机的模块功能、接口技术、外围设备及控制系统设计。
第4步:学以致用。通过经过实际应用的经典工程案例,实战开发,借鉴移植。
    本书基于PIC16F87x,系统论述了PIC单片机的软件开发与硬件开发,本书具有以下鲜明特点:① 硬件底层以汇编指令为主,实例设计以C语言为主;② 涵盖PIC中档单片机的所有功能模块;③ 功能模块实例以规范化的C语言函数软件包形式给出,便于二次开发;④ 采用Proteus进行单片机及外围电路的仿真,实现了单片机学习的零成本硬件投入。

涵盖内容
n PIC单片机的开发流程与开发工具
n MPLAB+HI-TECH PICC+PROTEUS搭建开发环境
n PIC单片机最小系统
n PIC单片机硬件结构
n PIC单片机的指令系统
n MPASM汇编语言及其程序设计
n PIC单片机C语言
n 基于C语言的I/O控制
n 中断、定时器/计数器
n A/D转换器
n 通用同步/异步收发器USART
n SPI接口主从模式的数据收发
n I2C接口主从模式的数据收发
n 捕捉、比较、PWM模块

综合实例
n 电子计算器的设计
n 电子表的设计
n 电位器阻值测量仪的设计
n 高级串行通信协议的设计
n 25xxx系列EEPROM的读写
n 24xxx系列EEPROM的读写
n 方波发生器的设计
n 频率计的设计
n 基于PWM功能的D/A转换器设计
n LED点阵显示屏及其应用设计
n LCD液晶显示屏及其应用设计
n 基于DS18B20的多点温度监测系统
n 基于L297+L298的步进电机控制系统

图书前言

单片机,又称微控制器,是现代智能化产品设计中必不可少的核心元件,其应用领域也已经渗透到各行各业。世界上制造单片机的半导体厂家也从最初的以Intel公司和Motorola公司为主的几家逐渐发展到现在的几百家。
  在激烈的单片机市场竞争中,Microchip公司生产的PIC系列8位单片机以其优越的性能逐渐从以Intel公司51系列和Motorola公司68K系列占绝对主导地位的8位单片机市场中脱颖而出。从2003年起至今,其8位单片机的年出货量稳居全球排名榜首。这样的业绩是与PIC单片机自身的优良性能密不可分的。
  PIC单片机具有可靠性高、指令系统简洁、功耗低、驱动能力强、产品系列丰富等优点,能满足各种用户的需要,因此受到广大用户欢迎,市场占用率也一直领先,同时也是一款非常易于学习、掌握的单片机。
本书以PIC单片机中档型号PIC16F877为例全面地讲解单片机的基本原理、软硬件设计方法和单片机各种接口的使用方法。
  为了降低读者的入门成本,本书以免费的MPLAB和HI-TECH PICC Lite作为软件开发平台,以Proteus作为硬件电路开发平台,为学习者搭建了一个完美的单片机开发环境。本书还配有关键操作过程的全程视频,使读者可以轻松搭建开发环境、迅速入门。在学习完本书之后,相信读者能够全面地掌握单片机原理及其应用设计,并可以使用PIC单片机进行实际项目的开发。
本书特点
  本书主要有以下特点。
  1.循序渐进,由浅入深
  为了方便读者学习,本书站在开发者的角度组织章节顺序。首先讲解开发流程、开发环境建立、最小系统硬件电路搭建;然后讲解汇编语言、C语言和各种接口的使用;最后给出了几个实际项目的核心部分例子,使读者按认知顺序完成从入门到精通的过程。
  2.技术全面,内容充实
  本书所讲的内容在保证实用的前提下,详细介绍了PIC单片机每种接口的原理、软硬件设计方法,并都采用标准的模块化源代码给出可以实际运行的例子,使读者学完之后可以直接应用到项目实践中。
  3.C语言为主,汇编语言为辅
  当前的实际开发中,大多数项目都是用C语言完成。所以本书的绝大部分代码都是用C语言编写。考虑到有很多读者有汇编语言基础但没有学习过C语言,所以本书前面章节仍然详细介绍了PIC的汇编语言及其程序设计。从第9章开始讲解C语言在单片机中的应用,便于无C语言基础的读者学习、掌握。
  4.硬件设计,软件模拟
  本书以Proteus ISIS软件为硬件模拟平台,为读者提供了一个完整的硬件电路设计、电路板制作和硬件电路模拟平台。使初学者在无任何单片机硬件调试或烧写设备的条件下,可完成单片机硬件电路的学习和设计。书中所有实例均有对应的Proteus ISIS用硬件电路图,均调试完毕,能正常运行。
  5.视频精短,重点突出
  常见的视频讲解往往是从头到尾的课堂讲解,使最终的视频录像达到几张DVD光盘之多。不便于随身携带、随时学习。本书的视频内容仅把关键的步骤和初学者容易出错的步骤进行高质量录制并配合清晰的语音讲解。
  6.代码规范,实用性强
  书中的每个知识点都有相应的实例代码和电路图,并在书中明确地标出了在光盘中的路径。对绝大部分代码进行了注释说明。每段代码的后面都有详细的运行结果,读者可以参照运行结果阅读源程序,以便于加深理解。在代码结构上采用了标准的C语言项目开发规范进行组织,并把标准接口功能进行了模块化封装,可以直接应用于实际项目。
  7.功能分开,讲解清晰
  本书在讲解每个知识点(功能模块)时,并不是按照数据手册的顺序来罗列的,而是采用单一功能模块介绍的方法(例如,把USART通信就分为两节:发送器和接收器),每一模块仅介绍相关的原理、寄存器、硬件电路连接和编程实例。这样能让读者明确知道使用某个模块该涉及哪些寄存器和硬件电路。每个功能模块的讲解都配合一个或几个简单的实例和硬件模拟用电路图,可以使读者在看完之后就能知道哪些功能应该应用在哪些场合。
主要内容
  本书分为4篇,共21章。各章的主要内容如下。
  第一篇 开发基础
  第1章:主要讲解了单片机的由来和发展现状。介绍了什么是单片机系统、单片机的应用领域、常用单片机厂家,并以PIC系列单片机为例讲解了单片机的特点、单片机的型号选择和基本功能。
  第2章:按照单片机项目开发的一般流程,以PIC单片机开发为例,通过大量的图示细致地讲解了软件开发环境MPLAB的建立和基本使用方法、HI-TECH PICC编译器的安装和使用方法、在MPLAB中使用Proteus ISIS调试的一般流程、硬件调试器MPLAB ICD2的安装和使用方法。
  第二篇 结构与编程
  第3章:介绍了单片机系统及其组成,并详细地讲解了PIC单片机最小系统的组成,包括电源电路的设计、时钟电路、复位电路和调试接口的设计。
  第4章:先从PIC单片机的基本结构入手来分析PIC单片机的优点,包括其中央处理器结构和存储器结构。然后又依次剖析了其专用功能模块的特点。
  第5章:以PIC的8位系列单片机中档产品PIC16F877的汇编指令集为例,主要讲解PIC指令集的特点、分类,并通过简单的例子给出各个指令的使用方法。
  第6章:重点讲解MPASM的汇编语言格式、常用汇编伪指令用法,并通过简单的例子给出各个伪指令的使用方法。然后讲解PIC16F877的寻址方式和编程案例。通过列举判断分支、循环、延时等常用子程序讲解子程序的设计方法。最后给出了一个中文版的PIC系列单片机汇编语言模板。
  第7章:讲解了PIC16F877的GPIO用作输出时的控制原理和编程方法。并通过对延时子程序、查表子程序的使用来加深读者对汇编程序的理解。
  第8章:主要讲解开关量信号的读取,介绍了PIC16F877的输入、输出端口用作输入方式的原理、使用方法、注意事项。并通过对单按键判断、多按键判断、4×4矩阵键盘扫描等实际编程例子的讲解逐步加深读者对输入端口的理解。
  第9章:主要讲解C语言开发环境的建立,C语言的常量、变量、运算符、控制语句、数组、函数、预处理和C语言编程规范等内容。
  第10章:深入地讲解了PIC16F877的I/O口的扩展方法,包括输出扩展和输入扩展,以及I/O复用。通过编程实例讲解了它们的使用方法。
  第三篇 模块功能
  第11章:宏观介绍了PIC单片机中断系统,并通过处理一个简单的硬件电平中断的过程来讲解中断系统的功能和使用方法。
  第12章:系统地讲解了PIC16F877的内置定时/计数器0的用途特点、结构、软硬件设计,通过实例编程讲解了它们的使用方法。
  第13章:讲解了PIC16F877内置模数转换器(ADC)的系统结构、使用方法和编程步骤,并讲解了多通道A/D转换、软件滤波和A/D转换中的几个细节问题。
  第14章:讲解PIC16F877的内置USART的用途特点、系统结构、硬件连接方法和软件编程,并通过双机互联、与PC互联等多个实例讲解了每种具体功能的编程方法。
  第15章:通过分解式的方法讲解了PIC16F877的SPI接口模块的用途特点、系统结构和软硬件设计,通过双机通信、外置EEPROM读写等实例分别讲解了SPI模块主从模式数据收发的编程方法。
  第16章:介绍了I2C总线的概念、特点和协议,并通过PIC16F877内置的I2C模块讲解了I2C协议的使用方法。通过双机通信、外置EEPROM的读写讲解了其协议的实现方法。
  第17章:讲解了PIC16F877中的捕捉/比较/PWM模块的三个功能模式的系统结构、工作流程、硬件连接和软件编程,并通过实际例子给出在工程项目中的一般应用场合及其编程方法。
  第四篇 综合实例
  第18章:首先讲解了最简单的8×8LED点阵显示屏控制方法。然后介绍了采用74LS138和74HC595来简化系统设计的方法。最后给出多块8×8LED显示屏组成16×16LED显示屏的硬件原理和软件控制方法。本章还讲解了LED显示屏的滚屏效果实现。
  第19章:分别介绍了笔段式液晶、字符式液晶和图形点阵式液晶这三类液晶显示屏的特点、结构、控制时序和编程方法,并给出在Proteus ISIS软件中的控制电路图和编程实例。
  第20章:讲解了温度传感器DS18B20的控制原理、硬件连接、命令用法和软件编程。先讲解单DS18B20的使用方法,然后讲解一线总线上挂接多DS18B20的识别方法和控制方法。最后给出了一个实际项目的简化版本,其中给出了ROM搜索算法和快速CRC计算的实现。
  第21章:简单介绍步进电机的控制原理。通过一个具体的实例着重介绍如何使用单片机控制L298和L297来驱动步进电机。
读者对象
  PIC单片机初学者
  单片机工程师、嵌入式工程师、硬件电路工程师
  高等院校电子信息工程、自动化、电气工程等相关专业师生
本书光盘
  书中全部实例文件
  开发过程录像文件
  常用芯片及元器件
  常用学习交流网址
  本书主要由赵化启、闫广明、孙小君、张波和李国晶编著。其中第1~8章由赵化启编著,第9~11章由闫广明编著,第12章、第13章由李国晶编著,第14~17章由孙小君编著,第18~21章由张波编著,全书由赵化启统稿。其他参与编著和资料整理的人员有宋一兵、管殿柱、赵景波、付本国、张轩、赵景伟、赵秋玲、张忠林、王献红、王臣业、张洪信、初航、程联军、刘海波、陈立伟等,在此对他们的辛勤工作表示感谢!
  衷心希望本书的出版能够为广大的单片机开发人员提供参考,能够为广大的电子爱好者学习PIC单片机技术提供帮助。
  感谢您选择了本书,希望我们的努力对您的工作和学习有所帮助。限于编者的水平有限,书中难免会存在错误,恳请读者批评指正。也希望您把对本书的意见和建议告诉我们。
  作者联系方式:gdz_zero@126.com
  编辑联系方式:sdl@hzbook.com

作 者
2010年6月

上架指导

电子与电气工程

作者简介

赵化启 闫广明 孙小君 等编著:暂无简介

图书目录

前言
第一篇 开发基础1
第1章 单片机简介1  
1.1 常用的单片机1  
1.2 PIC单片机2
   1.2.1 PIC单片机的种类3
   1.2.2 PIC16F877的功能特性3
  1.3 实践拓展:8位PIC单片机有哪些型号4
第2章 PIC单片机的开发流程及开发环境7
  2.1 单片机的开发流程7
  2.2 软件开发平台的安装8
   2.2.1 MPLAB集成开发环境的安装8
   2.2.2 测试汇编语言开发环境10
   2.2.3 C语言编译器HI-TECH PICC的安装11
  2.3 硬件开发平台的安装12
   2.3.1 Proteus ISIS软件的安装与测试12
   2.3.2 ICD2+开发板的硬件开发平台的安装14
   2.3.3 基于ICD2的硬件开发平台的测试16
  2.4 单片机项目的建立19
   2.4.1 汇编语言项目的建立19
   2.4.2 C语言项目的建立24
   2.4.3 目标代码的生成与排错26
  2.5 程序的烧写和调试运行27
   2.5.1 基于ISIS的目标代码烧写和调试27
   2.5.2 基于ICD2的目标代码烧写和调试28
   2.5.3 基于Proteus VSM MPLAB Viewer的目标代码调试30
  2.6 实践拓展:ICD2无法正常工作怎么办31
第二篇 结构与编程33
第3章 PIC单片机最小系统33
  3.1 单片机系统的组成33
  3.2 PIC单片机最小系统的组成34
   3.2.1 电源电路34
   3.2.2 时钟电路35
   3.2.3 复位电路37
   3.2.4 在线编程调试接口38
  3.3 实践拓展:设计单片机电路板需要遵守哪些原则39
第4章 PIC单片机的系统结构40
  4.1 PIC单片机的基本结构40
   4.1.1 基本功能模块41
   4.1.2 专用功能模块45
  4.2 PIC单片机的特点46
  4.3 实践拓展:如何选择合适的单片机49
第5章 PIC单片机的汇编指令51
  5.1 PIC的RISC指令集51
  5.2 字节操作指令53
  5.3 位操作指令61
  5.4 立即数操作指令62
  5.5 转移控制类指令64
  5.6 特别功能指令66
  5.7 实践拓展:CISC与RISC有何不同67
第6章 MPASM汇编语言及其程序设计68
  6.1 MPASM汇编语言68
   6.1.1 MPASM的语法68
   6.1.2 MPASM的伪指令69
   6.1.3 MPASM的运算符76
   6.1.4 MPASM的内置宏指令78
  6.2 寻址模式81
   6.2.1 文件寄存器直接寻址与BANK的使用81
   6.2.2 文件寄存器间接寻址84
   6.2.3 程序的直接跳转与PAGE的使用86
   6.2.4 程序的间接跳转88
  6.3 MPASM汇编常用子程序设计90
   6.3.1 判断分支程序90
   6.3.2 循环程序91
   6.3.3 延时子程序92
   6.3.4 查表子程序94
  6.4 汇编语言程序模板97
  6.5 实践拓展:如何编程可以减少程序的bug98
第7章 通用端口的输出控制99
  7.1 PIC16F877的输出端口99
   7.1.1 输出端口的工作原理100
   7.1.2 输出端口的相关寄存器100
   7.1.3 端口的输出驱动能力101
   7.1.4 I/O口的设定方法102
   7.1.5 PORTA的用法103
  7.2 输出控制应用104
   7.2.1 实例:LED的实用控制程序设计104
   7.2.2 实例:单个七段数码管的静态控制与动态控制111
  7.3 实践拓展:如何提高系统的抗干扰能力117
第8章 通用端口的输入测量120
  8.1 PIC16F877的输入端口120
   8.1.1 输入端口的工作原理120
   8.1.2 输入端口的相关寄存器121
   8.1.3 端口的“读—修改—写”问题121
   8.1.4 端口的高压静电保护122
  8.2 按键状态的识别123
  8.3 矩阵式键盘的读取128
   8.3.1 4×4矩阵式键盘的工作原理128
   8.3.2 实例:基于扫描法的矩阵式键盘读取129
  8.4 实践拓展:如何正确使用上拉电阻与下拉电阻136
第9章 PIC单片机的C语言程序设计138
  9.1 实例:第一个单片机C语言程序138
  9.2 单片机C语言的数据类型142
   9.2.1 常量和变量143
   9.2.2 字符型数据145
   9.2.3 整型数据147
   9.2.4 浮点型数据149
   9.2.5 位型数据150
   9.2.6 变量的命名规则151
   9.2.7 变量赋初值152
  9.3 C语言的运算符152
   9.3.1 算术运算符153
   9.3.2 位运算符154
   9.3.3 赋值运算符158
   9.3.4 关系运算符159
   9.3.5 逻辑运算符160
  9.4 C语言的重要控制语句161
   9.4.1 选择结构161
   9.4.2 循环结构165
  9.5 数组168
   9.5.1 数组的定义与初始化169
   9.5.2 数组的使用170
   9.5.3 实例:用C语言控制数码管171
  9.6 函数174
   9.6.1 函数的声明和定义175
   9.6.2 局部变量和全局变量177
   9.6.3 数组作为函数的参数178
   9.6.4 实例:延时函数的设计179
  9.7 预处理命令与宏定义181
   9.7.1 不带参数的宏定义181
   9.7.2 带参数的宏定义182
   9.7.3 文件包含183
   9.7.4 条件编译183
  9.8 C语言编程规范185
   9.8.1 标识符命名185
   9.8.2 可读性186
   9.8.3 程序的排版187
   9.8.4 注释的书写方法189
  9.9 多文件项目管理191
   9.9.1 头文件的书写191
   9.9.2 源码文件的书写192
   9.9.3 模块文件添加到当前项目193
  9.10 实例:一位计数器的设计193
  9.11 实践拓展:PIC单片机C语言入门常见问题195
第10章 基于C语言的I/O控制197
  10.1 输出端口的C语言编程197
   10.1.1 走马灯控制197
   10.1.2 多数码管的显示控制198
  10.2 输入端口的编程203
   10.2.1 单个按键状态的读取203
   10.2.2 两个按键状态的读取205
  10.3 矩阵式键盘的读取方法207
   10.3.1 基于扫描法的矩阵式键盘读取207
   10.3.2 矩阵式键盘的模块化编程209
  10.4 实例:简单的电子计算器设计211
  10.5 实践拓展:如何使用去偶电容215
第三篇 模块功能217
第11章 中断系统217
  11.1 单片机中断的处理过程217
  11.2 PIC中断系统的硬件结构217
  11.3 中断的响应和处理219
  11.4 INT中断221
   11.4.1 INT中断的相关寄存器221
   11.4.2 INT中断的硬件连接222
   11.4.3 INT中断的汇编语言编程223
   11.4.4 PICC中断服务程序的编写224
  11.5 实例:用INT中断控制LED…225
  11.6 实践拓展:PIC单片机常见的中断问题有哪些226
第12章 定时/计数器228
  12.1 计数与定时的基本概念228
  12.2 PIC16F877的定时/计数器228
  12.3 TIMER0的用法229
   12.3.1 TIMER0的系统结构及相关寄存器229
   12.3.2 TIMER0的硬件连接231
   12.3.3 TIMER0的软件编程232
  12.4 TIMER0的应用237
   12.4.1 实例:电子表设计237
   12.4.2 实例:脉冲宽度测量241
   12.4.3 实例:频率计设计245
   12.4.4 实例:方波发生器247
  12.5 看门狗251
   12.5.1 看门狗的系统结构251
   12.5.2 看门狗的硬件设置252
   12.5.3 看门狗的程序设计252
   12.5.4 看门狗的使用要点257
  12.6 实践拓展:如何校准PIC单片机内部RC振荡器257
第13章 A/D转换器259
  13.1 PIC16F877片内A/D转换器的结构与基本用法259
   13.1.1 A/D转换器的系统结构…259
   13.1.2 与A/D转换相关的寄存器261
   13.1.3 A/D转换器的硬件设计…262
   13.1.4 A/D转换器的查询方式操作时序与编程262
  13.2 实例:多通道A/D转换编程…265
  13.3 中断模式下的A/D转换267
   13.3.1 中断模式下A/D转换器涉及的寄存器268
   13.3.2 中断模式下A/D转换器编程268
  13.4 实例:电位器阻值测量270
   13.4.1 电位器阻值测量仪设计…271
   13.4.2 A/D转换的软件滤波…274
   13.4.3 上下限报警278
   13.4.4 休眠模式的A/D转换…281
  13.5 A/D转换参数计算283
   13.5.1 转换精度284
   13.5.2 采样时间要求284
   13.5.3 转换时间要求285
  13.6 实践拓展:常见的A/D转换器件有哪些285
第14章 通用同步/异步收发器USART287
  14.1 串行通信与并行通信的基本概念287
   14.1.1 通信协议287
   14.1.2 数据传送方式288
   14.1.3 波特率289
   14.1.4 串行通信的检错和纠错…289
  14.2 PIC单片机的USART模块…289
   14.2.1 USART的功能特点289
   14.2.2 USART发送器的系统结构290
   14.2.3 USART发送器的相关寄存器292
   14.2.4 实例:USART异步模式下发送数据294
   14.2.5 USART接收器的系统结构297
   14.2.6 USART接收器的相关寄存器298
   14.2.7 实例:USART异步模式下接收数据300
   14.2.8 实例:USART异步接收方式的出错分析304
  14.3 USART的外围硬件电路设计306
  14.4 高级串行通信协议的设计308
   14.4.1 实例:单向数据通信协议的设计309
   14.4.2 带应答的数据通信协议…314
  14.5 实践拓展:什么是RS-485/EIA-485314
第15章 SPI接口316
  15.1 SPI模块的功能及系统结构…316
  15.2 主控发送模式317
   15.2.1 主控发送模式的工作流程317
   15.2.2 主控发送模式的相关寄存器318
   15.2.3 主控发送模式的硬件连接319
   15.2.4 实例:主控发送模式的程序设计319
  15.3 从动接收模式321
   15.3.1 从动接收模式的工作流程322
   15.3.2 从动接收模式的相关寄存器322
   15.3.3 从动接收模式的硬件连接324
   15.3.4 实例:从动接收模式的程序设计325
  15.4 主控接收与从动发送328
   15.4.1 主控接收模式的工作流程328
   15.4.2 主控接收模式的相关寄存器329
   15.4.3 从动发送模式的工作流程331
   15.4.4 主控接收和从动发送模式下的硬件连接331
   15.4.5 实例:双机通信的程序设计332
  15.5 25xxx系列EEPROM的读写…336
   15.5.1 25C160的功能特点…336
   15.5.2 25C160的系统结构与工作流程337
   15.5.3 25C160的硬件连接339
   15.5.4 实例:25C160的程序设计340
  15.6 实践拓展:常用SPI接口芯片有哪些345
第16章 I2C接口346
  16.1 I2C的功能特点346
   16.1.1 I2C的电气连接346
   16.1.2 I2C协议简介347
   16.1.3 PIC16F877的I2C模块…349
  16.2 I2C主模式数据发送349
   16.2.1 I2C主模式系统结构与数据发送流程350
   16.2.2 I2C主模式发送过程相关寄存器352
   16.2.3 I2C模块的硬件连接353
   16.2.4 实例:I2C的主模式数据发送程序设计354
  16.3 I2C主模式数据接收357
   16.3.1 I2C主模式数据接收流程357
   16.3.2 I2C主模式接收过程相关寄存器359
   16.3.3 实例:I2C的主模式数据接收程序设计360
  16.4 I2C主模式的复合数据帧364
  16.5 I2C接口EEPROM的读写实例364
   16.5.1 24C02C功能简介364
   16.5.2 24C02C的系统结构与读写帧格式365
   16.5.3 24C02C的硬件连接366
   16.5.4 实例:读写24C02C的程序设计367
  16.6 I2C从模式的数据接收和发送373
   16.6.1 I2C从模式系统结构和数据接收流程373
   16.6.2 I2C从模式相关寄存器…374
   16.6.3 实例:I2C从模式数据接收376
   16.6.4 实例:I2C从模式数据发送379
  16.7 实践拓展:SPI、I2C、USART有何区别381
第17章 CCP模块382
  17.1 CCP模块的基本概念382
  17.2 CCP1的捕捉模式382
   17.2.1 CCP1捕捉模式的系统结构和工作过程383
   17.2.2 CCP1捕捉模式下的相关寄存器384
   17.2.3 实例:基于捕捉功能的频率计设计385
  17.3 CCP1的比较模式390
   17.3.1 CCP1比较模式的系统结构和工作过程390
   17.3.2 CCP1比较模式下的相关寄存器391
   17.3.3 实例:基于比较功能的方波发生器设计391
  17.4 CCP1的PWM模式394
   17.4.1 CCP1的PWM模式的系统结构和工作过程394
   17.4.2 CCP1的PWM模式下的相关寄存器394
   17.4.3 PWM的周期与占空比…395
   17.4.4 实例:基于PWM功能的方波发生器设计396
   17.4.5 实例:基于PWM功能的D/A转换器设计399
  17.5 CCP2模块402
  17.6 实践拓展:什么是SPWM…402
第四篇 综合实例403
第18章 LED点阵显示屏及其应用403
  18.1 8×8LED显示屏显示原理及编程403
  18.2 改进的8×8LED显示屏原理及编程406
  18.3 16×16LED显示屏显示原理及编程410
  18.4 基于第三方软件的汉字字模生成414
  18.5 LED点阵显示屏的动态显示416
  18.6 基于硬件字库的汉字显示420
  18.7 实践拓展:字模III软件有什么特色功能425
第19章 液晶显示屏的使用427
  19.1 笔段式液晶显示屏原理及编程427
   19.1.1 VIM-332-DP的显示原理427
   19.1.2 VIM-332-DP的硬件连接428
   19.1.3 VIM-332-DP的软件编程429
  19.2 字符式液晶显示屏原理及编程433
   19.2.1 字符式液晶显示屏LM016L的特点434
   19.2.2 LM016L的系统结构与硬件连接434
   19.2.3 LM016L的指令集436
   19.2.4 LM016L的编程方法437
   19.2.5 LM016L的字符显示437
   19.2.6 LM016L的初始化438
   19.2.7 实例:基于LM016L的秒表显示设计439
  19.3 图形点阵式液晶显示屏原理及应用445
   19.3.1 HDG12864F-3的功能特点445
   19.3.2 HDG12864F-3的接口与硬件连接446
   19.3.3 HDG12864F-3的指令集447
   19.3.4 HDG12864F-3的编程方法448
   19.3.5 HDG12864F-3的数据显示450
   19.3.6 HDG12864F-3的初始化450
   19.3.7 HDG12864F-3的驱动程序设计451
   19.3.8 在图形点阵式液晶显示屏上显示图像和汉字457
  19.4 实践拓展:使用液晶显示屏时有哪些常见问题462
第20章 多点温度监测系统464
  20.1 DS18B20的结构与功能特点464
  20.2 DS18B20的操作命令及其应用465
   20.2.1 复位操作466
   20.2.2 写位操作467
   20.2.3 写字节操作467
   20.2.4 读位操作468
   20.2.5 读字节操作469
  20.3 DS18B20的命令列表469
  20.4 实例:单点温度测量470
  20.5 多点温度采集相关命令及编程481
   20.5.1 搜索ROM命令481
   20.5.2 读ROM命令485
   20.5.3 匹配ROM命令485
  20.6 实例:多点温度监测报警系统487
  20.7 实践拓展:常用一线总线芯片有哪些500
第21章 步进电机控制501
  21.1 步进电机的控制原理501
  21.2 步进电机的驱动系统502
   21.2.1 电机驱动芯片L298原理与应用502
   21.2.2 电机控制芯片L297原理与应用505
  21.3 实例:基于L297和L298的步进电机控制508
  21.4 实践拓展:步进电机使用中的常见问题有哪些512
参考文献514

教学资源推荐
作者: 郭晓平 朱鸣华 编著
作者: 姜志海 刘连鑫 王蕾 编著
作者: 赵绪辉
参考读物推荐
作者: 朱继辉 刘政 窦运涛 邱威 著 夏坤庄 审校
作者: 王辉耀 主编苗丹国 程 希 副主编