书籍详情
PIC单片机原理
作者:李学海编著
出版社:北京航空航天大学出版社
出版时间:2004-06-01
ISBN:9787810774536
定价:¥29.00
购买这本书可以去
内容简介
内容简介本套教材共分两册,即本书《PIC单片机原理》以及《PIC单片机实践》。以讲解很适合教育需求的PICl6F87X型号为主,并且适当兼顾PIC全系列的共性。本书共分16章,内容包括:硬件架构、指令系统、汇编程序基础,以及各个片内模块的结构原理和操作方法。突出特点:语言流畅,内容细致,循序渐进,系统全面,习题齐全,学用并重,学练分明。本套教材是在《PIC单片机实用教程一基础篇》和((PIC单片机实用教程一—提高篇》的基础上,再根据面授教学中积累的许多成功经验,通过精心推敲讲解顺序和精选教学内容后,经过一系列调整、重组、压缩、改编和完善而成的。主要目的是更好地适应当前原理课和实践课分设的教学模式。本套教材适合用作高校相关专业专科、本科或研究生的教材或参考书,也可做为科研和生产技术人员的培训用书。前言微芯(Microchip)公司在199年仅排名世界第2位,经过1余年的积极拓展,其8位单片机的业绩节节攀升。据市场研究公司GartnerDataquest于23年6月公布的“22年单片机市场份额和单位出货量”报告,微芯公司8位机已跃居全球第一,占到全球市场份额的16.1%。来自信息产业部的数据表明,22年我国电子制造业的销售额上升了17.8%,达169亿美元。预计23年仍将保持上年的增长幅度,达到198亿美元。因此,尽管全球电子行业尚未走出低谷,但微芯公司在华的营收连续3年实现平均两位数的增长。曾于2年应邀为该公司的“中国大学计划”撰写的一套教学用书《PIC单片机实用教程——基础篇》[1]和《PIC单片机实用教程——提高篇》[2],在发行后一年多的时间里就进行了3次重印。曾先后被山东建工学院、西北师范大学、四川师范大学、辽宁工学院、北京计科能源新技术公司等多家教学和研发单位选定为教学用书和培训教材,受到了许多师生和技术人员的肯定和好评。例如,山东建工学院的于复生博士来函说:对于《PIC单片机实用教程——基础篇》大家反映很好,都说老师选了一本好教材,下半年我们的“单片机综合技术”课选用的是《PIC单片机实用教程——提高篇》。从许多反馈信息中可以看出,许多读者认为该套教程给他们留下的深刻印象是:通俗易懂,实用性强,配套性好,上手轻松,书中提及的软件环境和硬件工具都廉价易得,特别适合广大单片机初学者作为入门教材和自学读本。但是,对于教师确定授课教材时,若只选用基础篇好像内容不够用,若两册都选则63.5元的总价格确实贵了点。为了尽量与国内常见的成套教材编写方式靠拢,也为了更好地适应目前教师的教科书选择观念、价格期望值、授课习惯等诸多因素,决定对原来的基础篇和提高篇进行一系列的重组和改编、压缩和完善、调整和优化,仍以两册出版,定名为《PIC单片机原理》和《PIC单片机实践》。其主要编写思路是把原理教学和实践演练独立成册,作为教师可以购买两册,而作为学生可以只选购原理部分。虽然原理和实践两册相对独立,学练分明,适合于现今的原理课和实践课分设的教学模式,但是在章节编排上两册之间存在着对应关系。改编之后的教程仍然保持着原有的突出特点:语言流畅,内容细致,可读性强,通俗易懂,系统全面,习题齐全,学用并重。本教程在写作手法上,力求循序渐进,通俗易懂,趣味性强,将枯燥乏味的学习过程变得更加轻松有趣,力图引导读者享受到学习单片机的乐趣,在学习和实践过程中更多地品味成功,而尽量避免遭受挫折。尽可能使读者在通过阅读本教程学习PIC单片机的过程中,花费尽可能少的时间和精力,掌握和了解尽可能全面的单片机理论知识和开发技术。采用以读者认知规律和知识需求为中心的写作手法,来努力克服以产品手册为中心,或以作者知识结构为中心的传统写作模式给读者所带来的种种困惑。本教程的编写思路是,充分发挥作者在为《电子世界》、《电子制作》和《无线电》等科技期刊撰写单片机技术连载讲座中,以及在面授教学过程中积累的现成经验;再通过精心编排讲述顺序和精选教学内容,来尽量减少对读者背景知识的要求,以便尽可能降低初学者通过了解PIC单片机而进入单片机世界的门槛。本教程的编写目标是,努力追求“从入门到提高、从知识到技能”平滑上升的学习效果。不仅能“给人以鱼”,而且更能“授人以渔”;不仅传授单片机知识,而且更注重教会开发方法和应用技巧;不仅可以提高理论水平,而且更侧重强化将所学知识转化为实际工作的能力。力图实现将每一位有志于迈进单片机王国的外行人,培养成既懂单片机知识,又能掌握基于单片机智能电子产品开发技术的内行人。本教程在内容安排上充分注意了先进性、层次性、可读性、系统性和完整性,力求覆盖从单片机理论学习到开发应用的各个阶段,所有必不可少的硬件和软件知识、开发环境和开发工具的使用方法与技巧。尽可能不需要翻阅其他书籍就可以学习到,从单片机入门到单片机开发制作的全程知识。书中讲出了其它同类书籍中没有讲出或者没有讲透的一些技术细节和背景知识。作者对于原文数据手册中的文字查错、图表查错进行了多处修正,还对多处欠缺的示意图进行了补充,以方便于教学和自学。对于一名初步具备电子技术和微机应用基础知识的初学者,成长为一位单片机应用工程师,所需要学习的核心知识主要有:单片机硬件系统、指令系统、汇编程序设计基础以及汇编器用法集成开发环境、仿真器及其用法、烧录器及其用法。这些内容在书中都有所涉及。本教程以详细讲解适合教育需求的PIC16F87X型号为主,并且适当兼顾PIC系列的共性和个性简介。以期使读者达到举一反三、触类旁通之功效。市场调查公司InStat/MDRd指出,21~26年全球单片机供货量将实现11.32%的增长率。单片机市场上超过一半的应用都集中在8位单片机上。据预测,全球8位单片机市场规模在未来5年内会翻一番,预计24年和26年8位单片机的销售额将分别达到5亿和56亿美元。MOTOROLA公司预计到21年平均每人每天接触到多达351片甚至更多的单片机。在PIC单片机的大家族中,论本领域或性能,PIC16F87X占据着中上等水平。有的初学者可能要问,既然PIC系列中还有更简单易学的型号,为何先给大家引见87X呢?理由是该型号具备容易上手的良好途径——在线调试功能和在线编程功能,及其廉价的配套学习和开发工具套件(MPLABICD)。借助于这项独特的能力和优势读者可以边学边练,学用结合,而且还不需要经济上付出太大的投入。MPLAB-ICD由微芯公司原创,在美国售价159美元,目前已授权国内多家代理商生产和销售,其售价仅为4元左右。这些代理商有福州高奇(www.goldenchip.com.cn)、福州贝能(www.mcusolution.com)、南京伟福(www.wavecn.com)、北京集万讯(www.jetson.com.cn)等。国家积极倡导的素质教育和创新工程,旨在提高受教育者的素质和培养将所学知识转化为生产力、创造力和经济效益的能力。作者认为,为了更好地适应发展潮流和就业需要,单片机的学习和应用,可以为电子、电信、电脑、电器、机电、电力、自动控制、仪器仪表以及相关领域的爱好者、从业者和在校生,提供一个容易激发学习热情和创作欲望的、可操作性很强的学习途径和实践平台。至今,许多老一辈的工程师、专家、教授当年都是无线电爱好者。如果说2世纪5年代起,无线电世界造就了几代电子英才,那么当今的单片机世界也必将会培育出更多的电子精英。在本教程的编著过程中,得到了微芯公司执行总监邱庚源先生,著名单片机教育专家北京航空航天大学何立民教授,北京航空航天大学出版社马广云博士,山东建筑工程学院于复生博士,石家庄经济学院计算机教研室左瑞欣女士,《今日电子》执行主编赵雪芹女士,《电子产品世界》执行总编王莹女士,上海科技教育出版社资深编辑薛同莉女士,天津科技教育出版社吉静女士,《无线电》资深编辑房桦女士,《电子制作》资深编辑赵维彬先生,计科能源新技术公司叶东嵘总工,信息产业部电子第六研究所李映锡高工,微芯公司应用工程师张明峰先生、廖珍爱先生、王作峰先生和卢园女士等专家学者们的大力支持和热情鼓励。除了提供最新资料和实验物品之外,还将他们在长期实践中积累的经验体会和开发技巧无私地奉献出来供广大读者分享。另外,为本书的编著工作尽力的还有张拥军、于复生、张波、孙群中、王国联、张秀芳、杨金祥、朱永芳、贡雪梅、任志刚、张自宾、韩家民、徐福成、周鹏、任胜利、赵鹏、池俭、胡素英、王树生、李学英、范俊海、石玉林、丁永再、孙桂良、李学峰、王友才、王友发、杨瑞琢、杜太琢、杜雪梅、李学静、张磊、王友起、王友永、李学凤、蔡永岗、蔡永泽、范淑玲、李青石、蒙洋、董丹、解帅、裴新华、杨琳、李晗羽、李子杨等等。在此一并深表诚挚的谢意!由于微芯公司不断推出新产品,可查阅的中文新资料尚不够丰富,需要撰写的内容不仅量大而且新颖,加之作者的水平有限,书中不妥之处在所难免,敬请广大读友不吝赐教。李学海24年1月1日
作者简介
暂缺《PIC单片机原理》作者简介
目录
第0章 概述
0.1 学习单片机意义何在1
0.2 单片机究竟是何物4
0.3 单片机到底有何用5
0.4 单片机有何特点6
0.5 PIC单片机有何优越之处7
0.6 PIC16F87X单片机有何特色12
思考题与练习题13
第1章 PIC16F87X硬件系统概况
1.1 PIC16F87X内部结构简介14
1.1.1 PIC16F87X的核心区17
1.1.2 PIC16F87X的外围区20
1.2 PIC16F87X封装形式和引脚功能21
1.3 程序存储器和堆栈26
1.4 RAM数据存储器(文件寄存器)27
1.4.1 通用寄存器32
1.4.2 特殊功能寄存器34
1.5 复位和时钟外接电路简介36
1.6 输入/输出端口的基本功能37
1.6.1 与输入/输出端口相关的2个寄存器38
1.6.2 输入/输出端口的基本结构38
1.6.3 基本输入/输出端口的工作原理40
思考题与练习题43
第2章 指令系统
2.1 指令时序45
2.2 指令系统概览46
2.3 面向字节操作类指令47
2.4 面向位操作类指令51
2.5 面向常数操作和控制操作类指令52
2.6 指令功能分类55
2.7 寻址方式56
2.7.1 立即寻址56
2.7.2 直接寻址57
2.7.3 间接寻址57
2.7.4 位寻址58
2.8 数据传递关系59
2.9 “内核—寄存器—外围模块”相互关系59
思考题与练习题60
第3章 汇编器和汇编程序设计基础
3.1 汇编器MPASMTM简介63
3.2 汇编语言的语句格式65
3.3 常用伪指令67
3.4 程序格式和程序流程图69
3.5 RAM数据存储器的体选寻址问题71
3.6 顺序程序结构73
3.7 分支程序结构75
3.8 循环程序结构77
3.9 子程序结构78
3.10 程序跨页跳转和跨页调用问题80
3.11 延时程序设计83
3.12 查表程序设计85
思考题与练习题88
第4章 定时器/计数器TMR0
4.1 定时器/计数器模块的基本用途90
4.2 PIC单片机中定时器/计数器TMR0模块的特性91
4.3 与定时器/计数器TMR0相关的寄存器92
4.4 定时器/计数器TMR0模块的电路结构和工作原理93
4.4.1 分频器95
4.4.2 TMR0累加计数寄存器96
思考题与练习题97
第5章 中断系统
5.1 中断的基本概念98
5.2 PIC16F87X的中断源100
5.3 PIC16F87X的中断硬件逻辑101
5.4 与中断相关的寄存器104
5.5 中断的处理109
5.5.1 中断的延时响应和延时处理问题109
5.5.2 中断的现场保护问题111
5.5.3 需要注意的问题114
5.6 端口RB电平变化中断116
5.6.1 端口RB的中断功能电路117
5.6.2 电路工作原理117
5.6.3 端口RB中断的处理方法118
5.7 外部中断的扩充方法123
5.7.1 用TMR0外部时钟源扩展法123
5.7.2 用RB端口扩展法124
思考题与练习题126
第6章 应用系统性能的优化设计
6.1 系统配置字以及特殊存储器单元127
6.1.1 系统配置字129
6.1.2 用户识别码ID131
6.1.3 器件识别码133
6.2 时钟系统133
6.2.1 外接晶体振荡器/陶瓷谐振器(LP/XT/HS)134
6.2.2 外接阻容器件(RC)135
6.2.3 引入外来时钟源(LP/XT/HS)136
6.3 复位系统136
6.3.1 几种不同的复位方式137
6.3.2 单片机内部的复位操作处理137
6.3.3 复位系统硬件逻辑141
6.3.4 内部上电延时复位(POR)功能144
6.3.5 外部上电延时复位电路145
6.3.6 外部人工复位开关电路148
6.3.7 内部掉电锁定复位(BOR)功能148
6.4 看门狗定时器WDT151
6.4.1 程序失控的回复152
6.4.2 WDT的电路结构154
6.4.3 WDT的工作原理155
6.4.4 WDT相关寄存器156
6.4.5 使用WDT的注意事项156
6.5 睡眠与唤醒157
6.5.1 睡眠状态的进入157
6.5.2 睡眠状态的唤醒158
思考题与练习题161
第7章 输入/输出端口的复合功能
7.1 与输入/输出端口相关的寄存器163
7.2 RA端口165
7.2.1 与RA端口相关的寄存器165
7.2.2 电路结构和工作原理166
7.2.3 编程方法167
7.3 RB端口168
7.3.1 与RB端口相关的寄存器168
7.3.2 电路结构和工作原理169
7.3.3 编程方法171
7.4 RC端口171
7.4.1 与RC端口相关的寄存器172
7.4.2 电路结构和工作原理172
7.4.3 编程方法174
7.5 RD端口175
7.5.1 与RD端口相关的寄存器175
7.5.2 电路结构和工作原理176
7.5.3 编程方法176
7.6 RE端口177
7.6.1 与RE端口相关的寄存器177
7.6.2 电路结构和工作原理178
7.6.3 编程方法178
7.7 PSP并行从动端口178
7.7.1 与PSP端口相关的寄存器179
7.7.2 电路结构和工作原理180
思考题与练习题182
第8章 EEPROM数据存储器和Flash程序存储器
8.1 背景知识184
8.1.1 通用型半导体存储器的种类和特点184
8.1.2 PIC单片机内部的程序存储器185
8.1.3 PIC单片机内部的EEPROM数据存储器186
8.1.4 PIC16F87X内部EEPROM和Flash的操作方法187
8.2 与EEPROM相关的寄存器190
8.3 片内EEPROM数据存储器结构和操作原理193
8.3.1 从EEPROM中读取数据194
8.3.2 向EEPROM中烧写数据194
8.4 与Flash相关的寄存器196
8.5 片内Flash程序存储器结构和操作原理199
8.5.1 读取Flash程序存储器199
8.5.2 烧写Flash程序存储器200
8.6 写操作的安全保障措施203
8.6.1 写入校验方法203
8.6.2 预防意外写操作的保障措施204
思考题与练习题204
第9章 定时器/计数器TMR1
9.1 定时器/计数器TMR1模块的特性207
9.2 与定时器/计数器TMR1模块相关的寄存器208
9.3 定时器/计数器TMR1模块的电路结构209
9.4 定时器/计数器TMR1模块的工作原理211
9.4.1 禁止TMR1工作213
9.4.2 定时器工作方式213
9.4.3 计数器工作方式213
9.4.4 TMR1寄存器的赋值与复位217
思考题与练习题218
第10章 定时器TMR2
10.1 定时器TMR2模块的特性219
10.2 与定时器TMR2模块相关的寄存器220
10.3 定时器TMR2模块的电路结构221
10.4 定时器TMR2模块的工作原理223
10.4.1 禁止TMR2工作223
10.4.2 定时器工作方式224
10.4.3 寄存器TMR2和PR2以及分频器的复位225
10.4.4 TMR2模块的初始化编程226
思考题与练习题226
第11章 输入捕捉/输出比较/脉宽调制CCP
11.1 输入捕捉工作模式228
11.1.1 与输入捕捉模式相关的寄存器229
11.1.2 输入捕捉模式的电路结构231
11.1.3 输入捕捉模式的工作原理232
11.2 输出比较工作模式233
11.2.1 与输出比较模式相关的寄存器233
11.2.2 输出比较模式的电路结构234
11.2.3 输出比较模式的工作原理235
11.3 脉宽调制输出工作模式236
11.3.1 与脉宽调制模式相关的寄存器236
11.3.2 脉宽调制模式的电路结构238
11.3.3 脉宽调制模式的工作原理240
11.4 两个CCP模块之间的相互关系245
思考题与练习题247
第12章 模/数转换器ADC
12.1 背景知识249
12.1.1 ADC种类与特点249
12.1.2 ADC器件的工作原理250
12.2 PIC16F87X片内ADC模块253
12.2.1 与ADC模块相关的寄存器254
12.2.2 ADC模块结构和操作原理257
12.2.3 ADC模块操作时间要求260
12.2.4 特殊情况下的A/D转换263
12.2.5 ADC模块的转换精度和分辨率265
12.2.6 ADC模块的操作编程265
思考题与练习题267
第13章 通用同步/异步收发器USART
13.1 串行通信的基本概念268
13.1.1 串行通信的两种基本方式269
13.1.2 串行通信中的数据传送方向271
13.1.3 串行通信中的控制方式272
13.1.4 串行通信中的码型、编码方式和帧结构272
13.1.5 串行通信中的检错和纠错方式273
13.1.6 串行通信组网方式274
13.1.7 串行通信接口电路和参数276
13.2 PIC16F87X片内通用同步/异步收发器USART模块278
13.2.1 与USART模块相关的寄存器279
13.2.2 USART波特率发生器BRG282
13.2.3 USART模块的异步工作方式285
13.2.4 USART模块的同步主控工作方式299
13.2.5 USART模块的同步从动工作方式306
思考题与练习题309
第14章 主控同步串行端口MSSP——SPI模式
14.1 SPI接口背景知识311
14.1.1 SPI接口信号描述311
14.1.2 基于SPI的系统构成方式313
14.1.3 SPI接口工作原理315
14.1.4 兼容的MicroWire接口317
14.2 PIC16F87X的SPI接口319
14.2.1 与SPI接口相关的寄存器320
14.2.2 SPI接口的结构和操作原理322
14.2.3 SPI接口的主控方式325
14.2.4 SPI接口的从动方式326
思考题与练习题327
第15章 主控同步串行端口MSSP——I2C模式
15.1 关于I2C总线的背景知识328
15.1.1 名词术语329
15.1.2 I2C总线的技术特点332
15.1.3 I2C总线的基本工作原理333
15.1.4 I2C总线信号时序分析335
15.1.5 信号传送格式339
15.1.6 寻址约定340
15.1.7 技术参数346
15.1.8 I2C器件与I2C总线的接线方式348
15.1.9 相兼容的SMBus总线350
15.2 与I2C总线相关的寄存器351
15.3 典型信号时序的产生方法356
15.3.1 波特率发生器356
15.3.2 启动信号357
15.3.3 重启动信号358
15.3.4 应答信号359
15.3.5 停止信号360
15.4 被控器通信方式361
15.4.1 硬件结构361
15.4.2 被主控器寻址362
15.4.3 被控器接收——被控接收器363
15.4.4 被控器发送——被控发送器364
15.4.5 广播式寻址365
15.5 主控器通信方式366
15.5.1 硬件结构366
15.5.2 主控器发送——主控发送器369
15.5.3 主控器接收——主控接收器370
15.6 多主通信方式下的总线冲突和总线仲裁373
15.6.1 发送和应答过程中的总线冲突374
15.6.2 启动过程中的总线冲突374
15.6.3 重启动过程中的总线冲突376
15.6.4 停止过程中的总线冲突377
思考题与练习题379
附录AASCII码表380
附录B特殊功能寄存器及其复位值一览表382
参考文献
0.1 学习单片机意义何在1
0.2 单片机究竟是何物4
0.3 单片机到底有何用5
0.4 单片机有何特点6
0.5 PIC单片机有何优越之处7
0.6 PIC16F87X单片机有何特色12
思考题与练习题13
第1章 PIC16F87X硬件系统概况
1.1 PIC16F87X内部结构简介14
1.1.1 PIC16F87X的核心区17
1.1.2 PIC16F87X的外围区20
1.2 PIC16F87X封装形式和引脚功能21
1.3 程序存储器和堆栈26
1.4 RAM数据存储器(文件寄存器)27
1.4.1 通用寄存器32
1.4.2 特殊功能寄存器34
1.5 复位和时钟外接电路简介36
1.6 输入/输出端口的基本功能37
1.6.1 与输入/输出端口相关的2个寄存器38
1.6.2 输入/输出端口的基本结构38
1.6.3 基本输入/输出端口的工作原理40
思考题与练习题43
第2章 指令系统
2.1 指令时序45
2.2 指令系统概览46
2.3 面向字节操作类指令47
2.4 面向位操作类指令51
2.5 面向常数操作和控制操作类指令52
2.6 指令功能分类55
2.7 寻址方式56
2.7.1 立即寻址56
2.7.2 直接寻址57
2.7.3 间接寻址57
2.7.4 位寻址58
2.8 数据传递关系59
2.9 “内核—寄存器—外围模块”相互关系59
思考题与练习题60
第3章 汇编器和汇编程序设计基础
3.1 汇编器MPASMTM简介63
3.2 汇编语言的语句格式65
3.3 常用伪指令67
3.4 程序格式和程序流程图69
3.5 RAM数据存储器的体选寻址问题71
3.6 顺序程序结构73
3.7 分支程序结构75
3.8 循环程序结构77
3.9 子程序结构78
3.10 程序跨页跳转和跨页调用问题80
3.11 延时程序设计83
3.12 查表程序设计85
思考题与练习题88
第4章 定时器/计数器TMR0
4.1 定时器/计数器模块的基本用途90
4.2 PIC单片机中定时器/计数器TMR0模块的特性91
4.3 与定时器/计数器TMR0相关的寄存器92
4.4 定时器/计数器TMR0模块的电路结构和工作原理93
4.4.1 分频器95
4.4.2 TMR0累加计数寄存器96
思考题与练习题97
第5章 中断系统
5.1 中断的基本概念98
5.2 PIC16F87X的中断源100
5.3 PIC16F87X的中断硬件逻辑101
5.4 与中断相关的寄存器104
5.5 中断的处理109
5.5.1 中断的延时响应和延时处理问题109
5.5.2 中断的现场保护问题111
5.5.3 需要注意的问题114
5.6 端口RB电平变化中断116
5.6.1 端口RB的中断功能电路117
5.6.2 电路工作原理117
5.6.3 端口RB中断的处理方法118
5.7 外部中断的扩充方法123
5.7.1 用TMR0外部时钟源扩展法123
5.7.2 用RB端口扩展法124
思考题与练习题126
第6章 应用系统性能的优化设计
6.1 系统配置字以及特殊存储器单元127
6.1.1 系统配置字129
6.1.2 用户识别码ID131
6.1.3 器件识别码133
6.2 时钟系统133
6.2.1 外接晶体振荡器/陶瓷谐振器(LP/XT/HS)134
6.2.2 外接阻容器件(RC)135
6.2.3 引入外来时钟源(LP/XT/HS)136
6.3 复位系统136
6.3.1 几种不同的复位方式137
6.3.2 单片机内部的复位操作处理137
6.3.3 复位系统硬件逻辑141
6.3.4 内部上电延时复位(POR)功能144
6.3.5 外部上电延时复位电路145
6.3.6 外部人工复位开关电路148
6.3.7 内部掉电锁定复位(BOR)功能148
6.4 看门狗定时器WDT151
6.4.1 程序失控的回复152
6.4.2 WDT的电路结构154
6.4.3 WDT的工作原理155
6.4.4 WDT相关寄存器156
6.4.5 使用WDT的注意事项156
6.5 睡眠与唤醒157
6.5.1 睡眠状态的进入157
6.5.2 睡眠状态的唤醒158
思考题与练习题161
第7章 输入/输出端口的复合功能
7.1 与输入/输出端口相关的寄存器163
7.2 RA端口165
7.2.1 与RA端口相关的寄存器165
7.2.2 电路结构和工作原理166
7.2.3 编程方法167
7.3 RB端口168
7.3.1 与RB端口相关的寄存器168
7.3.2 电路结构和工作原理169
7.3.3 编程方法171
7.4 RC端口171
7.4.1 与RC端口相关的寄存器172
7.4.2 电路结构和工作原理172
7.4.3 编程方法174
7.5 RD端口175
7.5.1 与RD端口相关的寄存器175
7.5.2 电路结构和工作原理176
7.5.3 编程方法176
7.6 RE端口177
7.6.1 与RE端口相关的寄存器177
7.6.2 电路结构和工作原理178
7.6.3 编程方法178
7.7 PSP并行从动端口178
7.7.1 与PSP端口相关的寄存器179
7.7.2 电路结构和工作原理180
思考题与练习题182
第8章 EEPROM数据存储器和Flash程序存储器
8.1 背景知识184
8.1.1 通用型半导体存储器的种类和特点184
8.1.2 PIC单片机内部的程序存储器185
8.1.3 PIC单片机内部的EEPROM数据存储器186
8.1.4 PIC16F87X内部EEPROM和Flash的操作方法187
8.2 与EEPROM相关的寄存器190
8.3 片内EEPROM数据存储器结构和操作原理193
8.3.1 从EEPROM中读取数据194
8.3.2 向EEPROM中烧写数据194
8.4 与Flash相关的寄存器196
8.5 片内Flash程序存储器结构和操作原理199
8.5.1 读取Flash程序存储器199
8.5.2 烧写Flash程序存储器200
8.6 写操作的安全保障措施203
8.6.1 写入校验方法203
8.6.2 预防意外写操作的保障措施204
思考题与练习题204
第9章 定时器/计数器TMR1
9.1 定时器/计数器TMR1模块的特性207
9.2 与定时器/计数器TMR1模块相关的寄存器208
9.3 定时器/计数器TMR1模块的电路结构209
9.4 定时器/计数器TMR1模块的工作原理211
9.4.1 禁止TMR1工作213
9.4.2 定时器工作方式213
9.4.3 计数器工作方式213
9.4.4 TMR1寄存器的赋值与复位217
思考题与练习题218
第10章 定时器TMR2
10.1 定时器TMR2模块的特性219
10.2 与定时器TMR2模块相关的寄存器220
10.3 定时器TMR2模块的电路结构221
10.4 定时器TMR2模块的工作原理223
10.4.1 禁止TMR2工作223
10.4.2 定时器工作方式224
10.4.3 寄存器TMR2和PR2以及分频器的复位225
10.4.4 TMR2模块的初始化编程226
思考题与练习题226
第11章 输入捕捉/输出比较/脉宽调制CCP
11.1 输入捕捉工作模式228
11.1.1 与输入捕捉模式相关的寄存器229
11.1.2 输入捕捉模式的电路结构231
11.1.3 输入捕捉模式的工作原理232
11.2 输出比较工作模式233
11.2.1 与输出比较模式相关的寄存器233
11.2.2 输出比较模式的电路结构234
11.2.3 输出比较模式的工作原理235
11.3 脉宽调制输出工作模式236
11.3.1 与脉宽调制模式相关的寄存器236
11.3.2 脉宽调制模式的电路结构238
11.3.3 脉宽调制模式的工作原理240
11.4 两个CCP模块之间的相互关系245
思考题与练习题247
第12章 模/数转换器ADC
12.1 背景知识249
12.1.1 ADC种类与特点249
12.1.2 ADC器件的工作原理250
12.2 PIC16F87X片内ADC模块253
12.2.1 与ADC模块相关的寄存器254
12.2.2 ADC模块结构和操作原理257
12.2.3 ADC模块操作时间要求260
12.2.4 特殊情况下的A/D转换263
12.2.5 ADC模块的转换精度和分辨率265
12.2.6 ADC模块的操作编程265
思考题与练习题267
第13章 通用同步/异步收发器USART
13.1 串行通信的基本概念268
13.1.1 串行通信的两种基本方式269
13.1.2 串行通信中的数据传送方向271
13.1.3 串行通信中的控制方式272
13.1.4 串行通信中的码型、编码方式和帧结构272
13.1.5 串行通信中的检错和纠错方式273
13.1.6 串行通信组网方式274
13.1.7 串行通信接口电路和参数276
13.2 PIC16F87X片内通用同步/异步收发器USART模块278
13.2.1 与USART模块相关的寄存器279
13.2.2 USART波特率发生器BRG282
13.2.3 USART模块的异步工作方式285
13.2.4 USART模块的同步主控工作方式299
13.2.5 USART模块的同步从动工作方式306
思考题与练习题309
第14章 主控同步串行端口MSSP——SPI模式
14.1 SPI接口背景知识311
14.1.1 SPI接口信号描述311
14.1.2 基于SPI的系统构成方式313
14.1.3 SPI接口工作原理315
14.1.4 兼容的MicroWire接口317
14.2 PIC16F87X的SPI接口319
14.2.1 与SPI接口相关的寄存器320
14.2.2 SPI接口的结构和操作原理322
14.2.3 SPI接口的主控方式325
14.2.4 SPI接口的从动方式326
思考题与练习题327
第15章 主控同步串行端口MSSP——I2C模式
15.1 关于I2C总线的背景知识328
15.1.1 名词术语329
15.1.2 I2C总线的技术特点332
15.1.3 I2C总线的基本工作原理333
15.1.4 I2C总线信号时序分析335
15.1.5 信号传送格式339
15.1.6 寻址约定340
15.1.7 技术参数346
15.1.8 I2C器件与I2C总线的接线方式348
15.1.9 相兼容的SMBus总线350
15.2 与I2C总线相关的寄存器351
15.3 典型信号时序的产生方法356
15.3.1 波特率发生器356
15.3.2 启动信号357
15.3.3 重启动信号358
15.3.4 应答信号359
15.3.5 停止信号360
15.4 被控器通信方式361
15.4.1 硬件结构361
15.4.2 被主控器寻址362
15.4.3 被控器接收——被控接收器363
15.4.4 被控器发送——被控发送器364
15.4.5 广播式寻址365
15.5 主控器通信方式366
15.5.1 硬件结构366
15.5.2 主控器发送——主控发送器369
15.5.3 主控器接收——主控接收器370
15.6 多主通信方式下的总线冲突和总线仲裁373
15.6.1 发送和应答过程中的总线冲突374
15.6.2 启动过程中的总线冲突374
15.6.3 重启动过程中的总线冲突376
15.6.4 停止过程中的总线冲突377
思考题与练习题379
附录AASCII码表380
附录B特殊功能寄存器及其复位值一览表382
参考文献
猜您喜欢