本书以嵌入式ARM9内核为切入点,讲述具有MMU(内存管理单元)管理能力的ARM嵌入式系统应用技术开发。全书共五篇,分别是第一篇主要介绍openSUSE Linux 操作系统的安装和使用;第二篇重点介绍基于ARM9的嵌入式Linux 2. 6.x内核的配置及应用开发;第三篇主要讲述Qt应用与开发;第四篇重点讲述Android应用与开发;第五篇根据前四篇学习的知识,介绍两个嵌入式项目设计实例。全书紧跟最新技术发展,注重实践、由浅入深、分步系统地阐述嵌入式系统应用开发的全过程,是嵌入式系统应用开发学习的入门教程。
样章试读
目录
目录 前言 第一篇 openSUSE Linux操作系统 第1章 openSUSE 11.3 3 1.1安装虚拟机 3 1.2 安装openSUSE 11.3 3 1.3 0penSUSE 11.3系统配置 11 1.3.1 IP地址配置 12 1.3.2 NFS服务器安装 14 1.3.3 Linux软件开发环境配置 15 1.3.4 桌面配置 15 第2章 Linux操作系统结构 17 2.1 文件系统层次结构 17 2.2 文件系统层次标准FHS 18 2.3 文件类型 21 2.4 终端启动 24 2.5 Shell 24 2.6 常用文件系统 26 2.7 硬盘分区 30 第3章 Linux常用命令 33 3.1 基本命令 33 3.2 扩展命令 35 3.3 软硬盘及光驱的使用 36 3.4 GCC与GDB 37 3.4.1 GCC 37 3.4.2 GDB 38 3.5 VMware Tools的安装 38 思考题 42 附录1 Linux简介 43 第二篇 嵌入式应用与开发 第4章 ARM 9开发板 49 4.1 开发板简介 49 4.2 开发板硬件资源 49 4.3 Linux系统特性 51 4.4 开发板的微处理器及接口资源 52 4.4.1 微处理器 53 4.4.2 串口 58 4.4.3 USB接口 59 4.4.4 CJPIO 59 4.4.5 系统总线接LI 61 4.4.6 A/D输入测试 62 4.4.7 以太网口 62 4.4.8 LCD接口 63 4.4.9 JTACJ接口 64 第5章 Linux图形界面Qtopia 2.2.0 65 5.1 播放MP3 65 5.2 图片浏览 66 5.3 命令终端 67 5.4 网络设置 68 5.5 Ping测试 68 5.6 A/D转换 69 第6章 建立嵌入式开发环境 71 6.1 PC机与开发板硬件连接 71 6.2 Windows XP与开发板之间的通信 71 6.2.1 串口通信 71 6.2.2 USB口通信 79 6.3 openSUSE Linux与开发板之间的通信 83 6.3.1 FTP通信 83 6.3.2 NFS通信 83 第7章 备份恢复系统及安装更新 84 7.1 备份和恢复系统 84 7.1.1 备份系统 84 7.1.2 备价恢复系统 86 7.2 安装嵌入式Linux系统 88 7.2.1 Nand Flash分区 89 7.2.2 安装bootloader BIOS 89 7.2.3 安装Iinux内核 90 7.2.4 安装文件系统 92 第8章 配置openSUSE Linux 94 8.1 建立交叉编译环境 94 8.2 解压安装源代码及其他工具 96 8.2.1 解压安装源代码 96 8.2.2 解压创建目标文件系统 98 8.2.3 解压安装必要实用工具 98 8.3 配置NFS网络文件系统服务 99 8.3.1 设置共享目录 99 8.3.2 启动NFS服务 99 8.3.3 通过NFS服务器挂载开发板 100 第9章 定制嵌入式Linux内核及制作文件系统 101 9.1 使用缺省配置文件配置和编译内核 101 9.2 各个驱动程序源码位置 103 9.3 手工配置Linux内核 104 9.3.1 CPU平台选项 105 9.3.2 配置各个尺寸的LCD驱动以及背光控制支持 107 9.3.3 配置触摸屏 109 9.3.4 配置USB鼠标和键盘 110 9.3.5 配置优盘驱动 111 9.3.6 配置USB摄像头万能驱动 113 9.3.7 配置CMOS摄像头驱动 115 9.3.8 配置网卡驱动 116 9.3.9 配置USB无线网卡驱动 119 9.3.10 配置音频驱动 123 9.3.11 配置SD/MMC卡驱动 126 9.3.12 配置看门狗驱动 127 9.3.13 配置LED驱动 128 9.3.14 配置按键驱动 129 9.3.15 配置PWM控制蜂鸣器驱动 129 9.3.16 配置AD转换驱动 130 9.3.17 配置串口驱动 130 9.3.18 配置RTC实时时钟驱动 131 9.3.19 配置12C EEPROM驱动支持 132 9.3.20 配置yaffs2文件系统的支持 134 9.3.21 配置EXT2/VFAT/NFS等文件系统 137 9.3.22 制作Linux logo 139 9.4 制作开发板文件系统映像 141 第10章 嵌入式Linux应用开发 142 10.1 编写Linux测试程序 142 10.1.1 Hello,World!测试 142 10.1.2 LED测试 145 10.1.3 串口测试 147 10.2 编写Linux驱动模块 152 10.3 编写Linux驱动程序 155 10.4 集成环境Qtopia2.2.0 156 10.4.1 解压安装源代码 157 10.4.2 编泽和运行x86版本的Qtopia-2.2.0 157 10.4.3 编译和运行arm版本的Qtopia-2.2.0 157 第11章 常见bootloader的配置和编译 159 11.1 配置和编译vboot 159 11.2 配置和编译VIVI 160 11.3 配置和编译U Boot 162 11.3.1 编译U Boot 162 11.3.2 烧写UBoot 163 思考题 165 第三篇 Qt应用与开发 第12章 建立Qt桌面开发环境 169 12.1 编译Qt/X11环境 169 12.2 Hello,Qt! 170 第13章 Qt GUI及Qt/E移植 172 13.1 编写Qt/X11程序 173 13.2 移植Qt/E 177 第14章 Qt Creator集成开发环境 181 14.1 Qt C++工程 182 14.2 Qt Quick 工程 186 思考题 189 附录2 匈牙利命名法及其实用规则 191 第四篇 Android庄用与开发 第15章 基于ARM 11的嵌入式Android移植 199 15.1 安装体验基于ARM 11的Android 200 15.2 建立Android编译环境 200 15.2.1 安装交叉编译器 200 15.2.2 解压安装源代码 201 15.3 配置和编译U BOOT 203 15.2 配置和编译Linux内核 203 15.5 从源代码开始创建Android 203 15.6 制作安装文件系统映像 204 15.6.1 制作yaffs2格式的文件系统映像 205 15.6.2 制作UBIFS格式文件系统映像 205 15.6.3 制作cxt3格式的文件系统映像 205 15.7 烧写Android到ARM 11开发板 205 15.7.1 Andriod系统烧写 206 15.7.2 下载并运行裸机程序 210 第16章 基于Windows XP的Android开发环境 213 16.1 Android开发环境搭建 213 16.1.1下载必备的软件 213 16.1.2 软件的安装 213 16.1.3 Eclipsc入门 214 16.1.4 编写Android测试程序:Hcllo World 226 16.1.5 在Android手机上运行程序 228 16.2 项目编程实例 233 16.2.1 Android应用程序架构 233 16.2.2 简单Android程序应用 236 16.2.3 Android实战案例 260 思考题 267 附录3 JAVA常用包 268 附录4 JAVA常用接口 270 附录5 JAVA包装类 272 第五篇 应用与设计 第17章 多道数据采集系统概述 275 17.1 系统设计 275 17.1.1 基本需求 275 17.1.2 总体设计 275 17.2 系统实现 276 17.2.1 硬件设计 276 17.2.2 数据采集 277 17.2.3 数据处理 278 17.3 结论 281 附录6 硬件采集电路图 282 附录7 软件程序 283 第18章 基于Qt的移动扫描系统 285 18.1 实现日标及方法 285 18.2 相关资源 285 18.3 源码移植 286 18.4 制作扫描仪启动界面 287 18.5 配置自动加载脚本 291 18.6 结论 292 思考题 293 参考文献 294