第1章 ARM处理器 1
1.1 ARM简介 1
1.1.1 ARM的特点 1
1.1.2 ARM系列处理器 2
1.2 ARM7TDMI内核总览 2
1.2.1 三级流水线 2
1.2.2 存储器访问 3
1.2.3 存储器接口 3
1.3 ARM7TDMI的模块、内核和功能框图 3
1.4 ARM7TDMI处理器状态 5
1.5 异常 6
1.6 ARM寄存器 6
1.7 寻址方式 7
1.8 ARM7指令集 7
1.8.1 ARM指令集 7
1.8.2 Thumb指令集 8
1.9 调试接口 9
1.9.1 典型调试系统 9
1.9.2 调试接口 9
1.9.3 Embedded ICE-RT 9
第2章 IAR开发环境的使用 11
2.1 IAR简介 11
2.2 IAR开发环境 11
2.2.1 菜单栏 11
2.2.2 工具栏 12
2.2.3 状态栏 12
2.2.4 工作区 12
2.2.5 编辑区 13
2.3 仿真器简介 13
2.4 IAR使用说明 14
2.4.1 新建工程 14
2.4.2 工程选项设置 19
2.4.3 编译和运行应用程序 26
第3章 ADuC7026硬件结构 30
3.1 ADuC7026简介 30
3.1.1 ADuC7026特点 30
3.1.2 ADuC7026芯片结构 31
3.2 ADuC7026引脚配置 32
3.2.1 引脚排列及封装信息 32
3.2.2 引脚功能描述 32
3.3 ADuC7026实验开发板简介 37
第4章 存储器结构与访问 39
4.1 存储器简介 39
4.2 Flash/EE存储器 40
4.2.1 Flash/EE存储器的结构 40
4.2.2 Flash/EE存储安全性 40
4.2.3 Flash/EE存储器的在线编程 41
4.2.4 Flash/EE相关寄存器 41
4.3 SRAM存储器 44
4.4 SRAM和Flash/EE的执行时间 44
4.4.1 SRAM的执行时间 44
4.4.2 Flash/EE的执行时间 44
4.5 存储器映射寄存器 45
4.6 存储器的访问 46
4.7 存储器的重映射和复位 46
4.7.1 重映射操作 47
4.7.2 复位操作 48
4.8 外部存储接口 48
4.8.1 引脚及功能 48
4.8.2 外部存储接口相关寄存器 49
4.8.3 读周期和写周期时序图 51
4.9 应用实例 52
4.9.1 存取外扩RAM 52
4.9.2 12864液晶控制 54
4.9.3 1602液晶控制 69
第5章 系统控制模块 74
5.1 电源监视器 74
5.1.1 电源监视器简介 74
5.1.2 电源监视器相关寄存器 74
5.2 电压比较器 75
5.2.1 电压比较器功能与结构 75
5.2.2 滞回现象 75
5.2.3 电压比较器相关寄存器 75
5.3 晶体振荡器和锁相环(PLL)——电源控制 76
5.3.1 时钟系统 76
5.3.2 外部晶振选择 77
5.3.3 外部时钟选择 78
5.3.4 电源控制系统 78
5.3.5 相关寄存器 79
5.4 应用实例 81
5.4.1 I/O端口电压检测 81
5.4.2 电压比较器使用 81
5.4.3 系统时钟配置 82
第6章 模数转换器ADC 83
6.1 ADuC7026 ADC简介 83
6.2 模拟信号输入与转换 84
6.2.1 模拟输入的电路结构 84
6.2.2 转换操作 85
6.2.3 转换时序 88
6.3 ADC相关寄存器 89
6.3.1 控制寄存器ADCCON 89
6.3.2 输入端选择寄存器ADCCP、ADCCN 90
6.3.3 ADC状态寄存器ADCSTA 92
6.3.4 ADC数据寄存器ADCDAT 92
6.3.5 ADC复位寄存器ADCRST 92
6.3.6 增益校准寄存器ADCGN、失调校准寄存器ADCOF 93
6.3.7 参考源控制寄存器REFCON 93
6.4 应用实例 94
6.4.1 对内部参考进行A/D转换 94
6.4.2 对外部电压进行A/D转换 95
第7章 数模转换器DAC 100
7.1 ADuC7026 DAC简介 100
7.2 DAC结构及使用 100
7.3 DAC的线性衰减 101
7.4 DAC相关寄存器 101
7.4.1 控制寄存器DACxCON 102
7.4.2 数据寄存器DACxDAT 102
7.5 应用实例 103
7.5.1 正弦波信号输出 103
7.5.2 DAC控制LED 104
第8章 PWM 107
8.1 ADuC7026 PWM简介 107
8.2 PWM模块的结构 107
8.3 PWM各模块功能描述 108
8.3.1 三相定时单元 108
8.3.2 输出控制单元 112
8.3.3 门驱动单元 114
8.3.4 PWM的关断控制器 114
8.4 PWM相关寄存器 115
8.4.1 控制寄存器PWMCON 115
8.4.2 状态寄存器PWMSTA 116
8.4.3 门控斩波寄存器PWMCFG 116
8.4.4 输出使能寄存器PWMEN 116
8.4.5 转换周期寄存器PWMDAT0和死区时间寄存器PWMDAT1 117
8.4.6 脉冲带宽寄存器PWMDAT2 117
8.4.7 占空比寄存器PWMCHx 117
8.5 应用实例 117
8.5.1 PWM模拟DAC输出 117
8.5.2 PWM控制直流电机 118
第9章 通用I/O端口GPIO 120
9.1 ADuC7026 GPIO简介 120
9.2 GPIO相关寄存器 121
9.2.1 端口控制寄存器GPxCON 122
9.2.2 参数控制寄存器GPxPAR 123
9.2.3 端口配置和数据寄存器GPxDAT 124
9.2.4 端口置位寄存器GPxSET和端口清0寄存器GPxCLR 124
9.3 应用实例 124
9.3.1 蜂鸣器报警控制 124
9.3.2 DS18B20温度测量 125
第10章 通用异步串口UART 129
10.1 ADuC7026 UART简介 129
10.2 引脚及连接 129
10.3 波特率发生器 130
10.3.1 普通的450 UART波特率 130
10.3.2 分数分频波特率发生器 131
10.4 UART相关寄存器 132
10.4.1 发送寄存器COMTX和接收寄存器COMRX 132
10.4.2 波特率寄存器COMDIV0和COMDIV1 132
10.4.3 波特率寄存器COMDIV2 132
10.4.4 中断使能寄存器COMIEN0 133
10.4.5 中断识别寄存器COMIID0 133
10.4.6 控制寄存器COMCON0和COMCON1 133
10.4.7 状态寄存器COMSTA0和COMSTA1 135
10.4.8 临时数据寄存器COMSCR 135
10.5 网络寻址UART模式 135
10.5.1 网络使能寄存器COMIEN1 136
10.5.2 网络中断寄存器COMIID1 137
10.5.3 读/写网络地址寄存器COMADR 137
10.6 应用实例 137
10.6.1 ADuC7026与PC串行通信 137
10.6.2 多机网络通信 141
第11章 SPI接口 145
11.1 ADuC7026 SPI特性 145
11.2 引脚及连接 145
11.2.1 SPI接口的引脚 145
11.2.2 SPI接口的硬件连接 146
11.3 SPI工作模式 146
11.3.1 主机模式 147
11.3.2 从机模式 148
11.4 SPI相关寄存器 150
11.4.1 状态寄存器SPISTA 150
11.4.2 接收寄存器SPIRX和发送寄存器SPITX 151
11.4.3 时钟分频寄存器SPIDIV 151
11.4.4 控制寄存器SPICON 151
11.5 应用实例:LED跑马灯显示 152
第12章 I2C接口 154
12.1 ADuC7026 I2C特性 154
12.2 I2C总线工作原理 154
12.2.1 I2C总线的构成及连接方式 154
12.2.2 总线基本操作 155
12.2.3 I2C总线相关术语 155
12.3 I2C相关寄存器 156
12.3.1 主机状态寄存器I2CxMSTA 158
12.3.2 从机状态寄存器I2CxSSTA 158
12.3.3 从机接收寄存器I2CxSRX和从机发送寄存器I2CxSTX 159
12.3.4 主机接收寄存器I2CxMRX和主机发送寄存器I2CxMTX 159
12.3.5 数据计数寄存器I2CxCNT 159
12.3.6 地址寄存器I2CxADR 160
12.3.7 广播字节寄存器I2CxBYTE 160
12.3.8 硬件广播ID寄存器I2CxALT 160
12.3.9 配置寄存器I2CxCFG 160
12.3.10 时钟分频寄存器I2CxDIV 161
12.3.11 从机地址设备ID寄存器I2CxIDx 161
12.3.12 起始/停止计数寄存器I2CxCCNT 161
12.3.13 FIFO状态寄存器I2CxFSTA 162
12.4 I2C工作模式 162
12.4.1 主机模式 163
12.4.2 从机模式 164
12.5 应用实例 164
12.5.1 读/写EEPROM AT24C64 164
12.5.2 日历时钟 166
12.5.3 按键和数码管驱动芯片ZLG7290 169
第13章 中断 174
13.1 中断相关基本概念 174
13.1.1 中断 174
13.1.2 中断源 174
13.2 ADuC7026的中断和中断源 174
13.3 中断相关寄存器 175
13.3.1 IRQ相关寄存器 175
13.3.2 FIQ相关寄存器 176
13.3.3 程序中断寄存器SWICFG 177
13.4 应用实例:外部中断 177
第14章 定时器 179
14.1 ADuC7026定时器简介 179
14.2 Timer0(实时操作系统定时器) 179
14.2.1 数据寄存器T0LD和状态寄存器T0VAL 180
14.2.2 控制寄存器T0CON 180
14.2.3 中断取消寄存器T0CLRI 180
14.3 Timer1(通用定时器) 181
14.3.1 数据寄存器T1LD和状态寄存器T1VAL 181
14.3.2 控制寄存器T1CON 182
14.3.3 中断取消寄存器T1CLRI 182
14.3.4 事件捕获寄存器T1CAP 182
14.4 Timer2(唤醒定时器) 183
14.4.1 数据寄存器T2LD和状态寄存器T2VAL 184
14.4.2 控制寄存器T2CON 184
14.4.3 中断取消寄存器T2CLRI 184
14.5 Timer3(看门狗定时器) 184
14.5.1 正常模式 185
14.5.2 看门狗模式 185
14.5.3 安全清除位(仅用于看门狗模式) 186
14.6 应用实例 187
14.6.1 定时器中断应用 187
14.6.2 定时器查询应用 188
14.6.3 脉冲宽度测量 190
14.6.4 看门狗定时器应用 191
第15章 可编程逻辑阵列(PLA) 194
15.1 PLA功能及结构 194
15.2 PLA的连接 194
15.3 PLA相关寄存器 195
15.3.1 单元控制寄存器PLAELMx 196
15.3.2 时钟选择寄存器PLACLK 197
15.3.3 中断寄存器PLAIRQ 197
15.3.4 ADC转换控制寄存器PLAADC 198
15.3.5 数据输入寄存器PLADIN和数据输出寄存器PLADOUT 198
15.3.6 锁定选择寄存器PLALCK 199
15.4 应用实例:搭建3位计数器 199
第16章 光照度计 202
16.1 硅光电池的光电转换原理 202
16.2 系统硬件电路设计 202
16.2.1 前向数据采集模块 203
16.2.2 通信模块 204
16.2.3 按键控制模块 205
16.3 系统软件设计 205
16.3.1 光照度的采集和显示 205
16.3.2 存储 207
16.3.3 数据上传 207
16.3.4 程序清单 207
第17章 智能语音电子体温计 211
17.1 系统硬件电路设计 211
17.1.1 体温采集模块 211
17.1.2 语音转换模块 212
17.1.3 语音播报模块 213
17.2 系统软件设计 214
参考文献 216