ARM9嵌入式系统设计基础教程


请输入要查询的词条内容:

ARM9嵌入式系统设计基础教程


《ARM9嵌入式系统设计基础教程》系统介绍了嵌入式系统的基础知识,ARM体系结构,32位RISC微处理器S3C2410A,嵌入式系统的存储器系统,嵌入式系统输入/输出设备接口,嵌入式系统总线接口等,内容丰富实用,层次清晰,叙述详尽,方便教学与自学,可作为高等院校电子信息工程、通信工程、自动控制、电气自动化、计算机科学与技术等专业进行嵌入式系统教学的教材,也可作为全国大学生电子设计竞赛培训教材,以及工程技术人员进行嵌入式系统开发与应用的参考书。

书名:ARM9嵌入式系统设计基础教程

作者:黄智伟、邓月明、王彦

ISBN:9787811243376 十位:7811243377

页数:460页

定价:¥45.00

出版社:北京航空航天大学出版社

出版时间:2008年01月

重量:0.644KG



图书目录


第1章 嵌入式系统基础知识

1.1 嵌入式系统的定义和组成

1.1.1 嵌入式系统的定义

1.1.2 嵌入式系统的发展趋势

1.1.3 嵌入式系统的组成

1.1.4 RTOS

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 DSP处理器

1.3.4 嵌入式片上系统

1.3.5 多核处理器

思考题与习题

第2章 ARM体系结构

2.1 ARM体系结构简介

2.2 ARM微处理器结构

2.2.1 ARM7微处理器

2.2.2 ARM9微处理器

2.2.3 ARM9E微处理器

2.2.4 ARM10E微处理器

2.2.5 SecurCore微处理器

2.2.6 StrongARM微处理器

2.2.7 XScale微处理器

2.3 ARM微处理器的寄存器结构

2.3.1 处理器的运行模式

2.3.2 处理器的工作状态

2.3.3 处理器的寄存器组织

2.3.4 Thumb状态的寄存器集

2.4 ARM微处理器的异常处理

2.4.1 ARM体系结构的异常类型

2.4.2 异常类型的含义

2.4.3 异常的响应过程

2.4.4 应用程序中的异常处理

2.5 ARM的存储器结构

2.6 ARM微处理器指令系统

2.6.1 基本寻址方式

2.6.2 ARM指令集

2.6.3 Thumb指令集

2.7 ARM微处理器的接口

2.7.1 ARM协处理器接口

2.7.2 ARM AMBA接口

2.7.3 ARM I/O结构

2.7.4 ARM JTAG调试接口

思考题与习题

第3章 32位RISC微处理器 S3C2410A

3.1 S3C2410A简介

3.1.1 S3C2410A的内部结构

3.1.2 S3C2410A的技术特点

3.2 S3C2410A存储器控制器

3.2.1 S3C2410A存储器控制器特性

3.2.2 S3C2410A存储器映射

3.3 复位、时钟和电源管理

3.4 S3C2410A的I/O口

3.4.1 S3C2410A的I/O口配置

3.4.2 S3C2410A的I/O口寄存器

3.5 S3C2410A的中断控制

3.5.1 ARM系统的中断处理

3.5.2 S3C2410A的中断控制器

3.5.3 S3C2410A的中断编程实例

3.6 S3C2410A的DMA控制

3.6.1 DMA工作原理

3.6.2 S3C2410A的DMA控制器

3.6.3 S3C2410A的DMA编程实例

思考题与习题

第4章 嵌入式系统的存储器系统

4.1 存储器系统概述

4.1.1 存储器系统的层次结构

4.1.2 高速缓冲存储器

4.1.3 存储管理单元

4.2 嵌入式系统存储设备分类

4.2.1 存储器部件的分类

4.2.2 存储器的组织和结构

4.2.3 常见的嵌入式系统存储器

4.3 NOR Flash接口电路

4.3.1 NOR Flash存储器Am29LV160D

4.3.2 S3C2410A与NOR Flash存储器的接口电路

4.4 NAND Flash接口电路

4.4.1 S3C2410A NAND Flash控制器

4.4.2 S3C2410A与NAND Flash存储器的接口电路

4.5 SDRAM接口电路

4.6 CF卡接口电路

4.6.1 PCMCIA接口规范

4.6.2 S3C2410A的CF卡接口电路

4.6.3 CF卡的读/写操作

4.7 SD卡接口电路

4.7.1 SD卡的接口规范

4.7.2 S3C2410A的SD卡接口电路

4.8 IDE接口电路

4.8.1 S3C2410A的IDE接口电路

4.8.2 IDE硬盘读/写操作

思考题与习题

第5章 嵌入式系统输入/输出设备接口

5.1 通用输入/输出接口

5.1.1 通用输入/输出接口原理与结构

5.1.2 S3C2410A输入/输出接口编程实例

5.2 A/D转换器接口

5.2.1 A/D转换的方法和原理

5.2.2 S3C2410A的A/D转换器

5.2.3 S3C2410A A/D接口编程实例

5.3 D/A转换器接口

5.3.1 D/A转换器的工作原理

5.3.2 S3C2410A与D/A转换器的接口电路

5.4 键盘与LED数码管接口

5.4.1 键盘与LED数码管接口基本原理与结构

5.4.2 用I/O口实现键盘接口

5.4.3 采用专用芯片实现键盘及LED接口

5.5 LCD显示接口

5.5.1 LCD显示接口原理与结构

5.5.2 S3C2410A的LCD控制器

5.5.3 S3C2410A LCD显示的编程实例

5.6 触摸屏接口

5.6.1 触摸屏工作原理与结构

5.6.2 采用专用芯片的触摸屏控制接口

5.6.3 S3C2410A的触摸屏接口电路

思考题与习题

第6章 嵌入式系统总线接口

6.1 串行接口

6.1.1 串行接口基本原理与结构

6.1.2 S3C2410A的UART

6.1.3 与 S3C2410A的UART连接的串行接口电路

6.1.4 S3C2410A的UART编程实例

6.2 I2C接口

6.2.1 I2C接口基本原理与结构

6.2.2 S3C2410A的I2C接口

6.2.3 S3C2410A的I2C接口应用实例

6.3 USB接口

6.3.1 USB接口基本原理与结构

6.3.2 S3C2410A的USB控制器

6.3.3 S3C2410A的USB接口电路与驱动程序

6.4 SPI接口

6.4.1 SPI接口基本原理与结构

6.4.2 S3C2410A的SPI接口电路

6.4.3 S3C2410A的SPI接口编程实例

6.5 PCI接口

6.5.1 PCI接口基本结构

6.5.2 PCI接口电路

6.6 I2S总线接口

6.6.1 数字音频简介

6.6.2 I2S总线结构

6.6.3 S3C2410A的I2S总线接口

6.6.4 S3C2410A的I2S总线接口电路与编程

思考题与习题

第7章 嵌入式系统网络接口

7.1 以太网接口

7.1.1 以太网基础知识

7.1.2 嵌入式以太网接口的实现方法

7.1.3 在嵌入式系统中主要处理的以太网协议

7.1.4 网络编程接口

7.1.5 以太网的物理层接口及编程

7.2 CAN总线接口

7.2.1 CAN总线概述

7.2.2 在嵌入式处理器上扩展CAN总线接口

7.2.3 S3C2410A与MCP2510的CAN通信接口电路

思考题与习题

第8章 嵌入式系统软件及操作系统基础

8.1 嵌入式软件基础

8.1.1 嵌入式软件的特点

8.1.2 嵌入式软件的分类

8.1.3 嵌入式软件的体系结构

8.1.4 嵌入式系统的设备驱动层

8.1.5 嵌入式中间件

8.2 嵌入式操作系统基础

8.2.1 嵌入式操作系统的功能

8.2.2 嵌入式操作系统的分类

8.2.3 常见的嵌入式操作系统简介

8.3 嵌入式系统的任务管理

8.3.1 单道程序设计和多道程序设计

8.3.2 进程、线程和任务243 8.3.3 任务的实现

8.3.4 任务的调度

8.3.5 实时系统调度

8.4 嵌入式系统的存储管理

8.4.1 嵌入式存储管理方式的特点

8.4.2 存储管理的实模式与保护模式

8.4.3 分区存储管理

8.4.4 地址映射

8.4.5 页式存储管理

8.4.6 虚拟页式存储管理

8.5 I/O设备管理

8.5.1 I/O编址

8.5.2 I/O设备的控制方式

8.5.3 I/O软件

思考题与习题

第9章 ARM汇编语言程序设计基础

9.1 ADS集成开发环境

9.1.1 ADS工具包的组成

9.1.2 ADS开发工具集

9.1.3 Code Warrior IDE的创建

9.1.4 AXD调试器的使用

9.2 ARM汇编伪指令

9.2.1 数据常量定义伪指令

9.2.2 数据变量定义伪指令

9.2.3 内存分配伪指令

9.2.4 汇编控制伪指令

9.2.5 其他常用的伪指令

9.3 ARM的汇编语言结构

9.3.1 ARM汇编语言程序结构

9.3.2 ARM汇编语言的语句格式

9.3.3 基于Windows下ADS的汇编语言程序结构

9.3.4 基于Linux下GCC的汇编语言程序结构

9.4 ARM汇编语言程序调试

9.4.1 ADS软件模拟环境下的程序调试

9.4.2 ADS硬件仿真器环境下的程序调试

9.4.3 ADS Wiggler调试电缆环境下的程序调试

9.4.4 Linux环境下的gdb程序调试

9.5 ARM汇编语言与C语言混合编程

9.5.1 基本的ATPCS

9.5.2 汇编程序中调用C程序

9.5.3 C程序中调用汇编程序

9.5.4 C程序中内嵌汇编语句

9.5.5 从汇编程序中访问C程序变量

思考题与习题

第10章 Bootloader设计基础

10.1 Bootloader概述

10.1.1 Bootloader 的作用

10.1.2 Bootloader的工作模式

10.1.3 Bootloader 的启动流程

10.2 S3C2410 平台下Linux的Bootloader

10.2.1 vivi

10.2.2 Uboot

10.3 其他常见的Bootloader

10.3.1 Windows 的Bootloader

10.3.2 Blob

思考与习题

第11章 Linux操作系统基础

11.1 嵌入式Linux的开发环境

11.1.1 交叉开发概述

11.1.2 桌面Linux的开发工具链

11.1.3 嵌入式Linux的交叉开发工具链

11.2 桌面Linux的安装

11.2.1 双操作系统环境

11.2.2 Cygwin模拟环境

11.2.3 VMware虚拟机环境

11.3 Linux的使用

11.3.1 Linux基本命令

11.3.2 vi编辑器的使用

11.3.3 gcc编译器

11.3.4 make工具和Makefile文件

11.4 Linux内核结构

11.4.1 核心子系统

11.4.2 设备驱动程序

11.5 Linux目录结构

11.5.1 Linux源文件的目录结构

11.5.2 Linux 运行系统的目录结构

11.6 Linux文件系统

11.6.1 文件系统与内核的关系

11.6.2 常见通用Linux文件系统

11.6.3 常见嵌入式Linux文件系统

11.6.4 根文件系统的选择

思考题与习题

第12章 嵌入式Linux软件设计

12.1 移植的基本概念

12.2 Bootloader的移植

12.2.1 关键文件的修改

12.2.2 串口设置示例

12.2.3 Bootloader的交叉编译

12.2.4 Bootloader的下载

12. 3嵌入式Linux内核的移植

12.3.1 内核移植的准备

12.3.2 关键文件的修改

12.3.3 内核的配置与裁剪

12.3.4 内核的编译

12.3.5 内核的下载

12.4 嵌入式Linux文件系统的移植

12.5 Linux下设备驱动程序的开发

12.5.1 驱动程序概述

12.5.2 重要的数据结构和函数

12.5.3 字符设备驱动程序的组成

12.5.4 动态加载方式和静态加载方式

12.5.5 字符设备驱动开发示例

12.6 应用程序开发

12.6.1 应用程序的加载方式

12.6.2 应用程序的GDB/GDBSERVER联机调试

12.6.3 字符设备应用程序的开发

思考题与习题

第13 章 图形用户接口(GUI)

13.1 图形用户接口的层次结构

13.1.1 图形基础设施

13.1.2 高级图形函数库

13.1.3 GUI窗口管理系统

13.2 桌面Linux系统GUI

13.2.1 KDE

13.2.2 GNOME

13.3 嵌入式Linux系统GUI

13.3.1 MiniGUI

13.3.2 Qtopia

13.3.3 NanoX

13.4 MiniGUI的开发初步

13.4.1 MiniGUI的开发环境

13.4.2 MiniGUI的移植

13.4.3 MiniGUI应用编程库

13.4.4 应用程序编写示例

13.5 Qt/E

13.5.1 Qt/E的应用架构

13.5.2 QVFB虚拟运行环境

13.6 Qt开发及运行环境的创建

13.6.1 Qt/E应用程序在PC机虚拟平台上的运行

13.6.2 Qt/E应用程序在嵌入式设备中的运行

13.6.3 Qtopia窗口系统在PC机虚拟平台上的运行

13.6.4 Qtopia窗口系统在嵌入式设备中的运行

13.7 Qt应用程序的开发

13.7.1 Qt/E基本控件

13.7.2 开发工具Qt Designer介绍

13.7.3 控制台上的Qt/E应用编程

13.7.4 Qtopia上的Qt/E应用编程

思考题与习题

参考文献

文章节选


本书是为高等院校电子信息工程、通信工程、自动控制、电气自动化、计算机科学与技术等专业编写的嵌入式系统设计、开发与应用的通用教材,也可作为全国大学生电子设计竞赛培训教材,以及工程技术人员进行嵌入式系统开发与应用的参考书。

本书的特点是以ARM9微处理器的S3C2410A为基础,突出嵌入式系统的基础知识,突出嵌入式系统的存储器、输入/输出接口、总线接口的电路设计与编程,突出采用ARM汇编语言和嵌入式Linux的编程方法,突出图形用户接口(GUI)工具的使用,内容丰富实用,叙述详尽清晰,方便教学与自学,与嵌入式系统实验教学结合,有利于学生掌握嵌入式系统的设计方法,培养学生综合分析、开发创新和工程设计的能力。

全书共分13章。

第1章介绍了嵌入式系统的定义和组成、嵌入式微处理器体系结构和类型。

第2章介绍了ARM微处理器结构、寄存器结构、异常处理、存储器结构、指令系统和接口。

第3章介绍了S3C2410A的存储器控制器、时钟和电源管理、I/O口、中断控制、DMA控制器的内部结构和寄存器以及编程方法。

第4章介绍了嵌入式系统存储设备分类与层次结构、NORFlash接口、NANDFlash接口、SDRAM接口、CF卡接口、SD卡接口、IDE接口的基本原理、电路结构与读/写操作方法。

第5章介绍了嵌入式系统的GPIO、A/D转换器接口、D/A转换器接口、键盘与LED数码管接口、LCD显示接口、触摸屏接口的基本原理、电路结构与编程方法。

第6章介绍了嵌入式系统的串行接口、I2C接口、USB接口、SPI接口、PCI接口、I2S总线接口的基本原理、电路结构与编程方法。

第7章介绍了嵌入式系统网络接口,包含有以太网接口、CAN总线接口的基本原理、电路结构与编程方法。

第8章介绍了嵌入式软件的特点、分类、体系结构,嵌入式操作系统的功能和分类,嵌入式系统的任务管理、存储管理、输入/输出设备管理。

第9章介绍了ADSIDE的组成与使用,ARM汇编伪指令,ARM的汇编语言结构,ARM汇编语言程序调试,ARM汇编语言与C语言混合编程等ARM汇编语言程序设计基础知识。

第10章介绍了Bootloader的作用、工作模式和启动流程,S3C2410平台下Linux的Bootloader,WindowsCE的Bootloader和Blob。

第11章介绍了嵌入式Linux的开发环境,桌面Linux的安装和使用,Linux内核结构、目录结构、文件系统等Linux操作系统基础知识。

第12章介绍了Bootloader的移植,嵌入式Linux内核和文件系统的移植,Linux下设备驱动程序的开发,应用程序开发。

第13章介绍了图形用户接口(GUI)的层次结构,桌面Linux系统GUI,嵌入式Linux系统GUI,MiniGUI的开发环境、移植、应用编程库和应用程序编写方法,Qt/Embedded,Qt开发及运行环境的创建和Qt应用程序的开发。

每章都附有思考题与习题。

本书是北京航空航天大学出版社组织出版的“十一五”高等院校规划教材系列之一。由黄智伟拟订编写了本书大纲和目录。黄智伟编写了第1~8章内容。邓月明编写了第9~13章内容。南华大学王彦副教授、朱卫华副教授、陈文光副教授、李富英高级工程师、李圣、曾力、潘策荣,南华大学电子信息工程专业04级的刘聪、李扬宗、肖志刚、汤柯夫、樊亮,通信工程专业04级的赵俊、王永栋、晏子凯、何超、万勤斌,湖南师范大学电子信息工程专业04级的王康斌,通信工程专业04级的彭德润,05级的邓伟、肖雅斌等人为本书的编写做了大量的工作,在此一并表示衷心的感谢。同时感谢湖南省教育厅科学研究项目(07C577)课题组,南华大学高等教育研究与改革课题(06Y05)对本书出版的支持。

本书在编写过程中,参考了大量的国内外著作和资料,得到了许多专家和学者的大力支持,听取了多方面的宝贵意见和建议,在此对他们表示衷心的感谢。

由于时间仓促和水平所限,本书难免有疏漏和不足之处,敬请各位读者批评指正。