顶部
收藏

嵌入式系统原理及应用开发技术(第2版)

“十一五”国家规划教材

作者:
桑楠
定价:
34.00元
ISBN:
978-7-04-022510-5
版面字数:
580.000千字
开本:
16开
全书页数:
395页
装帧形式:
平装
重点项目:
“十一五”国家规划教材
出版时间:
2008-01-16
读者对象:
高等教育
一级分类:
计算机/教育技术类
二级分类:
计算机科学与技术专业课程

本书以当前主流嵌入式系统技术为背景,以嵌入式系统原理为基础,以嵌入式系统开发体系为骨架,较为全面地介绍了嵌入式系统的基本概念、软硬件的基本体系结构、软硬件开发方法、相关开发工具、应用领域以及当前的一些前沿动态,为读者展示了较为完整的嵌入式系统领域概况。

本书没有累述计算机组成原理、程序设计语言、编译原理、操作系统、软件工程等技术的基本原理,而是依据嵌入式系统的特征,重点介绍上述技术原理的嵌入式应用特色,突出嵌入式系统软硬件依赖、实时、可靠等特性,从软件体系结构的角度出发,强调实时调度、Bootloader 、BSP、嵌入式实时多任务系统设计、交叉开发与仿真开发等关键技术,并特别引入了基于FPGA 的嵌入式应用设计、嵌入式GUI、嵌入式实时网络、嵌入式数据库、流媒体、功耗管理等近年来流行的新应用技术。

通过本书的学习,不但可以教会读者使用工具开发嵌入式软硬件,而且可以帮助读者从总体角度,选择适当的技术和方法,全面规划和设计嵌入式系统。

本书取材新颖、内容翔实、技术实用、系统性强,不仅可作为高等学校嵌入式应用技术课程的教材,还可供从事嵌入式产品开发的广大工程技术人员自学与参考。

  • 前辅文
  • 第1 章 嵌入式系统概论
    • 1.1 无所不在的嵌入式系统
      • 1.1.1 采样控制系统
      • 1.1.2 飞行控制系统
      • 1.1.3 信息家电
      • 1.1.4 实时信号处理系统
      • 1.1.5 汽车电子产品
      • 1.1.6 普适计算
      • 1.1.7 仿真测试
    • 1.2 嵌入式系统定义
      • 1.2.1 计算机工业的分类
      • 1.2.2 嵌入式系统
      • 1.2.3 实时系统
      • 1.2.4 嵌入式系统的实时性
    • 1.3 嵌入式系统的特征
      • 1.3.1 技术密集
      • 1.3.2 专用紧凑
      • 1.3.3 安全可靠
      • 1.3.4 多种多样
      • 1.3.5 及时响应
      • 1.3.6 成本敏感
      • 1.3.7 开发困难
      • 1.3.8 不可垄断
      • 1.3.9 其他
    • 1.4 嵌入式系统的发展历程
    • 1.5 嵌入式系统的分类
      • 1.5.1 按微处理器位数划分
      • 1.5.2 按应用类别划分
      • 1.5.3 按系统的实时性划分
      • 1.5.4 按工业界应用的复杂程度划分
    • 1.6 嵌入式系统基本结构
      • 1.6.1 嵌入式硬件组成
      • 1.6.2 嵌入式软件组成
    • 1.7 嵌入式系统的设计要求
    • 1.8 嵌入式应用开发
      • 1.8.1 嵌入式系统开发过程
      • 1.8.2 嵌入式系统设计
      • 1.8.3 嵌入式编程
      • 1.8.4 嵌入式系统测试
      • 1.8.5 嵌入式软件的重用
      • 1.8.6 嵌入式软件开发平台
    • 小结
    • 习题
    • 参考文献.
  • 第2 章 ARM 嵌入式微处理器
    • 2.1 嵌入式微处理器概述
      • 2.1.1 嵌入式硬件系统基本架构
      • 2.1.2 嵌入式微处理器的体系结构
      • 2.1.3 嵌入式微处理器的分类
    • 2.2 ARM 嵌入式微处理器体系结构
      • 2.2.1 ARM920T 的基本结构
      • 2.2.2 RISC 体系结构
      • 2.2.3 AMBA 总线
      • 2.2.4 工作状态
      • 2.2.5 微处理器模式
      • 2.2.6 寄存器结构
      • 2.2.7 存储系统
      • 2.2.8 流水线结构
      • 2.2.9 中断和异常
    • 2.3 ARM 指令系统
      • 2.3.1 ARM 指令集概述
      • 2.3.2 ARM 指令寻址方式
      • 2.3.3 ARM 指令集
      • 2.3.4 Thumb 指令
    • 2.4 基于ARM9 的S3C2410X微处理器
      • 2.4.1 存储控制器
      • 2.4.2 NAND Flash 控制器
      • 2.4.3 时钟和电源管理
      • 2.4.4 I/O 端口
      • 2.4.5 PWM 定时器
      • 2.4.6 通用异步收发器
      • 2.4.7 中断控制器
      • 2.4.8 直接存储器存取
      • 2.4.9 LCD 控制器
    • 小结
    • 思考题
    • 参考文献
  • 第3 章 基于ARM 的嵌入式系统外围硬件设计
    • 3.1 嵌入式微处理器系统硬件设计
      • 3.1.1 芯片选型原则
      • 3.1.2 电源模块设计
      • 3.1.3 时钟模块设计
      • 3.1.4 复位电路设计
    • 3.2 嵌入式存储器系统设计
      • 3.2.1 Flash 接口电路设计
      • 3.2.2 SDRAM 接口电路设计
    • 3.3 其他接口设计
      • 3.3.1 UART 串行接口
      • 3.3.2 USB 接口电路设计
      • 3.3.3 JTAG 电路以及调试方式
    • 小结
    • 思考题
    • 参考文献
  • 第4 章 嵌入式软件体系结构
    • 4.1 软件体系结构的基本概念
    • 4.2 软件体系结构的作用
      • 4.2.1 系统设计计划
      • 4.2.2 抽象管理框架
      • 4.2.3 特点
    • 4.3 软件体系结构的发展历程
    • 4.4 通用软件体系结构
      • 4.4.1 整体结构
      • 4.4.2 层次结构
      • 4.4.3 客户机/服务器结构
    • 4.5 轮询系统
      • 4.5.1 程序结构
      • 4.5.2 调度
      • 4.5.3 典型系统
    • 4.6 前后台系统
      • 4.6.1 前台系统的应用
      • 4.6.2 运行方式
      • 4.6.3 系统性能
      • 4.6.4 前后台交互
      • 4.6.5 典型系统
    • 4.7 实时多任务系统
      • 4.7.1 相关概念
      • 4.7.2 实时多任务系统与RTOS
      • 4.7.3 实时多任务系统的体系结构
      • 4.7.4 系统性能
      • 4.7.5 典型系统
    • 4.8 多处理器系统
      • 4.8.1 多处理器系统的分类
      • 4.8.2 多处理器系统的应用
      • 4.8.3 系统拓扑结构
      • 4.8.4 系统性能
      • 4.8.5 典型系统
    • 小结
    • 思考题
    • 参考文献
  • 第5 章 嵌入式实时操作系统
    • 5.1 什么是嵌入式操作系统
    • 5.2 关键术语
    • 5.3 RTOS 的特点
      • 5.3.1 及时性
      • 5.3.2 可确定性
      • 5.3.3 并发性
      • 5.3.4 高可信性
      • 5.3.5 安全性
      • 5.3.6 可嵌入性
      • 5.3.7 可剪裁性
      • 5.3.8 可扩展性
    • 5.4 RTOS 的体系结构
      • 5.4.1 整体结构
      • 5.4.2 层次结构
      • 5.4.3 微内核结构
      • 5.4.4 构件化结构
      • 5.4.5 其他体系结构
    • 5.5 RTOS 的分类
    • 5.6 实时内核
      • 5.6.1 任务管理
      • 5.6.2 任务间的通信
      • 5.6.3 中断
      • 5.6.4 时钟管理
      • 5.6.5 内存管理
    • 5.7 RTOS 扩展组件
      • 5.7.1 嵌入式GUI
      • 5.7.2 嵌入式网络
      • 5.7.3 嵌入式文件系统
      • 5.7.4 嵌入式数据库
      • 5.7.5 流媒体支持
      • 5.7.6 功耗管理
      • 5.7.7 用户接口
    • 5.8 典型的RTOS
      • 5.8.1 VxWorks
      • 5.8.2 QNX
      • 5.8.3 Windows CE
      • 5.8.4 Embedded Linux
      • 5.8.5 Symbian OS
      • 5.8.6 TinyOS
      • 5.8.7 DeltaOS
    • 5.9 RTOS 发展趋势
    • 小结
    • 思考题
    • 参考文献
  • 第6 章 板级支持包与系统引导
    • 6.1 嵌入式软件运行过程
    • 6.2 板级支持包
      • 6.2.1 BSP 的概念
      • 6.2.2 BSP 中的驱动程序
      • 6.2.3 BSP 和BIOS 的区别
      • 6.2.4 RTOS 的BSP
    • 6.3 RTOS 的引导模式
      • 6.3.1 需要Boot Loader 的引导模式
      • 6.3.2 不需要Boot Loader 的引导模式
      • 6.3.3 操作系统引导实例
    • 6.4 Boot Loader
      • 6.4.1 Boot Loader 概念
      • 6.4.2 Boot Loader 的开发
    • 小结
    • 思考题
    • 参考文献
  • 第7 章 嵌入式软件设计方法
    • 7.1 嵌入式软件工程概述
      • 7.1.1 嵌入式软件的生命周期
      • 7.1.2 并发任务
      • 7.1.3 信息隐藏
    • 7.2 嵌入式软件的分类
    • 7.3 嵌入式软件的特点
      • 7.3.1 实时性
      • 7.3.2 异步事件的并发处理
      • 7.3.3 应用/操作系统一体化
      • 7.3.4 应用可固化
      • 7.3.5 实用性
      • 7.3.6 适用性
      • 7.3.7 鲁棒性
      • 7.3.8 够用即可
      • 7.3.9 安全性
    • 7.4 嵌入式软件设计方法
      • 7.4.1 嵌入式软件开发过程
      • 7.4.2 常规设计方法
      • 7.4.3 实时多任务设计方法
      • 7.4.4 一些新的设计方法
    • 7.5 嵌入式软件设计的一些基本原则
      • 7.5.1 尽量简单
      • 7.5.2 使用静态表
      • 7.5.3 尽量减少动态性
      • 7.5.4 恰当的任务数目
      • 7.5.5 避免使用复杂算法
      • 7.5.6 使用有限状态自动机辅助设计
      • 7.5.7 面向对象设计
    • 小结
    • 思考题
    • 参考文献
  • 第8 章 嵌入式软件编程
    • 8.1 概述
    • 8.2 嵌入式程序设计语言
    • 8.3 汇编语言
      • 8.3.1 GAS 的基本风格
      • 8.3.2 与AT&T 的差异
    • 8.4 C 语言
      • 8.4.1 gcc 扩展
      • 8.4.2 C51 扩展
      • 8.4.3 浮点运算支持
    • 8.5 C 语言与汇编语言混合编程
      • 8.5.1 在线汇编
      • 8.5.2 C 语言与汇编语言的混合调用
    • 8.6 嵌入式Java
      • 8.6.1 Java 发展概况
      • 8.6.2 Java 技术框架
      • 8.6.3 嵌入式Java 程序设计
      • 8.6.4 嵌入式Java 的相关问题
      • 8.6.5 嵌入式Java 的典型应用
    • 8.7 编程规范
      • 8.7.1 模块划分和文件组织
      • 8.7.2 源文件
      • 8.7.3 头文件
      • 8.7.4 程序书写规范
      • 8.7.5 数据类型
      • 8.7.6 命名方法
      • 8.7.7 表达式和基本语句
      • 8.7.8 内存使用
    • 小结
    • 思考题
    • 参考文献
  • 第9 章 嵌入式软件开发环境
    • 9.1 概述 291__
    • 9.2 交叉开发技术
      • 9.2.1 常用的交叉开发方法
      • 9.2.2 交叉开发过程
      • 9.2.3 交叉开发环境
    • 9.3 仿真开发技术
      • 9.3.1 仿真开发的分类
      • 9.3.2 仿真开发过程
      • 9.3.3 仿真开发环境
      • 9.3.4 仿真开发环境的特点
    • 9.4 开发环境提供的主要工具
      • 9.4.1 项目管理
      • 9.4.2 配置剪裁
      • 9.4.3 源码编辑
      • 9.4.4 目标代码编译生成
      • 9.4.5 交叉调试
      • 9.4.6 测试工具
      • 9.4.7 版本管理工具
    • 9.5 GNU 的嵌入式开发环境
      • 9.5.1 gcc 编译器
      • 9.5.2 make
      • 9.5.3 gdb 调试器
    • 9.6 Wind River System 公司开发的集成开发环境
    • 9.7 仿真开发工具ARMulator
    • 小结
    • 思考题
    • 参考文献
  • 第10 章 嵌入式系统可靠性测试与评估
    • 10.1 软件测试与可靠性评估
      • 10.1.1 软件测试相关概念
      • 10.1.2 软件可靠性评估相关概念
      • 10.1.3 软件测试与软件可靠性评估的关系
    • 10.2 嵌入式软件测试
      • 10.2.1 嵌入式软件的测试阶段
      • 10.2.2 嵌入式软件测试工具分类
      • 10.2.3 有限状态机测试模型
      • 10.2.4 CodeTEST 测试工具
    • 10.3 软件可靠性测试
      • 10.3.1 软件可靠性测试概述
      • 10.3.2 软件可靠性测试的过程
      • 10.3.3 软件可靠性测试方法
    • 10.4 嵌入式软件的可靠性测试与评估
      • 10.4.1 嵌入式软件可靠性测试特点
      • 10.4.2 嵌入式软件可靠性测试方法
      • 10.4.3 嵌入式实时软件可靠性评估
    • 10.5 嵌入式系统可靠性评价
    • 10.6 嵌入式系统可靠性相关技术的进展
    • 小结
    • 思考题
    • 参考文献
  • 第11 章 前沿技术简介
    • 11.1 SoC 技术
      • 11.1.1 SoC 的产生
      • 11.1.2 SoC 的定义
      • 11.1.3 IP 核的概念与分类
      • 11.1.4 SoC 设计特点
      • 11.1.5 SoC 设计方法
      • 11.1.6 SoC 验证方法
      • 11.1.7 SoPC 技术
      • 11.1.8 SoC 的挑战和发展趋势
    • 11.2 嵌入式高可信计算技术
      • 11.2.1 可信的起源与内涵
      • 11.2.2 可信性的基本特征属性
      • 11.2.3 导致可信性降低的主要因素
      • 11.2.4 防危性、可靠性与安全性的概念及三者之间的异同
      • 11.2.5 现有的高可信保障技术
      • 11.2.6 防危核与防危壳技术
    • 小结
    • 思考题
    • 参考文献

相关图书