| 摘要 | 第1-4页 |
| Abstract | 第4-7页 |
| 1 绪论 | 第7-11页 |
| ·课题的应用背景 | 第7-8页 |
| ·远程抄表系统及其下位机 | 第8-10页 |
| ·课题的任务和意义 | 第10页 |
| ·本人完成的工作 | 第10-11页 |
| 2 下位机的总体规划 | 第11-21页 |
| ·嵌入式系统的设计流程与方法 | 第11-15页 |
| ·嵌入式系统概述 | 第11-13页 |
| ·嵌入式系统的开发流程 | 第13-14页 |
| ·嵌入式系统的软硬件设计方法 | 第14-15页 |
| ·下位机功能的需求分析 | 第15-16页 |
| ·功能性需求 | 第15页 |
| ·与数据采集器的串口通讯 | 第15-16页 |
| ·软硬件总体设计规划 | 第16-18页 |
| ·开发及调试工具介绍 | 第18-21页 |
| ·交叉编译 | 第18-19页 |
| ·交叉编译工具 | 第19-21页 |
| 3 下位机的硬件设计 | 第21-31页 |
| ·硬件的总体设计方案 | 第21-23页 |
| ·ARM处理器简介 | 第21页 |
| ·ARM处理器选型 | 第21-23页 |
| ·核心硬件电路的设计 | 第23-31页 |
| ·复位电路与JTAG调试电路设计 | 第23-24页 |
| ·SDRAM接口电路设计 | 第24-25页 |
| ·FLASH接口电路设计 | 第25-27页 |
| ·RS-232接口电路设计 | 第27-28页 |
| ·USB接口电路设计 | 第28-29页 |
| ·10/100M网口电路设计 | 第29-31页 |
| 4 BootLoader的修改与移植 | 第31-38页 |
| ·BootLoader简介 | 第31页 |
| ·Bootloader的选型设计 | 第31-33页 |
| ·BLOB和Armboot BLOB | 第31-32页 |
| ·U-Boot | 第32页 |
| ·U-Boot的特点 | 第32-33页 |
| ·基于AT91RM9200的U-Boot移植 | 第33-36页 |
| ·U-Boot的结构 | 第33页 |
| ·U-Boot移植相关文件 | 第33-34页 |
| ·U-Boot修改及编译 | 第34-36页 |
| ·U-Boot的起动过程 | 第36-38页 |
| 5 基于AT91RM9200的嵌入式Linux系统移植 | 第38-51页 |
| ·移植概念 | 第38页 |
| ·Linux内核结构与系统移植 | 第38-41页 |
| ·内核结构 | 第38-39页 |
| ·系统移植 | 第39-41页 |
| ·设备驱动移植 | 第41-46页 |
| ·Linux设备管理 | 第42-44页 |
| ·Linux驱动开发 | 第44-46页 |
| ·配置和编译Linux内核 | 第46-48页 |
| ·内核的配置 | 第46-47页 |
| ·内核的编译 | 第47-48页 |
| ·文件系统移植 | 第48-51页 |
| 6 应用程序设计 | 第51-72页 |
| ·Linux编程简介 | 第51-52页 |
| ·Linux下的串口编程 | 第52-54页 |
| ·串口的设置 | 第52-53页 |
| ·串口的操作 | 第53-54页 |
| ·Linux下的网络编程 | 第54-59页 |
| ·TCP/IP协议概述 | 第55-57页 |
| ·基于UDP的Socket编程 | 第57-59页 |
| ·文件操作与时间读写 | 第59-61页 |
| ·文件的操作 | 第59-60页 |
| ·时间的读写 | 第60-61页 |
| ·应用软件的编写 | 第61-70页 |
| ·总体设计 | 第61-63页 |
| ·串口通讯设计 | 第63-65页 |
| ·网络通讯设计 | 第65-68页 |
| ·程序中的一些功能函数 | 第68-70页 |
| ·应用软件的运行 | 第70-72页 |
| 结束语 | 第72-73页 |
| 致谢 | 第73-74页 |
| 参考文献 | 第74-76页 |