物联网与嵌入式系统开发

时间:2013-05-08 11:32  来源:中国物联网工程师培训网  作者:刘浩  点击:


计算机网络:物联网与嵌入式系统开发

内容提要
刘连浩编著的《物联网与嵌入式系统开发》是依托中南大学国家级特色专业(物联网工程)的建设,结合国内物联网工程专业的教学情况编写的。本书主要介绍物联网应用中的嵌入式系统的开发,以S3C2440为硬件,以嵌入式Linux为软件,详细介绍了物联网与嵌入式系统的关系、ARMCortex的体系结构、ARM的指令和程序设计、S3C2440的硬件结构与编程、嵌入式Linux的开发和移植等内容,最后给出了在物联网应用中常用的嵌入式系统开发实例。《物联网与嵌入式系统开发》可作为普通高等学校物联网工程及其相关专业的教材,也可供从事物联网及其相关专业的人士阅读。
目录
第1章 嵌入式系统概述1.1 嵌入式系统简介1.2 嵌入式系统的组成1.3 嵌入式处理器简介1.4 嵌入式系统应用1.5 嵌入式系统发展趋势1.6 物联网与嵌入式系统1.7 嵌入式开发工具1.7.1 软件开发工具1.7.2 硬件开发工具思考与习题第2章 ARM体系结构2.1 ARM处理器基础2.1.1 ARM简介2.1.2 冯诺依曼结构、哈佛结构与改进的哈佛结构2.1.3 CISC与RISC2.1.4 流水线2.1.5 ARM处理器的命名方式2.2 ARM处理器系列2.2.1 ARM处理器架构2.2.2 常用ARM处理器系列简介2.3 ARM体系结构2.3.1 ARM的基本数据类型2.3.2 ARM处理器的运行模式2.3.3 ARM处理器的运行状态2.3.4 存储器的大/小端2.3.5 ARM的寄存器组织2.3.6 异常处理2.4 ARM存储器结构2.4.1 ARM存储器接口2.4.2 ARM Cache结构2.4.3 ARM存储器管理单元MMU2.4.4 地址变换后备缓冲器2.4.5 ARM的MMU结构2.5 ARM的其他部件2.5.1 存储器映像I/O2.5.2 直接存储器存取2.5.3 中断IRQ和快速中断FIQ2.5.4 ARM协处理器接口2.5.5 ARM AMBA接口思考与习题第3章 ARM指令集与程序设计3.1 ARM指令系统特点3.1.1 数据类型3.1.2 ARM指令特点3.2 ARM指令系统3.2.1 ARM指令的寻址方式3.2.2 ARM指令的条件执行3.2.3 Load/Store类指令3.2.4 ARM数据处理类指令3.2.5 ARM转移类指令3.3 Thumb指令3.3.1 Thumb指令概述3.3.2 Thumb存储器访问指令3.3.3 Thumb数据处理指令3.3.4 分支指令3.3.5 中断和断点指令3.4 ARM伪操作与伪指令3.4.1 符号定义与变量赋值伪操作3.4.2 数据定义伪操作3.4.3 汇编控制伪操作3.4.4 信息报告伪操作3.4.5 指令集选择伪操作3.4.6 杂项伪操作3.4.7 ADR、ADRL、LDR伪指令3.4.8 NOP伪指令3.5 ARM汇编程序设计3.5.1 汇编语言的基本格式3.5.2 汇编语言的子程序调用3.6 ARM C语言基础及混合编程3.6.1 ATPCS概述3.6.2 C语言与汇编语言混合编程3.7 超级终端的使用3.8 ADS集成开发环境的使用3.8.1 安装与卸载ADS3.8.2 使用ADS创建工程3.8.3 使用AXD进行仿真思考与习题第4章 基于S3C2440的硬件结构与接口编程4.1 S3C2440简介4.1.1 S3C2440上主要功能4.1.2 S3C2440A特点4.2 S3C2440A的存储器接口4.2.1 S3C2440A存储器控制器4.2.2 NAND Flash控制器4.2.3 SDRAM原理4.3 时钟和电源管理4.4 DMA4.4.1 DMA请求源4.4.2 DMA工作过程4.4.3 基本DMA时序4.4.4 DMA传输大小4.4.5 DMA专用寄存器4.5 I/O端口4.6 定时器4.7 ARM中断4.8 LCD4.8.1 LCD原理4.8.2 ARM LCD驱动控制4.8.3 LCD控制器特殊寄存器4.9 A/D转换器和触摸屏4.9.1 A/D转换器简介4.9.2 触摸屏的工作原理及种类4.9.3 A/D转换器和触摸屏接口4.10 异步串口通信4.10.1 串行通信概述4.10.2 S3C2440A异步串行口简介4.11 SPI、IIC、IIS、SD卡总线接口4.11.1 SPI总线接口4.11.2 IIC总线接口4.11.3 IIS总线接口4.11.4 SD卡4.12 USB Host/Device控制器思考与习题第5章 嵌入式操作系统5.1 操作系统简介5.1.1 操作系统5.1.2 嵌入式操作系统5.2 C/OS-II简介5.3 VxWorks简介5.4 WinCE简介5.5 Linux简介5.5.1 Linux简介5.5.2 Linux特点5.5.3 嵌入式Linux5.5.4 Linux内核版本与发行版5.5.5 Linux进程管理5.5.6 存储管理5.5.7 文件系统5.5.8 设备管理5.5.9 Linux内核模块5.5.10 Linux配置文件5.5.11 Linux启动流程简介5.6 其他嵌入式操作系统5.6.1 其他国外常用嵌入式操作系统5.6.2 其他国内常用的嵌入式操作系统思考与习题第6章 嵌入式Linux应用开发6.1 Linux安装6.1.1 安装vmware6.1.2 创建虚拟机6.1.3 安装fedora146.1.4 安装VMware Tools6.2 交叉编译环境的建立6.2.1 交叉编译6.2.2 交叉编译器的安装6.3 Linux常用命令6.3.1 系统管理命令6.3.2 文件管理命令6.3.3 文件查看命令6.3.4 进程管理命令6.3.5 网络管理命令6.3.6 用户管理命令6.4 minicom的使用6.4.1 minicom的安装6.4.2 minicom的设置6.4.3 minicom的使用6.5 vi程序的使用6.5.1 启动vi6.5.2 常用vi命令6.6 gcc程序的使用6.6.1 gcc简介6.6.2 gcc编译程序的流程6.6.3 gcc选项6.7 gdb程序的使用6.7.1 gdb简介6.7.2 gdb的调试程序流程6.7.3 gdb命令6.8 makefile简介6.8.1 makefile简介6.8.2 makefile的规则6.8.3 makefile文件的命名6.8.4 makefile的组成6.8.5 简单的makefile示例6.8.6 使用变量6.8.7 使用隐式规则6.8.8 伪目标6.9 Linux应用程序编程6.9.1 文件编程6.9.2 进程创建6.9.3 进程间通信之管道6.9.4 进程间通信之有名管道6.9.5 进程间通信之信号6.9.6 进程间通信之信号量6.9.7 进程间通信之消息队列6.9.8 进程间通信之共享内存6.9.9 原子操作6.9.10 线程6.9.11 网络编程基础6.9.12 Linux中断思考与习题第7章 嵌入式Linux操作系统的移植7.1 Bootloader7.1.1 Bootloader简介7.1.2 常见Bootloader7.2 Linux的移植7.2.1 安装前的准备工作7.2.2 Linux的移植步骤7.3 根文件系统的制作思考与习题第8章 物联网中的常用嵌入式系统8.1 TinyOS简介8.1.1 TinyOS概述8.1.2 TinyOS的特点8.1.3 TinyOS开发平台8.1.4 TinyOS开发案例8.1.5 TinyOS的基本概念8.2 安装TinyOS8.3 nesC简介8.3.1 nesC概述8.3.2 nesC基本概念8.3.3 一个简单的nesC编程示例8.3.4 TOSSIM仿真8.4 TinyOS内部机制简介8.4.1 TinyOS程序运行机制分析8.4.2 TinyOS的调度机制8.4.3 TinyOS的通信模型8.4.4 TinyOS的能量管理思考与习题参考文献