第1章EEPROM数据存储器和FLASH程序存储器 1.1背景知识1 1.1.1通用型半导体存储器的种类和特点1 1.1.2PIC单片机内部的程序存储器2 1.1.3PIC单片机内部的EEPROM数据存储器3 1.1.4PIC16F87X内部EEPROM和FLASH操作方法4 1.2与EEPROM相关的寄存器7 1.3片内EEPROM数据存储器结构和操作原理10 1.3.1从EEPROM中读取数据11 1.3.2向EEPROM中烧写数据12 1.4与FLASH相关的寄存器14 1.5片内FLASH程序存储器结构和操作原理15 1.5.1读取FLASH程序存储器16 1.5.2烧写FLASH程序存储器17 1.6写操作的安全保障措施20 1.6.1写入校验方法20 1.6.2预防意外写操作的保障措施20 1.7EEPROM和FLASH应用举例21 1.7.1EEPROM的应用21 1.7.2FLASH的应用33 思考题与练习题39
第2章输入/输出端口的复合功能 2.1RA端口42 2.1.1与RA端口相关的寄存器43 2.1.2电路结构和工作原理44 2.1.3编程方法46 2.2RB端口47 2.2.1与RB端口相关的寄存器47 2.2.2电路结构和工作原理48 2.2.3编程方法52 2.3RC端口52 2.3.1与RC端口相关的寄存器52 2.3.2电路结构和工作原理53 2.3.3编程方法56 2.4RD端口56 2.4.1与RD端口相关的寄存器56 2.4.2电路结构和工作原理57 2.4.3编程方法58 2.5RE端口58 2.5.1与RE端口相关的寄存器58 2.5.2电路结构和工作原理59 2.5.3编程方法60 2.6PSP并行从动端口60 2.6.1与PSP端口相关的寄存器61 2.6.2电路结构和工作原理62 2.7应用举例64 思考题与练习题80
第3章定时器/计数器TMR1 3.1定时器/计数器TMR1模块的特性82 3.2定时器/计数器TMR1模块相关的寄存器83 3.3定时器/计数器TMR1模块的电路结构84 3.4定时器/计数器TMR1模块的工作原理86 3.4.1禁止TMR1工作88 3.4.2定时器工作方式88 3.4.3计数器工作方式88 3.4.4TMR1寄存器的赋值与复位92 3.5定时器/计数器TMR1模块的应用举例92 思考题与练习题101
第4章定时器TMR2 4.1定时器TMR2模块的特性102 4.2定时器TMR2模块相关的寄存器103 4.3定时器TMR2模块的电路结构104 4.4定时器TMR2模块的工作原理106 4.4.1禁止TMR2工作106 4.4.2定时器工作方式107 4.4.3寄存器TMR2和PR2以及分频器的复位108 4.4.4TMR2模块的初始化编程109 4.5定时器TMR2模块的应用举例109 思考题与练习题119
第5章输入捕捉/输出比较/脉宽调制CCP 5.1输入捕捉工作模式120 5.1.1输入捕捉模式相关的寄存器121 5.1.2输入捕捉模式的电路结构122 5.1.3输入捕捉模式的工作原理123 5.1.4输入捕捉模式的应用举例124 5.2输出比较工作模式131 5.2.1输出比较模式相关的寄存器131 5.2.2输出比较模式的电路结构132 5.2.3输出比较模式的工作原理133 5.2.4输出比较模式的应用举例135 5.3脉宽调制输出工作模式143 5.3.1脉宽调制模式相关的寄存器143 5.3.2脉宽调制模式的电路结构145 5.3.3脉宽调制模式的工作原理147 5.3.4脉宽调制模式的应用举例151 5.4两个CCP模块之间相互关系156 思考题与练习题158
第6章模/数转换器ADC 6.1背景知识160 6.1.1ADC种类与特点160 6.1.2ADC器件的工作原理161 6.2PIC16F87X片内ADC模块164 6.2.1ADC模块相关的寄存器165 6.2.2ADC模块结构和操作原理168 6.2.3ADC模块操作时间要求171 6.2.4特殊情况下的A/D转换174 6.2.5ADC模块的转换精度和分辨率175 6.2.6ADC模块的内部动作流程和传递函数176 6.2.7ADC模块的操作编程177 6.3PIC16F87X片内ADC模块的应用举例178 思考题与练习题188
第7章通用同步/异步收发器USART 7.1串行通信的基本概念190 7.1.1串行通信的两种基本方式191 7.1.2串行通信中数据传送方向193 7.1.3串行通信中的控制方式193 7.1.4串行通信中的码型、编码方式和帧结构194 7.1.5串行通信中的检错和纠错方式195 7.1.6串行通信组网方式198 7.1.7串行通信接口电路和参数200 7.1.8串行通信的传输速率201 7.2PIC16F87X片内通用同步/异步收发器USART模块 7.2.1与USART模块相关的寄存器204 7.2.2USART波特率发生器BRG207 7.2.3USART模块的异步工作方式209 7.2.4USART模块的同步主控工作方式223 7.2.5USART模块的同步从动工作方式229 7.3通用同步/异步收发器USART的应用举例231 思考题与练习题251
第8章主控同步串行端口MSSP--SPI模式 8.1SPI接口的背景知识253 8.1.1SPI接口信号描述253 8.1.2基于SPI的系统构成方式254 8.1.3SPI接口工作原理256 8.1.4兼容的MicroWire接口258 8.2PIC16F87X的SPI接口260 8.2.1SPI接口相关的寄存器261 8.2.2SPI接口的结构和操作原理263 8.2.3SPI接口的主控方式266 8.2.4SPI接口的从动方式267 8.3SPI接口的应用举例269 思考题与练习题285
第9章主控同步串行端口MSSP--I2C模式 9.1I2C总线的背景知识286 9.1.1名词术语288 9.1.2I2C总线的技术特点290 9.1.3I2C总线的基本工作原理291 9.1.4I2C总线信号时序分析293 9.1.5信号传送格式297 9.1.6寻址约定298 9.1.7技术参数303 9.1.8I2C器件与I2C总线的接线方式305 9.1.9相兼容的SMBus总线307 9.2与I2C总线相关的寄存器309 9.3典型信号时序的产生方法313 9.3.1波特率发生器313 9.3.2启动信号314 9.3.3重启动信号316 9.3.4应答信号318 9.3.5停止信号319 9.4被控器通信方式320 9.4.1硬件结构320 9.4.2被主控器寻址321 9.4.3被控器接收--被控接收器322 9.4.4被控器发送--被控发送器323 9.4.5广播式寻址324 9.5主控器通信方式325 9.5.1硬件结构326 9.5.2主控器发送--主控发送器329 9.5.3主控器接收--主控接收器331 9.6多主通信方式下的总线冲突和总线仲裁334 9.6.1发送和应答过程中的总线冲突335 9.6.2启动过程中的总线冲突335 9.6.3重启动过程中的总线冲突337 9.6.4停止过程中的总线冲突338 9.7I2C总线的应用举例339 思考题与练习题349
附录A包含文件P16F877.INC
附录B新版宏汇编器MPASM伪指令总表
参考文献
|