嵌入式Linux软硬件开发详解 基于S5PV210处理器.pdf

嵌入式Linux软硬件开发详解 基于S5PV210处理器.pdf
 

书籍描述

内容简介
本书全面介绍了嵌入式Linux系统开发过程中,从硬件设计到系统移植、软件开发的各方面内容,包含硬件设备的设计原理(囊括了常见硬件,如RAM、Flash、UART、USB、LCD和电源管理等)、Linux操作系统的安装及相关嵌入式开发软件的使用、嵌入式Linux编程所需的基本知识(Makefile语法、shell编程等)、BootLoader和内核、文件系统、QT4的移植、驱动程序的编写和测试、QT4应用程序的编写。
本书从底层系统设计到上层应用开发,均以具体的电路或程序实例来进行讲解。目的是带领读者熟悉嵌入式产品开发的全流程。本书由浅入深、循序渐进、内容丰富,取材典型,可作为大中专院校嵌入式相关专业的本科生、研究生的教材使用,也可供从事嵌入式Linux开发的工程师参考。

编辑推荐
嵌入式Linux系统开发过程中,从硬件设计到系统移植、软件开发的各方面内容,从底层系统设计到上层应用开发,均以具体的电路或程序实例来进行讲解。目的是带领读者熟悉嵌入式产品开发的全流程。本书由浅入深、循序渐进、内容丰富,取材典型,可作为大中专院校嵌入式相关专业的本科生、研究生的教材使用,也可供从事嵌入式Linux开发的工程师参考。
1、硬件平台应用广泛。
2、系统性强
3、实例方式讲解,方式新颖
4、结合Linux驱动+QT4+数据库(Sqlite)教材,并可以给出大量实际项目实例。

媒体推荐
本书由浅入深地讲解了嵌入式Linux系统开发的内容,对硬件设计原理、Linux系统的移植和驱动程序及应用程序的开发都加以阐述。这是一本能够带领你系统化掌握嵌入式Linux系统开发的书籍。
——加拿大阿尔伯大学终身教授 博士生导师 孙晓凌

这是一本详细讲述基于嵌入式系统软硬件开发的书籍,本书语言简洁、内容充实,能够使读者快速掌握嵌入式产品开发的知识和技能。
——大连理工大学控制科学与工程学院教授 博士生导师 王哲龙

S5PV210是三星公司基于Cortex-A8内核生产的微处理器,性能出色,在消费电子领域得到广泛应用。本书作者结合项目经验,利用两年时间精心构思雕琢完成。本书系统地阐述了基于S5PV210处理器的嵌入式Linux开发全流程。本书对于嵌入式系统的初学者及有一定时间经验的开发人员均试用,特此向大家郑重推荐。
——第九单片机网 大连创客空间 创始人 于跃

作者简介
刘龙本科硕士皆毕业于东北师范大学物理系,从事教育工作8年。曾荣获校突出贡献个人称号。2006年起至今从事嵌入式Linux教学工作,对此有一定了解。发表关于单片机及嵌入式方向文章,核心及EI级别,文章6篇。第二作者文章5篇。2008年与某公司合作开发基于EP9315与Linux的大型游戏机板卡一部。

目录
目录

硬件设计篇

第1章 硬件系统概述 2
1.1 硬件系统资源 2
1.2 S5PV210处理器 3
1.2.1 S5PV210微处理器概述 3
1.2.2 内部各模块介绍 4
第2章 核心板电路设计 10
2.1 S5PV210芯片地址分配 10
2.2 DDR2 SDRAM芯片 13
2.2.1 DDR2 SDRAM工作
原理 13
2.2.2 DDR2 SDRAM硬件
设计 16
2.3 SLC Nand Flash芯片 17
2.3.1 Nor Flash与NAND
Flash对比 17
2.3.2 SLC与MLC NAND
Flash技术对比 18
2.3.3 K9F4G08UOB引脚
功能 19
2.3.4 NAND Flash硬件设计 21
2.4 DM9000A以太网控制器 23
2.4.1 DM9000a引脚及功能 24
2.4.2 DM9000硬件设计 25
2.5 WM8960X音频编解码芯片 27
2.5.1 IIS总线接口概述 27
2.5.2 WM8960概述 27
2.5.3 WM8960硬件设计 29
第3章 扩展板电路设计 32
3.1 LED电路 32
3.1.1 发光二极管简介 32
3.1.2 发光二极管的检测 33
3.1.3 发光二极管电路设计 33
3.2 蜂鸣器电路 34
3.2.1 蜂鸣器简介 34
3.2.2 蜂鸣器电路设计 35
3.3 按键电路 36
3.3.1 按键分类 36
3.3.2 按键设计技巧 36
3.3.3 按键电路设计 38
3.4 串行通信接口电路 39
3.4.1 RS-232C标准 39
3.4.2 MAX3232芯片 40
3.4.3 串行通信接口电路
设计 41
3.5 EEPROM电路 42
3.5.1 I2C总线协议概述 42
3.5.2 AT24C02介绍 43
3.5.3 AT24C02的读写操作 44
3.5.4 AT24C02电路设计 46
3.6 SD卡电路 46
3.6.1 SD卡概述 46
3.6.2 SD卡的物理接口 47
3.6.3 SD卡的应用模式 48
3.6.4 S5PV210与SD卡的
电路设计 50
3.7 重力传感器电路 50
3.8 USB电路 51
3.8.1 USB基础知识 51
3.8.2 USB设备检测 53
3.8.3 USB2.0 OTG 接口 53
3.8.4 S5PV210的USB接口
电路设计 54
3.9 LCD电路 55
3.9.1 液晶显示屏(LCD) 55
3.9.2 S5PV210内部LCD
控制器 56
3.9.3 LCD接口电路设计 56
3.10 HDMI高清多媒体接口 57
3.10.1 HDMI概述 57
3.10.2 HDMI物理接口 58
3.10.3 S5PV210的HDMI
接口电路设计 59
3.11 RJ45网络接口 60
3.12 电源及复位电路 61
3.12.1 AMS1086电源芯片 61
3.12.2 RT9011电源芯片 62
3.12.3 IMP811电源监控及
复位芯片 62

驱动开发篇

第4章 嵌入式Linux开发环境构建 66
4.1 基本概念 66
4.2 常用Linux命令 67
4.3 软件包安装及配置 69
4.3.1 PuTTY安装及配置 69
4.3.2 VMware8安装 72
4.3.3 Redhat Enterprise5.5
安装 73
4.4 交叉编译器安装 83
4.5 Windows与Linux共享文件
设置 83
4.6 TFTP与NFS服务器配置 87
4.6.1 配置TFTP服务器 88
4.6.2 配置NFS服务器 89
第5章 Make工程管理及Shell
编程 92
5.1 Make工程管理 92
5.1.1 Make工程管理器 92
5.1.2 Make工作步骤 93
5.1.3 Make程序示例 93
5.1.4 Makefile语法 96
5.2 Shell编程 99
5.2.1 Bash ShelL简介 99
5.2.2 Bash Shell常用命令 100
5.2.3 重定向与管道 104
5.2.4 简单Shell应用 108
5.2.5 Shell编程语法 109

系统移植篇

第6章 移植U-Boot 136
6.1 BootLoader简介 136
6.2 常见的BootLoader 137
6.3 U-Boot分析 138
6.4 U-Boot移植 140
6.4.1 配置U-Boot 140
6.4.2 修改内存配置 141
6.4.3 修改DM9000网卡配置 146
6.4.4 修改电源管理功能 149
6.4.5 加入USB下载功能 151
6.4.6 添加启动zImage内
核支持 151
6.5 U-Boot常用命令 153
6.6 U-Boot启动参数分析 156
6.7 烧写U-Boot至Nand Flash 158
6.7.1 将U-Boot烧写至
SD卡 158
6.7.2 将U-Boot烧写至
Flash 165
第7章 移植Linux内核 166
7.1 Linux内核版本简介 166
7.2 内核源码结构 167
7.3 内核移植准备 168
7.3.1 内核编译过程 168
7.3.2 Linux Makefile分析 169
7.3.3 内核Kconfig分析 172
7.3.4 内核配置及编译命令 176
7.4 内核移植 177
7.4.1 内核基本配置 177
7.4.2 修改NANDFlash
分区 182
7.4.3 修改LCD信息 183
7.4.4 DM9000驱动移植 188
7.4.5 蜂鸣器驱动修改 193
7.4.6 RTC驱动修改 193
7.4.7 USB驱动移植 194
7.4.8 TSC2007触摸屏驱动
移植 197
7.4.9 FT5406触摸屏驱动
移植 199
7.4.10 WM8960声卡驱动
移植 200
7.5 调试、烧写内核 203
第8章 制作根文件系统 205
8.1 根文件系统组成 205
8.2 制作根文件系统 207
8.2.1 生成根文件系统
目录 207
8.2.2 配置编译BusyBox 209
8.2.3 使用glibc库文件 211
8.2.4 建立配置文件 212
8.3 网络挂载及固化根文件系统 217
8.3.1 NFS挂载根文件系统 217
8.3.2 烧写根文件系统至
NAND Flash 219
第9章 移植触摸库及Qt4库 222
9.1 移植Tslib触摸库 222
9.2 移植QTE库 223
9.3 Linux下Qt Creator开发环境
安装及配置 226
9.4 QWT安装配置 232
9.4.1 QWT在X86平台上的
安装 233
9.4.2 QWT在ARM平台上
的安装 234
9.5 QWT简单示例 235

项目实战篇

第10章 驱动开发基础 242
10.1 驱动程序中的基本概念 242
10.1.1 设备驱动程序概述 242
10.1.2 设备驱动的分类 242
11.1.3 驱动程序、操作系统、
应用程序的关系 243
10.1.4 常见的系统调用
函数 244
10.2 驱动开发要点 247
10.2.1 用户态和内核态 247
10.2.2 模块机制 248
10.3 Hello World驱动程序 248
10.3.1 驱动模块组成 249
10.3.2 Hello World驱动模
块程序 250
10.3.3 编译Hello World
模块 250
10.3.4 调试Hello World
模块 252

购买书籍

当当网购书 京东购书 卓越购书

PDF电子书下载地址

相关书籍

搜索更多