第1篇 基础知识篇 3
第1章 MSP430单片机的硬件内部结构 3
1.1 MSP430的CPU 3
1.2 存储器组织结构 4
1.3 基础时钟与低功耗 12
1.4 I/O端口 16
1.5 定时器 26
1.6 比较器 41
1.7 FLASH模块 44
1.8 USART模块 46
1.9 ADC模块 52
1.10 本章小结 58
1.11 思考练习题 58
第2章 MSP430单片机开发的C语言基础 61
2.1 C语言基本知识 61
2.1.1 标识符与关键字 61
2.1.2 数据的基本类型 62
2.1.3 C语言的运算符 64
2.1.4 程序设计的基本结构 67
2.1.5 函数 72
2.1.6 数组 76
2.1.7 指针 78
2.1.8 结构 79
2.1.9 预处理功能 82
2.2 MSP430的C语言扩展特性 84
2.2.1 MSP430的C语言的扩展概述 84
2.2.2 MSP430的C语言的关键字扩展 86
2.2.3 MSP430的#pragma编译命令 89
2.2.4 MSP430的预定义符号 93
2.2.5 MSP430的本征函数 94
2.2.6 MSP430的段定义 96
2.3 本章小结 99
2.4 思考练习题 99
第3章 MSP430单片机的开发调试环境 101
3.1 Embedded Workbench概述 101
3.2 Embedded Workbench的安装 102
3.3 Embedded Workbench的具体使用 104
3.3.1 开始创建 104
3.3.2 程序调试 111
3.3.3 程序举例 114
3.4 本章小结 117
3.5 思考练习题 117
第2篇 常用模块设计实例篇 121
第4章 通用I/O模块:扫描键盘设计实例 121
4.1 实例内容说明 121
4.2 硬件电路设计 122
4.2.1 电源电路 122
4.2.2 复位电路 122
4.2.3 键盘电路 122
4.2.4 单片机电路 123
4.3 软件设计 124
4.3.1 查询方式 124
4.3.2 中断方式 127
4.4 实例总结 129
4.5 思考练习题 129
第5章 通用I/O模块:电视遥控器的设计实例 131
5.1 实例内容说明 131
5.2 硬件电路设计 131
5.2.1 电源电路 132
5.2.2 键盘电路 132
5.2.3 红外发送电路 132
5.2.4 单片机电路 133
5.3 软件设计 134
5.3.1 初始化 134
5.3.2 键盘处理程序 134
5.3.3 发送程序 137
5.3.4 测试程序 140
5.4 实例总结 141
5.5 思考练习题 141
第6章 定时器模块:充电器设计实例 143
6.1 实例内容说明 143
6.2 硬件电路设计 144
6.2.1 BUCK转换电路 144
6.2.2 单片机电路 145
6.3 软件设计 145
6.3.1 初始化程序 146
6.3.2 采集程序 149
6.3.3 主程序 150
6.4 实例总结 152
6.5 思考练习题 152
第7章 定时器模块:电机控制设计实例 153
7.1 实例内容说明 153
7.2 硬件电路设计 154
7.2.1 电源电路 154
7.2.2 驱动电路 154
7.2.3 单片机电路 155
7.3 软件设计 156
7.3.1 初始化程序 156
7.3.2 电机驱动程序 158
7.3.3 主处理程序 164
7.4 实例总结 164
7.5 思考练习题 167
第8章 I2C模块:串行存储器接口设计实例 169
8.1 实例内容说明 169
8.2 硬件电路设计 169
8.2.1 24LC02B芯片介绍 170
8.2.2 串行存储器电路 170
8.3 软件设计 171
8.3.1 I2C协议 171
8.3.2 初始化程序 173
8.3.3 24LC02B的操作实现 175
8.3.4 测试程序 179
8.4 实例总结 181
8.5 思考练习题 181
第9章 I2C模块:利用I2C实现的多机系统实例 183
9.1 实例内容说明 183
9.2 硬件电路设计 183
9.3 软件设计 184
9.3.1 多机通信介绍 185
9.3.2 程序设计 189
9.4 实例总结 197
9.5 思考练习题 197
第10章 A/D模块:电阻测量系统设计实例 199
10.1 实例内容说明 199
10.2 硬件电路设计 199
10.2.1 电流源电路 200
10.2.2 放大器电路 200
10.2.3 跟随器电路 201
10.3 软件设计 201
10.3.1 初始化程序 202
10.3.2 A/D采集程序 204
10.3.3 测试程序 205
10.4 实例总结 208
10.5 思考练习题 208
第11章 A/D模块:称重系统设计实例 209
11.1 实例内容说明 209
11.2 硬件电路设计 210
11.2.1 全桥传感器电路 210
11.2.2 单片机电路 211
11.3 软件设计 211
11.3.1 测量分析 211
11.3.2 初始化程序 212
11.3.3 测量程序 213
11.3.4 测试程序 215
11.4 实例总结 216
11.5 思考练习题 216
第12章 比较器模块:风扇控制系统设计实例 217
12.1 实例内容说明 217
12.2 硬件电路设计 217
12.2.1 风扇接口电路 218
12.2.2 单片机电路 218
12.3 软件设计 219
12.3.1 温度采集的原理分析 219
12.3.2 温度采集程序实现 220
12.3.3 风扇控制的程序实现 224
12.3.4 测试程序 227
12.4 实例总结 228
12.5 思考练习题 228
第13章 电压检测模块:SVS设计实例 231
13.1 实例内容说明 231
13.2 硬件电路设计 231
13.2.1 告警电路 232
13.2.2 单片机电路 232
13.3 软件设计 233
13.3.1 SVS模块介绍 233
13.3.2 串行存储器操作 234
13.3.3 告警处理 238
13.4 实例总结 240
13.5 思考练习题 240
第14章 通用串口模块:PC通信系统设计实例 241
14.1 实例内容说明 241
14.2 硬件电路设计 241
14.2.1 SP3220芯片介绍 241
14.2.2 串口电路设计 242
14.3 软件设计 243
14.3.1 初始化程序 243
14.3.2 中断服务程序 244
14.3.3 测试程序 246
14.4 实例总结 249
14.5 思考练习题 249
第15章 通用串口模块:MMC接口设计实例 251
15.1 实例内容说明 251
15.2 硬件电路设计 251
15.2.1 MMC介绍 252
15.2.2 接口电路设计 253
15.3 软件设计 253
15.3.1 MMC卡操作介绍 253
15.3.2 SPI的实现 254
15.3.3 MMC卡操作程序实现 255
15.3.4 测试程序 261
15.4 实例总结 262
15.5 思考练习题 262
第16章 液晶显示模块:温度测量系统设计实例 263
16.1 实例内容说明 263
16.2 硬件电路设计 263
16.2.1 AD7416介绍 264
16.2.2 温度测量电路 264
16.2.3 LCD电路 265
16.2.4 单片机电路 265
16.3 软件设计 266
16.3.1 温度测量程序 266
16.3.2 LCD显示程序 272
16.3.3 测试程序 275
16.4 实例总结 276
16.5 思考练习题 276
第17章 液晶显示模块:实时时钟设计实例 277
17.1 实例内容说明 277
17.2 硬件电路设计 278
17.2.1 S-3530A介绍 278
17.2.2 时钟电路 279
17.2.3 LCD显示电路 279
17.2.4 单片机电路 280
17.3 软件设计 281
17.3.1 时钟程序 281
17.3.2 LCD显示程序 285
17.3.3 测试程序 287
17.4 实例总结 288
17.5 思考练习题 288
第18章 SCAN IF模块:旋转检测设计实例 289
18.1 实例内容说明 289
18.2 硬件设计 290
18.2.1 SCAN IF介绍 290
18.2.2 硬件电路设计 292
18.3 软件设计 293
18.3.1 寄存器介绍 293
18.3.2 SCAN IF相关程序实现 298
18.4 实例总结 302
18.5 思考练习题 302
第19章 SCAN IF模块:水表流量测量系统设计 305
19.1 实例内容说明 305
19.2 硬件设计 306
19.2.1 LCD显示电路 306
19.2.2 实时时钟电路 306
19.2.3 存储器电路 307
19.2.4 IC卡电路 307
19.2.5 告警电路 308
19.2.6 单片机电路 309
19.3 软件设计 310
19.3.1 I2C模块 310
19.3.2 告警处理模块 317
19.3.3 主处理模块 317
19.4 实例总结 320
19.5 思考练习题 320
第20章 存储器模块:FLASH编程实现 323
20.1 实例内容说明 323
20.2 硬件电路设计 323
20.3 软件设计 324
20.3.1 寄存器介绍 324
20.3.2 FLASH操作程序 326
20.3.3 串口程序 327
20.3.4 测试程序 329
20.4 实例总结 333
20.5 思考练习题 333
第21章 存储器模块:NAND接口设计实例 335
21.1 实例内容说明 335
21.2 硬件设计 335
21.2.1 K9F1208U0M芯片介绍 335
21.2.2 接口电路设计 336
21.2.3 单片机电路 337
21.3 软件设计 338
21.3.1 K9F1208U0M芯片操作介绍 338
21.3.2 NAND操作程序 340
21.3.3 测试程序 348
21.4 实例总结 349
21.5 思考练习题 349
第3篇 综合系统设计实例篇 353
第22章 MODEM有线采集传输平台设计实例 353
22.1 实例内容说明 353
22.2 硬件设计 354
22.2.1 电源设计 354
22.2.2 串口设计 356
22.2.3 MODEM接口设计 357
22.2.4 存储接口设计 359
22.2.5 采集模块设计 363
22.2.6 单片机模块设计 363
22.3 软件设计 364
22.3.1 串口程序设计 365
22.3.2 存储程序设计 369
22.3.3 传输程序设计 380
22.3.4 采集设计 392
22.3.5 测试程序 395
22.4 本章总结 405
22.5 思考练习题 416
第23章 GSM无线采集传输平台设计实例 417
23.1 实例内容说明 417
23.2 系统硬件设计 418
23.2.1 电源设计 418
23.2.2 串口设计 419
23.2.3 GSM模块接口设计 420
23.2.4 串行存储接口设计 422
23.2.5 采集控制模块设计 423
23.2.6 单片机模块 424
23.3 系统软件设计 425
23.3.1 串口程序设计 425
23.3.2 存储程序设计 429
23.3.3 短消息程序设计 433
23.3.4 采集控制程序设计 444
23.3.5 测试程序 446
23.4 本章总结 450
23.5 思考练习题 461
附录A MSP430F1XX单片机系列简介 463
A.1 MSP430F11X系列单片机 463
A.2 MSP430F12X系列单片机 465
A.3 MSP430F13X系列单片机 467
A.4 MSP430F14X系列单片机 471
附录B 全书思考练习题答案 477