[套装书]嵌入式计算与机电一体化技术:基于PIC32微控制器+FPGA应用开发和仿真(2册)

作者
[美]凯文·M. 林奇(Kevin M. Lynch) 尼古拉斯·马丘克(Nicholas Marchuk) 马修·L. 艾尔文(Matthew L. Elwin)王贞炎
丛书名
电子电气工程师技术丛书
出版社
机械工业出版社
ISBN
9781911041718
简要
简介
内容简介书籍计算机书籍 ---------------------------嵌入式计算与机电一体化技术:基于PIC32微控制器--------------------------- 本书是美国西北大学机电一体化系列课程的教材,选择PIC32MX795F512H微控制器 + NU32开发板,基础知识部分重点讲解PIC32的硬件、C语言编程以及与传感器和执行机构的接口,应用部分关注机电一体化技术,包括传感器、传动装置和电机的选择等。各章节全面融合PIC32参考手册、数据表、XC32 C编译器用户指南、Harmony帮助文档等内容,并配有丰富的教辅资源,适合PIC32初学者、Arduino爱好者以及对传感器和嵌入式控制感兴趣的技术人员阅读。 ---------------------------FPGA应用开发和仿真--------------------------- 从现代FPGA设计相关的数字电路基础和Verilog硬件描述语言开始,结合笔者多年的教学和实践经验,本书详细讲述了VerilogHDL及其仿真,业内常用IO规范和各种总线,数字逻辑在数字信号处理、数字通信和控制方向的典型功能单元,FPGA的常规结构,静态时序分析等。
目录



---------------------------嵌入式计算与机电一体化技术:基于PIC32微控制器---------------------------


前 言
第一部分 快速入门
第1章 快速入门 2
1.1 编程资源 2
1.2 编译bootloader程序 5
1.3 编译第一个程序 6
1.4 加载第一个程序 7
1.5 使用make命令 8
1.6 小结 12
延伸阅读 12
第二部分 基础知识
第2章 硬件 14
2.1 PIC32微控制器 14
2.2 NU32开发板 23
2.3 小结 26
2.4 练习题 26
延伸阅读 28
第3章 软件 29
3.1 虚拟内存映射 29
3.2 示例:simplePIC.c 30
3.3 编译过程 31
3.4 PIC32复位过程 33
3.5 理解simplePIC.c 34
3.6 引导加载程序与独立程序 43
3.7 编译小结 44
3.8 实用命令行工具 46
3.9 小结 47
3.10 练习题 47
延伸阅读 48
第4章 函数库 49
4.1 创建talkingPIC 50
4.2 NU32函数库 51
4.3 引导加载程序 52
4.4 LCD函数库 53
4.5 Microchip函数库 55
4.6 自定义函数库 56
4.7 小结 56
4.8 练习题 57
延伸阅读 57
第5章 执行时间和存储空间 58
5.1 编译器优化 58
5.2 执行时间和反汇编文件 59
5.3 存储空间和映射文件 66
5.4 小结 70
5.5 练习题 71
延伸阅读 75
第6章 中断 76
6.1 概述 76
6.2 详述 77
6.3 配置和使用中断的步骤 84
6.4 示例代码 85
6.5 小结 92
6.6 练习题 93
延伸阅读 95
第三部分 外设参考
第7章 数字输入和输出 98
7.1 概述 98
7.2 详述 100
7.3 示例代码 102
7.4 小结 103
7.5 练习题 104
延伸阅读 104
第8章 计数器/定时器 105
8.1 概述 105
8.2 详述 107
8.3 示例代码 110
8.4 小结 113
8.5 练习题 113
延伸阅读 113
第9章 输出比较 114
9.1 概述 114
9.2 详述 115
9.3 示例代码 118
9.4 小结 121
9.5 练习题 121
延伸阅读 123
第10章 模拟输入 124
10.1 概述 124
10.2 详述 127
10.3 示例代码 130
10.4 小结 135
10.5 练习题 136
延伸阅读 136
第11章 UART 137
11.1 概述 137
11.2 详述 139
11.3 示例代码 141
11.4 使用XBee模块进行无线通信 152
11.5 小结 152
11.6 练习题 153
延伸阅读 153
第12章 SPI通信 154
12.1 概述 154
12.2 详述 155
12.3 示例代码 158
12.4 小结 165
12.5 练习题 166
延伸阅读 166
第13章 I2C通信 167
13.1 概述 167
13.2 详述 169
13.3 示例代码 171
13.4 小结 186
13.5 练习题 186
延伸阅读 186
第14章 并行主端口 187
14.1 概述 187
14.2 详述 188
14.3 示例代码 189
14.4 小结 194
14.5 练习题 194
延伸阅读 194
第15章 输入捕获 195
15.1 概述 195
15.2 详述 196
15.3 示例代码 197
15.4 小结 199
15.5 练习题 199
延伸阅读 199
第16章 比较器 200
16.1 概述 200
16.2 详述 200
16.3 示例代码 202
16.4 小结 204
16.5 练习题 204
延伸阅读 204
第17章 休眠、空闲和看门狗定时器 205
17.1 概述 205
17.2 详述 206
17.3 示例代码 207
17.4 小结 209
17.5 练习题 209
延伸阅读 209
第18章 闪速存储器 210
18.1 概述 210
18.2 详述 211
18.3 示例代码 212
18.4 小结 217
18.5 练习题 217
延伸阅读 217
第19章 控制器局域网络 218
19.1 概述 218
19.2 详述 220
19.3 示例代码 228
19.4 小结 232
19.5 练习题 233
延伸阅读 233
第20章 Harmony模块及其USB接口应用 234
20.1 概述 234
20.2 框架 235
20.3 PLIB函数库 237
20.4 Harmony概念 239
20.5 驱动程序 240
20.6 系统服务程序 251
20.7 程序结构 255
20.8 USB 260
20.9 小结 277
20.10 练习题 277
延伸阅读 277
第四部分 机电一体化应用
第21章 传感器 280
21.1 接触传感器:按钮和开关 280
21.2 光敏传感器 281
21.3 转动关节的角度 284
21.4 移动关节的位置 288
21.5 加速度和角速度:陀螺仪、加速度计和惯性测量装置 289
21.6 磁场感应:霍尔效应传感器 291
21.7 距离 292
21.8 压力 293
21.9 温度 294
21.10 电流 295
21.11 GPS 296
21.12 练习题 296
延伸阅读 297
第22章 数字信号处理 298
22.1 采样信号和混叠 298
22.2 离散傅里叶变换 300
22.3 有限脉冲响应数字滤波器 306
22.4 无限脉冲响应数字滤波器 319
22.5 基于FFT的滤波器 320
22.6 PIC32的DSP函数库 322
22.7 练习题 330
延伸阅读 331
第23章 PID反馈控制 332
23.1 PID控制器 333
23.2 PID控制器的变体 335
23.3 增益调节的经验方法 336
23.4 基于模型的控制 337
23.5 小结 338
23.6 练习题 339
延伸阅读 340
第24章 LED亮度的反馈控制 341
24.1 电路的接线和测试 342
24.2 通过OC1为LED供电 343
24.3 生成开环PWM波形 343
24.4 与MATLAB建立通信 344
24.5 在MATLAB中利用数据绘图 344
24.6 写入LCD屏幕 348
24.7 读取ADC 348
24.8 PI控制 348
24.9 其他特性 349
24.10 小结 349
24.11 练习题 349
第25章 有刷永磁直流电机 350
25.1 电机的物理知识 350
25.2 控制方程 354
25.3 速度-转矩曲线 355
25.4 摩擦力和电机效率 358
25.5 电机绕组和电机常数 360
25.6 其他电机特性 361
25.7 电机数据表 362
25.8 小结 365
25.9 练习题 366
延伸阅读 370
第26章 传动装置和电机选择 371
26.1 传动装置 371
26.2 电机和减速器的选择 375
26.3 小结 377
26.4 练习题 377
延伸阅读 378
第27章 直流电机控制 379
27.1 H桥和脉宽调制 379
27.2 直流电机的运动控制 387
27.3 小结 391
27.4 练习题 391
延伸阅读 393
第28章 电机控制项目 394
28.1 硬件 394
28.2 软件概述 395
28.3 软件开发技巧 400
28.4 基本步骤 403
28.5 扩展设计 419
28.6 小结 420
28.7 练习题 420
第29章 其他执行机构 421
29.1 螺线管 421
29.2 扬声器和音圈执行机构 422
29.3 RC伺服电机 423
29.4 步进电机 424
29.5 无刷直流电机 428
29.6 线性无刷电机 439
29.7 小结 439
29.8 练习题 439
延伸阅读 440



---------------------------FPGA应用开发和仿真---------------------------


前言
第1章 数字电路基础1
1.1 模拟电路与数字电路1
1.2 二进制相关知识3
1.2.1 二进制和其他进制3
1.2.2 进制间的相互转换4
1.2.3 二进制的四则运算5
1.3 二进制在电路中的表达6
1.3.1 有限字长和补码6
1.3.2 负数、有符号数和无符号数6
1.4 门电路和基本逻辑运算10
1.4.1 非门、与门和或门11
1.4.2 与非门和或非门12
1.4.3 异或门和同或门12
1.4.4 三种表达形式的转换13
1.4.5 基本门的电路实现14
1.4.6 三态输出和漏极开路输出15
1.4.7 波形图17
1.4.8 门电路的一些非典型应用18
1.5 逻辑代数22
1.5.1 基本定律22
1.5.2 表达式的代数化简法23
1.5.3 卡诺图化简法23
1.6 基本组合逻辑24
1.6.1 编码器和译码器24
1.6.2 未定义的输入状态26
1.6.3 数据选择器27
1.6.4 延迟和竞争冒险27
1.6.5 加法器28
1.6.6 乘法器31
1.6.7 数值比较器32
1.7 锁存器32
1.7.1 SR锁存器32
1.7.2 D锁存器33
1.8 触发器34
1.8.1 D触发器、时钟和使能34
1.8.2 D触发器的异步和同步复位36
1.8.3 D触发器的建立时间、保持时间和传输延迟37
1.8.4 其他触发器38
1.9 时序逻辑40
1.9.1 移位寄存器和串-并互换40
1.9.2 延迟链42
1.9.3 分频器43
1.9.4 计数器44
1.9.5 同步时序逻辑46
1.9.6 累加器48
1.10 存储器49
1.10.1 存储器容量和类型49
1.10.2 SRAM50
1.10.3 双端口SRAM54
1.10.4 同步SRAM54
1.11 小数55
1.11.1 定点小数及其范围和误差55
1.11.2 定点小数的运算56
1.11.3 浮点小数58
第2章 Verilog HDL和SystemVerilog60
2.1 硬件描述语言简介60
2.2 设计方法和流程62
2.3 标识符和关键字63
2.4 值、数和字面量63
2.4.1 整型常数64
2.4.2 浮点常数65
2.4.3 时间常数和字符串常数65
2.5 线网66
2.6 变量67
2.7 参数和常量68
2.8 类型和位宽转换70
2.9 操作符和表达式71
2.9.1 位选取操作符74
2.9.2 位拼接和流运算符74
2.9.3 按位逻辑运算符76
2.9.4 缩减运算符76
2.9.5 移位77
2.9.6 自增赋值和自减赋值77
2.9.7 条件判断相关运算符78
2.9.8 条件运算符79
2.9.9 let语句79
2.10 结构和联合80
2.11 数组82
2.12 赋值、过程和块83
2.12.1 赋值的延迟84
2.12.2 赋值的强度85
2.12.3 流程控制语句86
2.12.4 always过程88
2.12.5 阻塞和非阻塞赋值91
2.13 模块93
2.14 接口97
2.15 生成块100
2.16 任务和函数101
2.17 包102
2.18 系统任务和函数103
2.18.1 显示相关104
2.18.2 文件相关105
2.18.3 存储器相关106
2.18.4 仿真相关107
2.18.5 错误和信息107
2.18.6 类型转换和数学函数107
2.19 编译指令108
第3章 ModelSim和仿真111
3.1 仿真和测试的相关概念111
3.2 测试代码编写112
3.2.1 时钟的产生112
3.2.2 复位的产生114
3.2.3 一般输入的产生115
3.3 ModelSim软件仿真流程118
3.3.1 主界面简介118
3.3.2 创建工程119
3.3.3 向工程中添加文件121
3.3.4 开始仿真122
3.3.5 带有信号和波形的例子124
3.4 波形和格式127
第4章 Verilog基本应用130
4.1 代码风格130
4.2 常用组合逻辑单元的描述132
4.2.1 编码器和译码器132
4.2.2 数据选择器133
4.3 常用时序逻辑单元的描述133
4.3.1 移位寄存器133
4.3.2 延迟链134
4.3.3 计数器134
4.3.4 累加器136
4.4 时钟域和使能137
4.5 跨时钟域问题138
4.5.1 域外慢速跳沿138
4.5.2 域间状态传递140
4.5.3 域间事件传递142
4.5.4 域间数据传递144
4.6 存储器及其初始化144
4.6.1 各种模式的存储器描述145
4.6.2 存储器的初始化148
4.7 用存储器实现延迟链151
4.8 单时钟FIFO152
4.9 双时钟FIFO156
4.10 用户按键和数码LED157
4.10.1 用户按键处理157
4.10.2 数码LED159
4.11 PWM和死区161
4.11.1 单端PWM161
4.11.2 差分PWM162
4.11.3 死区165
4.12 正交增量编码器接口166
4.13 有限状态机170
4.13.1 秒表例子171
4.13.2 数字示波器触发采样例子175
第5章 IO规范与外部总线182
5.1 单端信号和地182
5.2 传输线与端接184
5.3 差分信号185
5.4 高速串行接口188
5.5 UART189
5.5.1 UART规范介绍189
5.5.2 发送器的设计190
5.5.3 接收器的设计193
5.5.4 UART收发仿真195
5.6 SPI197
5.6.1 SPI规范介绍197
5.6.2 通用SPI主机设计199
5.6.3 通用SPI从机设计202
5.6.4 通用SPI主从机仿真205
5.7 I2C207
5.7.1 I2C规范介绍207
5.7.2 通用I2C主机设计211
5.7.3 通用I2C从机设计219
5.7.4 通用I2C主从机仿真224
5.8 I2S227
5.8.1 I2S接口介绍227
5.8.2 I2S收发器设计和仿真229
第6章 片上系统的内部互连232
6.1 简单存储器映射接口232
6.1.1 从接口233
6.1.2 与主机互连238
6.1.3 主接口与仿真241
6.2 流水线与流式数据245
6.3 等待、延迟和握手248
6.3.1 等待和延迟248
6.3.2 握手248
6.4 AXI4-Lite接口250
6.4.1 AXI4-Lite接口介绍250
6.4.2 从机范例252
6.4.3 主机范例255
6.4.4 主从机仿真256
6.5 AXI4接口257
6.6 AXI4-Stream接口263
6.6.1 AXI4-Stream接口介绍263
6.6.2 范例和仿真263
第7章 数字信号处理应用268
7.1 基础知识简介268
7.1.1 信号、系统和传输函数268
7.1.2 基本元件的传输函数270
7.1.3 采样率和采样定律270
7.1.4 离散量化信号的信噪比272
7.2 数值计算273
7.2.1 乘法273
7.2.2 除法275
7.2.3 平方根277
7.2.4 定点小数279
7.3 数字频率合成281
7.3.1 DDS282
7.3.2 坐标旋转机285
7.4 FIR滤波器290
7.5 IIR滤波器293
7.6 采样率变换297
7.6.1 升采样297
7.6.2 降采样298
7.6.3 插零和抽取器299
7.6.4 CIC滤波器300
7.6.5 采样率变换范例304
7.7 快速傅里叶变换308
7.7.1 多周期实现311
7.7.2 流水线实现319
7.8 PID控制器324
第8章 数字通信应用329
8.1 线性反馈移位寄存器329
8.2 循环冗余校验331
8.3 基带编解码333
8.4 基带通道的范例和仿真336
8.5 混频和相干解调339
8.6 AM和ASK340
8.6.1 调制340
8.6.2 解调341
8.6.3 调制解调仿真344
8.7 PM和PSK346
8.7.1 调制346
8.7.2 解调348
8.7.3 调制解调仿真349
8.8 FM和FSK351
8.8.1 调制351
8.8.2 解调353
8.8.3 调制解调仿真354
8.9 QPSK和QAM356
8.9.1 QAM调制357
8.9.2 QAM解调360
8.9.3 位同步和判决361
8.9.4 调制解调仿真363
8.10 载波同步和数字锁相环366
8.10.1 数字锁相环恢复载波367
8.10.2 QAM载波恢复仿真369
附录A SystemVerilog关键字373
附录B 全书模块依赖关系377



有问题微信扫码联系

推荐

Understand China
桂ICP备20004708号-4