| 前言第1章 嵌入式系统基础1.1 嵌入式系统1.1.1 嵌入式系统基本概念1.1.2 嵌入式系统的特点1.1.3 嵌入式系统的分类1.2 嵌入式系统的组成1.2.1 嵌入式处理器1.2.2 嵌入式外围设备1.2.3 常见嵌入式系统平台1.2.4 嵌入式操作系统1.2.5 嵌入式应用软件1.3 嵌入式系统学习开发入门1.4 嵌入式系统的发展趋势1.5 嵌入式系统设计流程本章小结第2章 ARM微处理器概述2.1 ARM起源和发展2.2 ARM微处理器的应用领域及特点2.2.1 ARM微处理器的应用领域2.2.2 ARM微处理器的特点2.3 ARM微处理器系列2.3.1 ARM7微处理器系列2.3.2 ARM9微处理器系列2.3.3 ARM9E微处理器系列2.3.4 ARM10E微处理器系列2.3.5 SecurCore微处理器系列2.3.6 Intel的StrongARM微处理器系列2.3.7 Intel的Xscale微处理器2.4 ARM微处理器结构2.4.1 RISC体系架构2.4.2 ARM微处理器的寄存器结构2.4.3 ARM微处理器的指令结构2.5 ARM微处理器的应用选型本章小结第3章 ARM指令集3.1 ARM处理器以及相对应的寄存器3.2 ARM处理器的9种寻址方式3.3 ARM指令集3.3.1 一般格式3.3.2 ARM存储器访问指令3.3.3 ARM数据处理指令3.3.4 ARM跳转指令3.3.5 ARM协处理器指令3.3.6 其他指令3.3.7 ARM伪指令3.4 Thumb指令集3.4.1 Thumb指令集与ARM指令集的区别3.4.2 数据处理指令3.4.3 Thumb存储器访问指令3.4.4 Thumb数据处理指令3.5 伪指令3.5.1 符号定义伪指令3.5.2 数据定义伪指令3.5.3 报告伪指令3.5.4 汇编控制伪指令3.5.5 其他伪指令3.5.6 ARM伪指令3.5.7 Thumb伪指令本章小结第4章 ARM开发板介绍与应用举例4.1 S3C24104.1.1 S3C2410简介4.1.2 嵌入式系统的程序设计方法4.2 处理器工作模式4.2.1 概述4.2.2 指令和操作模式4.2.3 寄存器4.2.4 程序寄存器状态4.3 看门狗4.4 MMU——存储器管理单元本章小结第5章 ARM程序设计基础5.1 ARM汇编器所支持的伪指令5.1.1 符号定义(Symbol Definition)伪指令5.1.2 数据定义(Data Definition)伪指令5.1.3 汇编控制(Assembly Contr01)伪指令及宏指令5.1.4 其他常用的伪指令5.2 汇编语言的语句格式5.2.1 在汇编语言程序中常用的符号5.2.2 汇编语言程序中的表达式和运算符5.3 汇编语言的程序结构5.3.1 ARM汇编中的文件格式5.3.2 ARM汇编语言语句格式5.3.3 ARM汇编语言编程的重点5.4 汇编语言的程序结构5.4.1 汇编语言的子程序调用5.4.2 汇编语言程序示例5.5 嵌入式C语言程序设计基础5.5.1 C语言“预处理伪指令”在嵌入式程序设计中的应用5.5.2 嵌入式程序设计中的函数及函数库5.5.3 汇编语言与C/C++语言的混合编程5.5.4 C语言和ARM汇编程序间相互调用本章小结第6章 搭建交叉编译环境6.1 嵌入式L,inux开发环境构建6.2 Cygwin简介6.3 虚拟机6.4 开发环境6.4.1 Linux下的C语言开发环境6.4.2 交叉编译工具6.4.3 ELDK交叉编译环境简介6.5 移植Linux至ARM嵌入式处理器6.5.1 简介6.5.2 移植6.5.3 移植Linux到ARM平台6.5.4 开机程序与系统初始化6.6 基于ADS的开发环境与实验介绍6.6.1 ADS1.2 集成开发环境简介6.6.2 利用Helloworld来学习使用ARMSYS6.6.3 编写好源程序代码6.6.4 使用CodeWarrior建立工程并进行编译6.6.5 使用AXD进行仿真调试6.6.6 USB口下载工具6.6.7 代码固化本章小结第7章 Boot Loader与U-Boot7.1 Boot Loader概述7.1.1 Boot Loader概念7.1.2 Boot Loader位置7.1.3 Boot Loader启动过程7.1.4 总结7.2 常用的BootLoader7.2.1 Blob7.2.2 Armboot7.2.3 U-Boot简介7.2.4 U-Boot源代码目录结构7.2.5 U-Boot的特点7.2.6 U-Boot结构7.2.7 U-Boot移植相关文件7.3 U-Boot启动分析7.4 U-Boot常用命令7.4.1 移植概念7.4.2 Linux与移植相关内核结构7.4.3 Linux内核的配置7.5 嵌入式Linux操作系统移植7.5.1 根目录7.5.2 arch目录7.5.3 arch/atm/boot目录7.5.4 setup.c目录7.5.5 外设及设备驱动移植7.6 Linux启动分析7.7 编译Linux内核7.7.1 建立依存关系7.7.2 建立内核7.7.3 建立模块7.7.4 安装内核7.8 U-Boot在44BOX开发板上的移植以及代码分析本章小结第8章 内核移植8.1 移植的含义8.2 移植的具体实现8.3 完整系统的构成8.4 实际操作本章小结第9章 文件系统及其制作9.1 文件系统(File system)9.1.1 简介9.1.2 嵌入式文件系统9.2 根文件系统9.2.1 根文件系统的组成9.2.2 创建包含所有文件的目录9.2.3 生成一个ramdisk9.3 用busybox制作嵌入式IAnux的文件系统9.3.1 busybox简介9.3.2 编译busybox9.3.3 完善文件系统9.3.4 测试新的文件系统9.4 相关的命令和操作9.4.1 在已建好的文件系统上进行修改9.4.2 自己建立根文件系统9.4.3 自己建立根文件系统本章小结第10章 Makofile与内核配置实例10.1 概述10.2 手动建立Makefile简单实例解析10.3 自己写Makefile10.4 Makefile总述10.4.1 Makefile的主要内容10.4.2 Makefile的文件名10.4.3 引用其他的Makefile10.4.4 环境变量Makefiles10.4.5 make的工作方式10.5 书写规则10.6 书写命令10.7 使用变量10.8 使用条件判断10.9 使用函数10.10 make的运行10.11 隐含规则10.11.1 使用隐含规则10.11.2 隐含规则一览10.11.3 隐含规则使用的变量10.11.4 隐含规则链10.11.5 定义模式规则10.11.6 老式风格的“后缀规则”10.11.7 隐含规则搜索算法10.12 使用make更新函数库文件本章小结第11章 嵌入式Linux驱动开发11.1 编写Linux设备驱动程序简介11.1.1 Linux device driver的概念11.1.2 编写Linux操作系统下的设备驱动程序实例分析11.1.3 设备驱动程序中的一些具体问题11.2 字符设备驱动编写11.3 LCD驱动编写实例11.3.1 LCD工作原理11.3.2 LCD驱动实例11.4 键盘驱动实现11.4.1 键盘工作原理11.4.2 键盘驱动综述11.4.3 键盘驱动流程11.5 驱动的移植本章小结第12章 基于PXA255开发平台的开发流程12.1 平台的选择12.1.1 软件平台的选择——操作系统12.1.2 交叉编译与链接12.1.3 远程调试12.2 PXA255开发平台介绍12.2.1 Xscale系统结构12.2.2 PXA255处理器结构与特性12.2.3 Xsbase255开发系统12.2.4 开发环境12.2.5 Boot Loader与内核12.2.6 实际操作本章小结参考文献 |
商品评论(0条)