第1章 微型计算机基础 1
1.1 计算机中数的表示及运算 1
1.1.1 二进制、十进制、十六进制数的表示及转换 1
1.1.2 二进制和十六进制数的运算 6
1.1.3 计算机中数和字符的表示 7
1.1.4 几种基本逻辑运算 10
1.2 微型计算机概述 11
1.2.1 微型计算机的基本结构 11
1.2.2 指令程序和指令系统 12
1.2.3 CPU的结构与功能 13
1.2.4 存储器的结构和功能 15
1.2.5 程序的执行过程 16
1.2.6 程序执行过程举例 16
1.2.7 CPU对外设的操作及举例 22
第2章 单片机技术概述 24
2.1 计算机体系结构介绍 24
2.1.1 基本概念 25
2.1.2 存储器 31
2.1.3 输入/输出 33
2.1.4 嵌入式计算机体系结构 34
2.2 单片机的概念与特点 35
2.3 单片机的应用 36
2.4 单片机的发展趋势 36
2.5 主流单片机 37
2.6 MSP430系列单片机 38
第3章 MSP430单片机硬件结构及原理 40
3.1 MSP430x14x结构概述 40
3.2 MSP430x14x的主要特性和外部引脚 41
3.2.1 MSP430x14x的主要特性 41
3.2.2 MSP430x14x引脚功能 42
3.3 MSP430单片机的中央处理器 45
3.4 MSP430单片机的存储器结构 49
3.4.1 MSP430存储空间结构 50
3.4.2 数据存储器RAM 50
3.4.3 程序存储器ROM 51
3.4.4 外围模块寄存器 52
3.5 MSP430单片机时钟模块与低功耗结构 53
3.5.1 MSP430系列单片机时钟模块 54
3.5.2 低速晶体振荡器 55
3.5.3 高速晶体振荡器 56
3.5.4 DCO振荡器 56
3.5.5 振荡器失效检测 60
3.5.6 基础时钟模块应用举例 61
3.5.7 低功耗结构 63
3.6 系统复位和初始化 65
3.6.1 系统上电复位 66
3.6.2 系统复位后器件的初始状态 66
3.7 中断系统 67
3.7.1 不可屏蔽中断NMI 67
3.7.2 可屏蔽中断 69
3.7.3 中断处理 69
第4章 MSP430单片机指令系统与程序设计 71
4.1 寻址方式 71
4.2 指令系统 74
4.2.1 指令系统概述 74
4.2.2 数据传送类指令 75
4.2.3 数据运算指令 77
4.2.4 逻辑操作指令 84
4.2.5 位操作指令 90
4.2.6 跳转与程序流程的控制类指令 92
4.3 汇编语言程序设计 98
4.3.1 MSP430程序设计的基本流程 98
4.3.2 汇编语言伪指令 99
4.3.3 常用的汇编程序结构 101
4.3.4 汇编语言程序设计举例 104
4.4 C语言程序设计 107
4.4.1 MSP430 C语言的数据类型 107
4.4.2 MSP430 C语言的控制语句 109
4.4.3 MSP430 C语言的函数 110
4.4.4 MSP430 C语言本征函数 111
4.4.5 MSP430 C语言编程的一般结构 112
4.4.6 C语言程序举例 112
4.5 MSP430 C语言和汇编语言混合编程 113
4.5.1 IAR C语言编译器的参数传递规则 114
4.5.2 对汇编语言函数的约定 114
4.5.3 混合编程 115
4.5.4 程序举例 115
4.6 MSP430开发工具简介 118
4.6.1 硬件环境 118
4.6.2 IAR Embedded Workbench简介 119
第5章 MSP430单片机片内外设及其应用 134
5.1 通用I/O端口 134
5.1.1 MSP430端口概述 134
5.1.2 端口P1和P2 135
5.1.3 端口P3、P4、P5和P6 137
5.1.4 端口COM和S 137
5.1.5 端口的应用 137
5.2 定时器 139
5.2.1 看门狗定时器 139
5.2.2 16位定时器A 143
5.2.3 16位定时器B 166
5.3 硬件乘法器 173
5.3.1 硬件乘法器的结构 173
5.3.2 硬件乘法器的寄存器 175
5.3.3 硬件乘法器的应用 175
5.4 Flash存储器 175
5.4.1 Flash存储器的结构 176
5.4.2 Flash存储器的组织 176
5.4.3 Flash存储器的寄存器 177
5.4.4 Flash存储器的操作 179
5.4.5 Flash模块操作举例 183
5.5 比较器A 185
5.5.1 比较器A的结构 186
5.5.2 比较器A的寄存器 187
5.5.3 比较器A的中断 189
5.5.4 比较器A应用举例 189
5.6 DMA控制器 190
5.6.1 DMA控制器的结构与功能 190
5.6.2 DMA控制器的寄存器 192
5.6.3 DMA控制器的操作 195
5.6.4 DMA控制器操作举例 205
5.7 通用串行通信模块的异步模式 207
5.7.1 异步通信的结构 208
5.7.2 异步通信寄存器 208
5.7.3 异步操作 215
5.7.4 异步通信举例 225
5.8 通用串行通信模块的同步模式 227
5.8.1 同步通信的结构 228
5.8.2 同步通信寄存器 229
5.8.3 同步通信操作 232
5.8.4 同步通信举例 239
5.9 通用串行通信模块的I2C模式 243
5.9.1 I2C的结构 244
5.9.2 I2C模块寄存器 245
5.9.3 I2C模块操作 252
5.9.4 I2C通信举例 264
5.10 MSP430模/数转换模块 266
5.10.1 ADC12的结构 267
5.10.2 ADC12的寄存器 269
5.10.3 ADC12模块操作 274
5.10.4 ADC12应用举例 283
5.11 MSP430数/模转换模块 288
5.11.1 DAC12的结构 288
5.11.2 DAC12的寄存器 290
5.11.3 DAC12的操作 292
5.11.4 DAC12应用举例 295
第6章 MSP430单片机硬件设计及接口技术 297
6.1 MSP430F149单片机最小系统设计 297
6.1.1 单片机电源电路设计 298
6.1.2 复位电路设计 300
6.1.3 时钟电路设计 302
6.1.4 JTAG接口电路设计 302
6.2 电平转换电路设计 304
6.2.1 逻辑电平不同,接口时出现的问题 304
6.2.2 输入端ESD保护电路 304
6.2.3 CMOS器件输出端保护电路 305
6.2.4 各种电平的转换标准 306
6.2.5 MSP430与5V电平接口的4种情形 306
6.2.6 3.3V与5V电平转换 307
6.2.7 MSP430与串口接口问题 307
6.3 MSP430单片机显示器件接口设计 308
6.3.1 MSP430单片机与发光二极管接口 308
6.3.2 MSP430单片机与数码管接口 310
6.3.3 MSP430单片机与点阵LED的接口 316
6.3.4 MSP430单片机与图形液晶显示模块的接口 323
6.4 MSP430单片机键盘接口设计 343
6.4.1 独立按键式键盘 343
6.4.2 行列扫描式键盘 346
6.4.3 NX(N-1)型键盘 349
6.5 MSP430单片机与存储器的接口设计 352
6.5.1 MSP430与静态存储器SRAM的接口 352
6.5.2 MSP430单片机与动态存储器的接口 357
6.6 MSP430单片机串行通信接口 362
6.6.1 RS-232串口通信 363
6.6.2 RS-485串口通信 365
6.6.3 M-Bus通信 367
6.7 使用口线模拟I2C总线操作 372
6.7.1 I2C协议原理 372
6.7.2 24LC01B的操作 375
6.8 MSP430单片机与1-wire器件的接口 384
6.8.1 1-wire总线操作 385
6.8.2 MSP430单片机与触击式串行存储卡DS1990A的接口 389
6.8.3 MSP430单片机与温度传感器DS18B20的接口 391
6.9 MSP430单片机与实时时钟芯片DS1302的接口设计 396
6.9.1 DS1302的结构及工作原理 396
6.9.2 MSP430F149与DS1302的接口设计 399
6.10 MSP430单片机的功率接口技术 401
6.10.1 晶闸管驱动接口 402
6.10.2 继电器型驱动接口 406
6.10.3 直流电机驱动接口 407
6.11 MSP430单片机的抗干扰技术 410
6.11.1 干扰的来源与分类 410
6.11.2 单片机系统软件的抗干扰 411
6.11.3 单片机系统中硬件抗干扰设计 414
第7章 MSP430单片机应用系统设计实例 417
7.1 单片机应用系统方案设计 417
7.2 基于MSP430F149的贪吃蛇游戏机 420
7.2.1 系统硬件结构 420
7.2.2 系统软件结构 420
7.3 基于MSP430F149的FSK调制解调器 437
7.3.1 FSK调制原理 438
7.3.2 基于MSP430F149单片机的FSK调制解调器的具体实现 438
7.4 基于MSP430F149的嵌入式Web Server服务器 447
7.4.1 TCP/IP体系结构模型 447
7.4.2 以太网控制器CS8900A 449
7.4.3 嵌入式Web Server的硬件设计 450
7.4.4 嵌入式Web Server的软件设计 451
7.5 基于MSP430F149的重质油评价装置控制系统 456
7.5.1 系统结构 456
7.5.2 硬件电路结构 457
7.5.3 软件设计 459
7.6 嵌入式实时操作系统μC/OS-Ⅱ在MSP430F149上的移植 461
7.6.1 μC/OS-Ⅱ概述 461
7.6.2 μC/OS-Ⅱ的文件结构 461
7.6.3 移植的具体实现 462
附录A MSP430指令速查表 470
附录B MSP430x1xx模块空间分配 472
附录C MSP430x14x.h头文件 487
附录D 并口JTAG仿真器原理图 515
附录E ASCII字符表 516
附录F 中文字符表 517
参考文献 522