前言
关于本书
致谢
第1章 引言
1.1 信息处理的革命
1.2 发展策略
1.3 FLASH存储技术
1.4 微控制器特点
第2章 CPU结构
2.1 概述
2.2 哈佛结构
2.3 直接寻址
2.4 间接寻址
2.5 程序存储器读操作
2.6 程序指令顺序
2.7 CPU及其状态位
2.8 特殊功能寄存器(SFR)
习题
第3章 指令集
3.1 概述
3.2 F/W的区别
3.3 “分组”操作
3.4 传送指令
3.5 单操作数指令
3.6 “与”、“或”、“异或”指令
3.7 算术运算指令
3.8 有条件和无条件分支转移
3.9 条件跳转指令
3.10 子程序调用和返回指令
3.11 保留指令
习题
第4章 QWIKFLASH目标板
4.1 概述
4.2 QWIKFLASH I/O电路
4.3 QWIKFLASH工具
4.4 调试支持
第5章 程序开发(P1例程)
5.1 概述
5.2 TIMERO操作
5.3 程序结构
5.4 LOOPTIME子程序
5.5 BLINKALIVE子程序
5.6 宏
5.7 P1.ASM程序
5.8 免费工具
5.9 汇编
5.10 执行
习题
第6章 结构化汇编预处理器
6.1 概述
6.2 条件编译和执行
6.3 结构化汇编构架
6.4 条件测试
6.5 SASM输入参数
6.6 SASM安装、执行及程序代码调试
6.7 P1.ASM修订
习题
第7章 字符数字液晶显示(P2例程)
7.1 概述
7.2 LCD接口选择
7.3 初始化
7.4 光标定位代码
7.5 显示字符串
7.6 LCD字符集
7.7 用户定义的字符
7.8 显示调试辅助程序
7.9 P2.ASM--显示例程
习题
第8章 旋转脉冲发生器
8.1 概述
8.2 RIG分辨率
8.3 RPG功能
8.4 RPG子程序
8.5 速率检测RPG
习题
第9章 中断和中断时序
9.1 概述
9.2 低优先级中断时序
9.3 低优先级中断结构
9.4 高优先级中断结构
9.5 重要代码区
9.6 外部中断
9.7 PORTB中断(引脚RB7∶RB4)
习题
第lO章 模数转换
10.1 概述
10.2 I/O引脚分配
10.3 ADC输出格式
10.4 ADC特性及其使用
10.5 ADC的中断控制
习题
第11章 I/O引脚设置
11.1 概述
11.2 数字输出引脚功能
11.3 数字I/O电路
11.4 输入设置
习题
第12章 LCD屏幕(P3例程)
12.1 概述
12.2 按钮输入
12.3 Screens子程序
12.4 P3.ASM--屏幕选项程序例程
习题
第13章 时间间隔测量
13.1 概述
13.2 TIMER1和内部时间间隔测量
13.3 DisplayMax子程序
13.4 扩展内部时间间隔测量
13.5 CCP1和外部时间间隔测量
13.6 CCP1和内部时间间隔测量
13.7 扩展外部时间间隔测量
13.8 TIMER3和CCP2的使用
13.9 频率测量
13.10 温度测量
习题
第14章 数学运算子程序
14.1 概述
14.2 乘法
14.3 除法
14.4 乘法/除法子程序的使用
14.5 保持计算精度
14.6 浮点子程序
14.7 浮点子程序的使用
14.8 归一化子程序
习题
第15章 串行外设接口的I/O扩展
15.1 概述
15.2 SPI功能
15.3 SPI初始化
15.4 输出端口扩展
15.5 输入端口扩展
15.6 多I/O端口扩展
15.7 DAC输出
15.8 温度输入
15.9 主-从互连
习题
第16章 输出时间间隔控制(P4例程)
16.1 概述
16.2 时序的外部控制
16.3 周期中断发生器
16.4 快速任意方波输出
16.5 通用任意方波输出
习题
第17章 外设访问存取总线SMBUS/I上标2C
17.1 概述
17.2 SMBUs/I上标2C总线说明
17.3 I上标2C总线操作
17.4 PICl8F452的I上标2C总线传输
17.5 I/O扩展
17.6 底层I上标2C子程序
17.7 I/O扩展代码
17.8 DAC输出
17.9 数字温度计
17.10 举例
习题
第18章 通用异步接收发送器UART
18.1 概述
18.2 信号波形和波特率的精确度
18.3 波特率选择
18.4 UART数据处理电路
18.5 UART初始化
18.6 UART应用
习题
第19章 可编程外设芯片
19.1 概述
19.2 PIC16C505概述
19.3 键盘外设接口
19.4 主程序和LOOPTIME宏
19.5 键按下检测
19.6 键开关状态机制
19.7 UART宏
19.8 PIC16C505源文件
习题
第20章 综合特性
20.1 概述
20.2 配置字节
20.3 振荡器选择
20.4 电源电压
20.5 低电压检测(LVD)
20.6 警戒复位(BOR)
20.7 看门狗定时器(WDT)
20.8 复位
20.9 电池电源操作
20.10 定时
20.11 数据EEPROM使用
20.12 并行从端口(PSP)
附录A1 QWIKFLASH开发板装配
A1.1 概述
A1.2 微芯的ICD2模块
A1.3 器件列表
A1.4 开发板组装必备工具
A1.5 焊接技巧
A1.6 开发板结构
A1.7 清除焊剂
A1.8 LCD安装前的性能验证
A1.9 安装LCD
A1.10 性能验证
A1.11 QWIKBUG性能验证
附录A2 用附加的QwikProto板进行实验室升级
A2.1 板和器件
A2.2 结构
A2.3 引脚使用条件
A2.4 工程概念
A2.5 作者的工作站
附录A3 MPLAB用户接口的结构化汇编程序使用
A3.1 安装SASM
A3.2 Project设置
A3.3 QWIKADDRESS实用程序应用
附录A4 QWIKBUG监控程序
A4.1 概述
A4.2 资源利用
A4.3 ICD2模块的QwikBug安装
A4.4 P16PRO PIC编程器的QwikBug安装
A4.5 QWIKBUG验证
A4.6 自启动特征
A4.7 命令键
A4.8 帮助命令(F1或H)
A4.9 复位命令(F2或T)
A4.10 加载命令(F3或L)
A4.11 显示命令(F4或D)
A4.12 断点命令(F5或B)
A4.13 监视命令(F6或W)
A4.14 运行命令(F7或R)
A4.15 单步命令(F8或S)
A4.16 修改命令(F9或M)
A4.17 修改QwikBug
A4.18 致谢
附录A5 QwikAddress和QWIKPH实用程序
A5.1 概述
A5.2 David Flowers的QwikAddress实用程序
A5.3 CHRIS TWIGG的QWIKPH实用程序
附录A6 数学子程序的验证
附录A7 PIC18F452的C编程应用
附录A8 PIC18F452特殊功能寄存器及其位
附录A9 器件和封装
附录A10 课程组织和实验室规划
A1O.1 课程安排
A10.2 实验室建立
A1O.3 实验室设备
A1O.4 编译器编码与构造比较,编译器编码与C代码比较
A10.5 10个项目
词汇表