嵌入式系统技术 第2版PDF电子书下载
- 电子书积分:18 积分如何计算积分?
- 作 者:张晓林主编;张展,周强,曹向荣等编著
- 出 版 社:北京:高等教育出版社
- 出版年份:2017
- ISBN:9787040473285
- 页数:634 页
上篇 2
第一章 概况 2
1.1 嵌入式系统的基本概念 2
1.1.1 嵌入式系统的概念和基本组成 2
1.1.2 嵌入式系统发展新趋势和新技术 4
1.2 嵌入式处理器 5
1.2.1 冯诺依曼结构与哈佛结构 6
1.2.2 CISC与RISC 7
1.2.3 流水线技术 11
1.2.4 信息存储的字节顺序 12
1.2.5 基于ARM架构的嵌入式处理器 14
1.2.6 基于MIPS架构的嵌入式微处理器 15
1.2.7 基于PowerPC架构的嵌入式微处理器 16
1.2.8 数字信号处理器(DSP) 18
1.2.9 嵌入式微控制单元(MCU) 18
1.2.10 嵌入式SoC 19
1.2.11 嵌入式处理器的发展趋势 20
1.3 嵌入式系统中的操作系统(EOS) 20
1.3.1 嵌入式Linux操作系统 20
1.3.2 Windows CE操作系统 22
1.3.3 VxWorks操作系统 24
1.3.4 其他嵌入式操作系统 25
1.3.5 嵌入式实时操作系统的发展前景 25
1.4 嵌入式系统的性能评价 26
1.4.1 度量项目 26
1.4.2 评价方法 27
1.4.3 嵌入式系统处理器评估的主要指标 29
思考题 30
第二章 系统设计与实现的方法 31
2.1 嵌入式系统总体设计方案 31
2.1.1 嵌入式系统开发流程及特点 31
2.1.2 嵌入式硬件系统开发 34
2.1.3 嵌入式软件系统开发 35
2.2 嵌入式系统中的调试与测试技术 40
2.2.1 嵌入式系统硬件的调试与测试技术 41
2.2.2 嵌入式系统软件的调试与测试技术 48
思考题 57
第三章 ARM体系结构与编程方法 58
3.1 ARM处理器概述 58
3.1.1 ARM处理器特点 58
3.1.2 ARM处理器的版本简介 59
3.1.3 ARM处理器的应用选型 64
3.2 ARM体系结构 67
3.2.1 ARM处理器的工作模式和指令状态 67
3.2.2 ARM寄存器 69
3.2.3 ARM体系的异常中断 72
3.2.4 ARM处理器的寻址方式 76
3.3 ARM编程方法 78
3.3.1 ARM指令概述 78
3.3.2 ARM汇编程序设计 88
3.3.3 ARM混合编程 99
思考题 108
第四章 X86体系结构 109
4.1 X86的发展历程 109
4.2 X86体系结构的特点 110
4.2.1 X86的体系组成 110
4.2.2 微处理器的类型和特点 113
4.2.3 主板和芯片组的类型和特点 122
4.2.4 存储器的类型和特点 128
4.2.5 外部接口的类型和特点 131
4.3 X86的指令体系 135
4.3.1 X86代码段类型和存储地址 135
4.3.2 指令的格式 135
4.4 X86的发展趋势 136
思考题 136
第五章 Intel移动芯片技术 138
5.1 Intel移动处理器架构 138
5.1.1 Intel Haswell微架构 138
5.1.2 Intel Atom微架构 140
5.1.3 Silvermont微架构 142
5.2 Atom Clover trail处理器 144
5.3 Bay trail处理器 145
5.4 14nm级Cherry trail处理器 146
5.5 Quark处理器 147
5.5.1 Galileo(伽利略)平台简介 148
5.5.2 Edison(爱迪生)平台简介 149
思考题 150
第六章 嵌入式系统中的硬件设计技术 151
6.1 嵌入式系统硬件设计概述 151
6.2 嵌入式系统的数字技术基础 151
6.2.1 组合逻辑电路基础 152
6.2.2 时序逻辑电路 157
6.2.3 总线电路及信号驱动 159
6.2.4 电平转换电路 162
6.2.5 可编程逻辑器件基础 165
6.3 电路硬件设计基础 167
6.3.1 电路设计 167
6.3.2 PCB电路设计 169
6.4 嵌入式系统电源设计技术 174
6.4.1 电源接口技术 174
6.4.2 电源管理技术 176
6.5 嵌入式系统中的存储系统设计 179
6.6 嵌入式系统中的总线技术 191
6.6.1 UART与RS-232C 193
6.6.2 USB总线及其体系结构 201
6.6.3 PCI局部总线介绍 208
6.6.4 VME总线 218
6.7 EDA技术在嵌入式系统硬件设计中的应用 221
6.7.1 EDA设计技术 221
6.7.2 ESDA技术的基本特征 221
6.7.3 EDA技术的基本设计方法 223
6.8 电路可测性设计与抗干扰设计 224
6.8.1 电路测试原理与可测性设计 224
6.8.2 硬件抗干扰设计 225
思考题 228
第七章 嵌入式处理器与SoC设计技术 229
7.1 SoC片上系统简介 229
7.1.1 SoC的定义及特点 229
7.1.2 SoC的结构特点 233
7.1.3 SoC设计简介 235
7.1.4 SoC一体化设计理念 239
7.1.5 SoC的发展展望 240
7.2 处理器的SoC设计 242
7.2.1 主要设计语言 242
7.2.2 Leon系列处理器的设计 251
7.2.3 SPARC V8 255
思考题 259
第八章 嵌入式Linux操作系统 260
8.1 Linux内核介绍 260
8.1.1 操作系统和内核概述 260
8.1.2 Linux内核特点 262
8.1.3 Linux内核版本 262
8.2 Linux进程 263
8.2.1 Linux进程管理 263
8.2.2 Linux进程调度 269
8.3 Linux系统调用 273
8.3.1 应用编程接口 273
8.3.2 系统调用 274
8.4 Linux中断机制 277
8.4.1 Linux中断机制介绍 278
8.4.2 中断处理上半部 279
8.4.3 中断处理下半部 282
8.5 Linux内核同步机制 288
8.5.1 内核同步基础 288
8.5.2 内核同步方法 292
8.6 Linux内存管理 304
8.6.1 页和区 304
8.6.2 slab分配器 308
8.6.3 栈上静态内存分配 310
8.7 虚拟文件系统 310
8.7.1 文件系统抽象层 311
8.7.2 VFS对象及其数据结构 312
8.7.3 Linux的文件系统 318
思考题 318
第九章 VxWorks实时操作系统 319
9.1 VxWorks简介 319
9.2 VxWorks和Wind内核 320
9.2.1 VxWorks操作系统的基本结构 320
9.2.2 VxWorks实时性 322
9.2.3 Wind内核与任务机制 324
9.3 VxWorks的板级支持包 339
9.3.1 VxWorks的板级支持包BSP概述 339
9.3.2 BSP的职责 340
9.4 VxWorks启动过程介绍 342
9.5 VxWorks集成开发环境 344
9.5.1 Tornado嵌入式开发系统简介 344
9.5.2 Workbench嵌入式开发系统简介 347
9.6 VxWorks图形界面设计 350
9.6.1 WindML2.0简要介绍 350
9.6.2 Zinc介绍 352
9.7 VxWorks网络通信 355
9.7.1 BSD Socket 356
9.7.2 网络通信程序设计 358
思考题 361
第十章 嵌入式GUI系统 362
10.1 嵌入式GUI系统概述 362
10.1.1 嵌入式GUI的基本特征 362
10.1.2 嵌入式系统常用GUI 363
10.1.3 嵌入式GUI的发展趋势 364
10.2 嵌入式GUI实现 365
10.2.1 嵌入式GUI总体设计 365
10.2.2 MiniGUI体系结构分析 366
10.2.3 Qtopia Core体系结构分析 370
10.2.4 其他嵌入式GUI 375
10.3 关于嵌入式GUI的其他问题 379
10.3.1 多语言支持 379
10.3.2 嵌入式高级图形窗口处理技术 380
10.3.3 触摸屏操作 382
思考题 384
下篇 386
实验一 基础实验——Linux开发环境搭建 386
1.1 嵌入式系统开发环境 386
1.2 实验表单 386
1.3 附加说明 387
1.3.1 实验所需软件 387
1.3.2 使用vi编辑器修改配置文件 389
实验二 基础实验——Uboot编译与烧写 392
2.1 Uboot简介 392
2.2 实验表单 392
2.3 附加说明 393
2.3.1 Uboot目录结构 393
2.3.2 Uboot配置与编译 393
实验三 基础实验——内核原理与编译 395
3.1 Linux内核裁剪与编译 395
3.1.1 Linux内核简介 395
3.1.2 Linux内核编译 397
3.2 实验表单 398
3.3 附加说明 399
3.3.1 Linux内核配置 399
3.3.2 Linux内核编译配置选项简介 399
3.3.3 Linux内核编译 402
3.3.4 Linux内核源码结构 402
实验四 基础实验——文件系统编译 404
4.1 文件系统 404
4.1.1 Linux文件系统简介 404
4.1.2 文件系统构建工具 404
4.2 实验表单 404
4.3 附加说明 405
实验五 综合实验——Qt移植及GUI程序设计实验 409
5.1 Qt简介 409
5.1.1 关于Qt 409
5.1.2 Qt的基本概念和编程方法 409
5.1.3 Qt的一个中心特征——信号和槽(signal&slot)机制 409
5.1.4 信号 410
5.1.5 槽 411
5.2 Qt Creator简介 411
5.2.1 关于Qt Creator 411
5.2.2 用Qt Creator创建图形用户界面 412
5.3 实验表单 417
5.4 附加说明 418
5.4.1 移植的Qt库的安装及镜像制作 418
5.4.2 编译Qt库并安装Qt Creator 420
5.4.3 安装NFS文件系统 421
5.4.4 虚拟机ping通开发板 421
实验六 综合实验——MPlayer播放器的移植 423
6.1 MPlayer简介 423
6.2 实验表单 423
6.3 附加说明 424
6.3.1 ARM-Linux-gcc交叉编译环境的搭建 424
6.3.2 配置和编译libmad库 427
6.3.3 配置和编译MPlayer 430
6.3.4 安装NFS文件系统 432
6.3.5 计算机、虚拟机ping通开发板 434
实验七 综合实验——基于QEMU的指令模拟器实验 439
7.1 QEMU简介 439
7.2 实验表单 439
7.3 附加说明 440
7.3.1 安装QEMU模拟器 440
7.3.2 编译并在QEMU上运行Uboot 441
7.3.3 编译并运行Linux 442
7.3.4 在模拟目标机(Linux系统)中运行应用程序 445
实验八 综合实验——基于Intel Edison IOT开发板的图像处理实验 448
8.1 实验简介 448
8.1.1 Intel Edison物联网/智能硬件开发板简介 448
8.1.2 OpenCV开源计算机视觉库 448
8.1.3 UVC video 449
8.1.4 Python编程语言 449
8.1.5 PuTTY终端软件 449
8.2 实验表单 450
8.3 附加说明 451
8.3.1 WinSCP文件传输软件简介 451
8.3.2 通过串口连接至Edison 452
8.3.3 查看Intel Edison的IP地址并通过WiFi登录PuTTY和SCP服务器 454
8.3.4 编译运行OpenCV示例程序——直方图均衡 456
8.3.5 将处理后的图片通过邮件进行发送 457
8.3.6 Intel Edison上安装OpenCV教程 459
实验九 综合实验——基于Intel Edison IOT开发板的视频串流实验 460
9.1 实验简介 460
9.1.1 实验简介 460
9.1.2 FFmpeg与FFserver简介 460
9.2 实验表单 461
9.3 附加说明 462
9.3.1 安装FFmpeg 462
9.3.2 编写FFserver配置文件 463
9.3.3 启动服务器并启动串流 466
9.3.4 通过Windows Media Player观看直播 467
实验十 综合实验——基于Android的越界报警实验 468
10.1 Android简介 468
10.2 实验表单 469
10.3 附加说明 470
10.3.1 搭建Android开发环境 470
10.3.2 移植OpenCV到Android 473
10.3.3 设计主程序 474
10.3.4 实现运动目标越界检测 475
实验十一 综合实验——基于LEON3的SoC一体化平台设计 479
11.1 实验简介 479
11.2 实验表单 480
11.3 附加说明 481
11.3.1 搭建LEON3 SoC设计平台 481
11.3.2 快速开发流程 483
11.3.3 Cygwin的安装和配置说明 487
11.3.4 GRTools的安装和配置说明 488
11.3.5 GRLIB的安装和配置说明 489
11.3.6 Quartus的安装说明 489
11.3.7 应用举例——“跑马灯”程序 490
实验十二 综合实验——VxWorks实时操作系统实验 497
12.1 引言 497
12.2 基础知识 497
12.2.1 VxWorks操作系统主要功能结构及其开发环境 497
12.2.2 WindML 498
12.2.3 套接字socket 498
12.2.4 串口通信 499
12.3 建立VxWorks开发环境 499
12.3.1 先期准备工作 499
12.3.2 编译网卡驱动 500
12.3.3 修改配置文件 500
12.3.4 编译Bootrom和VxWorks映像 501
12.3.5 创建引导软盘 502
12.3.6 建立调试环境配置FTP服务器 502
12.3.7 创建VxWorks系统 502
12.3.8 配置Target Server 503
12.4 Vxsim中WindML的调试 504
12.4.1 配置并编译WindML 504
12.4.2 建立一个bootable image工程 504
12.4.3 配置Target Server 505
12.4.4 vxsim launch 505
12.4.5 运行测试程序 505
12.5 VxWorks通信回环 506
12.5.1 TCP服务端的建立 506
12.5.2 串口通信的建立 507
12.5.3 环境配置 508
12.5.4 通信回环工程建立 508
12.6 实验表单 512
实验十三 专题实验——电子飞行仪表系统 514
13.1 概述和系统方案论证 514
13.1.1 题目概述 514
13.1.2 性能指标 515
13.1.3 方案论证 516
13.2 电子综合显示和告警系统 517
13.2.1 设计指标 517
13.2.2 电子综合显示与告警系统的框架分析 518
13.2.3 电子综合显示系统的图形设计 519
13.2.4 告警系统的设计 523
13.3 飞行数据采集系统软硬件设计 525
13.3.1 数据采集系统技术指标的提出 525
13.3.2 对飞行参数数据源的分析 526
13.3.3 方案论证和比较 526
13.3.4 采集系统的硬件设计 528
13.3.5 采集系统的软件设计 528
13.4 数据通信系统的设计与实现 530
13.4.1 概述 530
13.4.2 数据通信的方案设计 530
13.4.3 数据通信的实现原理 531
13.4.4 帧格式和数据的提取 532
13.5 传感器和信号调理系统的实现 534
13.6 EFIS系统的扩展功能——黑匣子 534
13.7 EFIS系统测试和分析 535
13.7.1 测试方案概述 535
13.7.2 测试设备 535
13.7.3 测试方案和结果分析 536
13.8 总结 541
实验十四 专题实验——智能家居综合系统 543
14.1 系统需求分析 543
14.2 系统开发平台 543
14.3 系统架构设计 544
14.4 系统级实现 545
14.5 软件实现 547
14.5.1 移植Qt/Embedded 547
14.5.2 图形界面实现 548
14.5.3 无线音乐点播 551
14.5.4 中文化以及短信收发 551
14.6 驱动程序实现 555
14.6.1 嵌入式系统驱动程序概述 555
14.6.2 驱动程序开发策略 556
14.6.3 U盘驱动开发 556
14.6.4 无线网卡驱动开发 557
14.6.5 MMC卡驱动程序开发过程 560
14.6.6 蓝牙传输卡开发过程 562
14.7 外围硬件系统实现 563
14.7.1 外围硬件方案论证以及设计目标 563
14.7.2 外围硬件实现原理 563
14.7.3 外围硬件系统软件实现 564
14.7.4 功能总述 567
14.7.5 程序运行热点分析 568
实验十五 专题实验——光传感自适应投影系统 569
15.1 系统概述 569
15.2 系统开发平台 570
15.3 系统架构设计 571
15.4 系统详细设计 572
15.4.1 投影定位方案设计 572
15.4.2 定位编码方案 573
15.4.3 通信方案 575
15.4.4 图像变换方案 575
15.5 外围硬件系统设计 577
15.5.1 外围硬件方案论证以及设计目标 577
15.5.2 外围硬件实现原理 578
15.5.3 外围电路原理图 578
15.6 功能实现 580
15.6.1 屏幕实时转映 580
15.6.2 动态追踪调节 580
15.6.3 手持单点调节 580
15.6.4 立体素模着色 580
15.6.5 双投影立方体整体着色 581
15.6.6 平面镜反射投影 581
15.6.7 单投影平面镜素模整体着色 581
15.6.8 墙壁立方投影 581
15.6.9 屏幕拼接 582
15.7 系统测试及优化 582
15.7.1 系统测试方案 582
15.7.2 系统功能测试及数据 582
15.7.3 系统性能测试及数据 582
15.7.4 硬件优化可能性 583
15.7.5 结果分析 583
15.8 系统创新总结 583
15.8.1 新型的定位技术 583
15.8.2 新的投影仪图像自动适应方案 583
15.8.3 投影仪的新型应用 584
附录 586
附录一 MX1ADS Linux系统使用手册 586
1.1 前言 586
1.2 MX1ADS使用须知 586
1.2.1 软件资源 586
1.2.2 硬件资源 587
1.2.3 电缆连接 587
1.2.4 Linux系统安装方法 587
1.2.5 网络配置 593
1.2.6 挂载NFS分区和RAMFS分区 594
1.2.7 加载QTOPIA应用程序 594
1.2.8 USB Client 595
1.2.9 键盘 596
1.2.10 立体声音频 596
1.2.11 MMC卡 596
1.2.12 电源管理 597
1.2.13 CMOS传感器 597
1.2.14 MMA模块 598
1.2.15 PWM模块 600
1.2.16 演示程序清单 601
1.2.17 设备文件清单 601
1.3 构建MX1ADS平台的Linux系统 602
1.3.1 安装工具链 602
1.3.2 由源代码建立MX1ADS启动加载程序 603
1.3.3 由源代码编译Linux内核 603
1.3.4 创建JFFS2文件系统镜像 604
附录二 MX1ADS硬件使用手册 606
2.1 概述 606
2.1.1 总述 606
2.1.2 功能部件 606
2.1.3 系统与使用需求 606
2.1.4 MX1ADS结构图 607
2.1.5 LCD显示屏板结构图 608
2.1.6 规格说明 608
2.2 MX1ADS结构与操作 609
2.2.1 板级开关 609
2.2.2 MX1ADS使用方法 611
2.2.3 板上接口的使用 618
2.2.4 附加模块的接口和使用 619
2.3 配套信息 619
2.3.1 UART接口 619
2.3.2 MultiICE接口 620
2.3.3 以太网接口 621
2.3.4 USB接口 622
2.3.5 LCD显示屏接口 622
2.3.6 SIM卡接口 623
2.3.7 记忆棒接口 624
2.3.8 SD/MMC接口 625
2.3.9 蓝牙接口 626
2.3.10 CSI图像传感器接口 626
英文缩略语对照表 628
参考文献 632
- 《管理信息系统习题集》郭晓军 2016
- 《信息系统安全技术管理策略 信息安全经济学视角》赵柳榕著 2020
- 《系统解剖学速记》阿虎医考研究组编 2019
- 《慢性呼吸系统疾病物理治疗工作手册》(荷)瑞克·考斯林克(RikGosselink) 2020
- 《社会文化系统中的翻译》姜秋霞,杨正军 2019
- 《中国生态系统定位观测与研究数据集 森林生态系统卷 云南西双版纳》邓晓保·唐建维 2010
- 《物联网与嵌入式技术及其在农业上的应用》马德新 2019
- 《大气氮沉降及其对生态系统的影响》方琨,王道波 2019
- 《学校教育指标系统的构建》杨向东著 2019
- 《系统故障 诗歌与影像》(中国)梁小曼 2019
- 《断陷湖盆比较沉积学与油气储层》赵永胜等著 1996
- 《高考快速作文指导》张吉武,鲍志伸主编 2002
- 《建筑施工企业统计》杨淑芝主编 2008
- 《钒产业技术及应用》高峰,彭清静,华骏主编 2019
- 《近代旅游指南汇刊二编 16》王强主编 2017
- 《汉语词汇知识与习得研究》邢红兵主编 2019
- 《黄遵宪集 4》陈铮主编 2019
- 《孙诒让集 1》丁进主编 2016
- 《近代世界史文献丛编 19》王强主编 2017
- 《激光加工实训技能指导理实一体化教程 下》王秀军,徐永红主编;刘波,刘克生副主编 2017
- 《全国高等中医药行业“十三五”创新教材 中医药学概论》翟华强 2019
- 《培智学校义务教育实验教科书教师教学用书 生活适应 二年级 上》人民教育出版社,课程教材研究所,特殊教育课程教材研究中心编著 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《习近平总书记教育重要论述讲义》本书编写组 2020
- 《办好人民满意的教育 全国教育满意度调查报告》(中国)中国教育科学研究院 2019
- 《高等数学试题与详解》西安电子科技大学高等数学教学团队 2019
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《教育学考研应试宝典》徐影主编 2019
- 《语文教育教学实践探索》陈德收 2018
- 《家庭音乐素养教育》刘畅 2018