目录

第一篇工欲善其事,必先利其器

第1章嵌入式系统概述

1.1嵌入式系统基础知识

1.1.1嵌入式系统简介

1.1.2嵌入式系统的特点

1.1.3嵌入式系统的发展历史

1.1.4嵌入式系统的组成

1.1.5嵌入式操作系统简介

1.1.6嵌入式系统开发概述

1.2基于ARM架构的处理器

1.2.1ARM处理器概述

1.2.2ARM处理器的结构特点及其应用

1.2.3典型ARM处理器

第2章常用开发工具和Linux基本操作

2.1Windows环境下的工具

2.1.1代码阅读、编辑工具Source Insight

2.1.2文件传输工具FileZilla

2.1.3终端仿真工具PuTTY

2.2Linux环境下的工具

2.2.1代码阅读、编辑工具

2.2.2终端访问工具

2.3Linux基本操作

2.3.1编辑命令vi(vim)

2.3.2常用13个命令介绍

2.3.3SD卡烧写命令df、dd

2.3.4shell命令解析器

第3章嵌入式Linux开发环境搭建

3.1交叉开发模式

3.1.1嵌入式交叉开发模式

3.1.2硬件需求

3.2软件环境搭建与配置

3.2.1宿主机Linux操作系统的安装

3.2.2配置宿主机Linux操作系统

3.2.3在宿主机上安装、配置开发环境

3.2.4制作交叉编译工具链

第二篇千里之行,始于足下





第4章基于ARMv7的S5PV210启动流程

4.1S5PV210启动流程概述

4.1.1外部启动介质

4.1.2iROM启动的优势

4.2S5PV210上电初始化及内存空间分布

4.2.1启动流程

4.2.2空间分布

4.2.3SD卡引导块分配情况

4.2.4iROM中的时钟配置

4.3S5PV210上的程序烧写

4.3.1程序烧写概述

4.3.2制作启动代码头信息

4.3.3烧写SD卡

4.3.4制作Shell脚本

第5章通用输入/输出接口GPIO

5.1GPIO硬件介绍

5.1.1GPIO概述

5.1.2S5PV210的GPIO寄存器

5.1.3实验用到的寄存器详解

5.2S5PV210的GPIO应用实例

5.2.1GPIO实验

5.2.2程序设计与代码详解

第6章通用异步收发器UART

6.1UART介绍及其硬件使用方式

6.1.1UART通信的基本原理

6.1.2S5PV210的UART

6.2S5PV210的UART应用实例

6.2.1UART实验

6.2.2程序设计与代码详解

6.2.3实例测试

第7章中断体系结构

7.1S5PV210中断体系结构

7.1.1中断体系结构概述

7.1.2中断控制寄存器

7.2S5PV210的中断应用实例

7.2.1中断实验

7.2.2程序设计与代码详解

7.2.3实例测试

第8章系统时钟和定时器

8.1S5PV210的时钟体系结构

8.1.1S5PV210的时钟域和时钟源

8.1.2S5PV210的时钟应用和配置流程

8.1.3S5PV210时钟控制寄存器

8.2S5PV210 PWM定时器

8.2.1S5PV210 PWM定时器概述

8.2.2S5PV210定时器

8.2.3PWM定时器寄存器

8.3S5PV210时钟和定时器应用实例

8.3.1时钟实验

8.3.2程序设计与代码详解

8.3.3实验测试

第9章存储控制器

9.1S5PV210存储控制器介绍

9.1.1存储控制器概述

9.1.2DRAM存储控制器

9.1.3与外设的接线方式

9.1.4DDR2概述

9.1.5S5PV210 DDR2初始化顺序

9.1.6存储控制器的寄存器介绍

9.2存储控制器应用实例

9.2.1存储控制器实验

9.2.2程序设计与代码详解

9.2.3实验测试

第三篇欲穷千里目,更上一层楼

第10章移植UBoot

10.1Bootloader介绍

10.1.1Bootloader概述

10.1.2Bootloader的结构和启动方式

10.1.3Bootloader操作模式和安装位置

10.1.4如何编写Bootloader

10.1.5Bootloader与内核之间的交互

10.2UBoot介绍与移植到S5PV210开发板

10.2.1UBoot简介

10.2.2UBoot源码结构


10.2.3UBoot配置、编译与SPL介绍

10.2.4UBoot启动过程源码分析

10.2.5UBoot下的驱动移植

10.2.6添加启动菜单

第11章移植Linux内核

11.1Linux内核概述

11.1.1Linux内核发展及其版本特点

11.1.2Linux内核源码获取 

11.1.3内核源码结构及Makefile分析

11.1.4Linux内核的Kconfig介绍

11.1.5Linux内核配置选项

11.2Linux内核移植 

11.2.1Linux内核启动过程概述

11.2.2Linux内核启动源码分析

11.2.3修改内核支持S5PV210

第12章构建Linux根文件系统

12.1Linux文件系统概述

12.1.1文件系统概述

12.1.2Linux根文件系统目录结构

12.1.3Linux文件属性

12.1.4文件系统工作原理

12.2移植Busybox

12.2.1Busybox介绍

12.2.2Busybox的目录结构

12.2.3内核init进程及用户程序启动过程

12.2.4配置/编译/安装Busybox

12.2.5构建根文件系统

第13章Linux驱动程序移植

13.1Linux驱动程序概述 

13.1.1驱动程序、内核和应用程序之间的关系

13.1.2驱动程序分类

13.1.3Linux设备模型介绍

13.1.4驱动程序开发步骤

13.1.5驱动程序的加载和卸载

13.2网卡驱动移植 

13.2.1DM9000网卡特性

13.2.2DM9000驱动移植

第四篇万事俱备,只欠东风

第14章嵌入式Linux GUI应用开发

14.1嵌入式Linux应用开发概述 

14.1.1Linux应用开发介绍

14.1.2嵌入式Linux GUI应用开发流程

14.2移植Qt 5.12到目标板 

14.2.1Qt 5.12介绍

14.2.2移植Qt 5.12

14.3嵌入式Qt编程基础 

14.3.1Qt桌面开发环境

14.3.2移植Qt 5.12应用程序

第15章Qt 5.12快速入门

15.1Qt Creator快速入门 

15.1.1窗口部件

15.1.2布局管理

15.1.3信号与槽

15.1.4主窗口

15.1.5事件处理

15.1.6数据处理

15.1.7通信编程

15.1.8国际化

15.1.9应用程序发布

15.2基于Qt Quick的应用开发 

15.2.1Qt Quick与Qt Design Studio介绍

15.2.2QML与C++混合编程

15.2.3基于Qt Quick的DAQSystem系统

参考文献