基于S3C2440的嵌入式Linux开发实例 - 中国高校教材图书网
|
书名: |
基于S3C2440的嵌入式Linux开发实例
|
| ISBN: | 978–7–5606–2409–9 |
责任编辑: | |
| 作者: |
孙 弋
相关图书
|
装订: | 平装 |
| 印次: | 1-1 |
开本: | 16开 |
| 定价: |
¥38.00
折扣价:¥36.10
折扣:0.95
节省了1.9元
|
字数: |
557千字
|
| 出版社: |
西安电子科技大学出版社 |
页数: |
|
| 出版日期: |
2010-05-01 |
每包册数: |
|
| 国家规划教材: |
|
省部级规划教材: |
|
| 入选重点出版项目: |
|
获奖信息: |
|
|
|
| 内容简介: |
内 容 简 介 本书以目前工业嵌入式领域表现出色的ARM9处理器S3C2440和源码开放的Linux操作系统为基础,系统地介绍了嵌入式系统S3C2440的开发过程及S3C2440各个接口的应用编程实例。所有代码均由作者在软件平台调试通过,大部分应用程序代码为作者在产品开发过程中所实际应用之成熟代码。本书对从事该领域产品开发的工程技术人员有较高的参考价值。 本书可作为高等院校电子、通信、自动化、计算机等专业的嵌入式系统课程的教材,也可作为从事嵌入式应用开发的工程技术人员的参考资料。
|
| 作者简介: |
|
|
| 章节目录: |
目 录
第1章 嵌入式系统开发基础 1
1.1 嵌入式Linux系统开发模式 1
1.1.1 嵌入式系统设计的特点 3
1.1.2 嵌入式系统的设计流程 4
1.1.3 嵌入式系统的软硬件划分 7
1.1.4 嵌入式系统的产品硬件详细设计 7
1.2 嵌入式系统的软件设计 8
1.2.1 嵌入式软件平台的选择 9
1.2.2 嵌入式软件性能的设计 10
1.2.3 嵌入式软件开发流程 11
1.3 嵌入式开发电路基础 12
1.3.1 电路原理图设计 12
1.3.2 电路PCB设计基础 13
1.3.3 电子电路抗干扰技术 19
1.3.4 PCB设计中常用定义、符号和缩略语 22
1.3.5 PCB工艺设计考虑的基本问题 23
1.3.6 印制板常用基板设计要求 24
1.3.7 PCB制造一般技术要求 25
1.3.8 PCB设计基本工艺要求 25
1.3.9 拼板设计 29
1.3.10 元件的选用原则 32
1.3.11 组装方式 32
1.3.12 元件布局 33
1.3.13 布线要求 37
1.3.14 焊盘与线路的连接 37
1.3.15 大面积电源区和接地区的设计 38
1.3.16 通孔插装元件焊盘设计 39
1.3.17 导通孔的设计 41
1.3.18 阻焊层设计 42
1.3.19 字符图 43
1.3.20 元器件的表示方法 44
第2章 嵌入式微处理器及S3C2440处理器 48
2.1 嵌入式微处理器的结构和类型 48
2.1.1 嵌入式微处理器的分类 48
2.1.2 典型32位ARM微处理器的结构和特点 50
2.2 ARM9微处理器简介 58
2.2.1 ARM9与ARM7处理器的比较 58
2.2.2 三星S3C2440X ARM9处理器基础 59
第3章 Linux Flash驱动及应用实例 62
3.1 Flash简介 62
3.2 S3C2440 Nand Flash接口硬件及寄存器介绍 65
3.2.1 S3C2440 Nand Flash电路介绍 65
3.2.2 Nand Flash寄存器介绍 65
3.3 S3C2440 Flash控制器驱动程序分析 72
3.3.1 寄存器地址和功能定义 72
3.3.2 数据结构和变量描述 73
3.3.3 主要函数描述 77
第4章 S3C2440 SD/MMC Linux驱动及应用案例 90
4.1 SD/MMC概述 90
4.1.1 SD卡总线协议及工作原理 90
4.1.2 SD卡引脚及接口电路 91
4.2 S3C2440 SD/MMC接口寄存器介绍 93
4.3 Linux SD/MMC驱动程序分析 98
4.3.1 寄存器地址和功能定义 98
4.3.2 数据结构和变量描述 101
4.3.3 主要函数描述 104
第5章 S3C2440 I/O接口Linux驱动及应用实例 124
5.1 GPIO接口基础 124
5.2 S3C2440 GPIO接口硬件及寄存器 125
5.2.1 S3C2440 GPIO接口硬件 125
5.2.2 GPIO寄存器 125
5.3 S3C2440 GPIO驱动及LED应用程序分析 134
5.3.1 寄存器地址和功能定义 134
5.3.2 GPIO驱动LED程序主要函数描述 151
5.4 S3C2440 LED应用程序设计例程 153
第6章 Linux下S3C2440串口驱动及应用实例 155
6.1 串口的基本类型 155
6.1.1 RS-232串行接口标准 155
6.1.2 RS-422与RS-485串行接口标准 155
6.2 Linux串口驱动程序与分析 156
6.2.1 串行端口终端(/dev/ttySn) 156
6.2.2 伪终端(/dev/pty/) 157
6.2.3 控制终端(/dev/tty) 157
6.2.4 控制台终端(/dev/ttyn,/dev/console) 157
6.3 基于Linux串口设备驱动程序分析 158
6.3.1 UART驱动结构图 158
6.3.2 UART驱动中重要的数据结构及其关联 158
6.4 S3C2440 UART驱动实例分析 160
6.4.1 串口硬件 160
6.4.2 UART的寄存器 161
6.4.3 S3C2440串口驱动数据结构分析 166
6.4.4 结构体及相关变量定义 167
6.4.5 S3C2440串口驱动主要函数 169
6.5 串口GPS数据的采集例程 182
6.5.1 GPS简介 182
6.5.2 GPS原理 182
6.5.3 GPS协议分析 183
6.5.4 GPS应用的编程实例 184
6.6 小结 189
第7章 S3C2440 SPI接口驱动及CAN协议实现 190
7.1 S3C2440 SPI接口及CAN总线基础 190
7.1.1 SPI接口基础 190
7.1.2 CAN总线基础 193
7.1.3 SPI接口CAN协议实现硬件电路 195
7.2 SPI寄存器 196
7.2.1 SPI寄存器基础(SPCONn) 196
7.2.2 SPI寄存器地址和相关功能 199
7.3 SPI接口CAN协议驱动函数分析 200
7.3.1 SPI接口CAN协议驱动数据结构与相关变量 200
7.3.2 驱动程序结构与主要函数 201
第8章 LCD设备驱动与应用案例 214
8.1 LCD的基本知识 214
8.2 帧缓冲 214
8.2.1 帧缓冲的概念 214
8.2.2 Linux缓冲的相关数据结构 215
8.2.3 帧缓冲的设备驱动程序结构 215
8.2.4 帧设备缓冲的驱动模块主要函数 216
8.3 S3C2440 LCD设备驱动实例 216
8.3.1 S3C2440 LCD设备硬件 216
8.3.2 硬件寄存器定义描述 230
8.3.3 S3C2440 LCD数据结构分析 230
8.3.4 主要函数描述 234
8.4 控制台图像显示实例 243
8.4.1 程序原理 243
8.4.2 主要函数描述 244
第9章 S3C2440 USB接口Linux驱动及应用实例 248
9.1 USB接口介绍 248
9.2 Linux USB驱动结构 249
9.3 S3C2440 USB接口硬件及寄存器 250
9.3.1 S3C2440 USB硬件接口 250
9.3.2 S3C2440 USB硬件接口寄存器 250
9.4 S3C2440 USB主机驱动程序分析 251
9.4.1 寄存器地址和功能定义 252
9.4.2 结构体及相关变量定义 252
9.4.3 主要函数描述 254
9.5 ZC301 USB摄像头驱动实例 257
9.5.1 主要的数据结构与相关变量定义 257
9.5.2 主要函数分析 258
9.6 USB网络摄像头应用实例 270
9.6.1 V4L介绍 270
9.6.2 主要的数据结构 271
9.6.3 主要函数描述 272
9.6.4 参考代码 280
第10章 S3C2440 A/D接口和触摸屏Linux驱动及应用实例 288
10.1 S3C2440 A/D接口驱动分析 288
10.1.1 S3C2440 A/D接口 288
10.1.2 S3C2440 A/D寄存器介绍 291
10.1.3 S3C2440 A/D驱动程序分析 293
10.1.4 S3C2440 A/D应用设计例程 298
10.2 触摸屏设备驱动 300
10.2.1 触摸屏的硬件原理 300
10.2.2 触摸屏设备驱动分析 302
第11章 Linux下网卡驱动及应用实例 311
11.1 Linux网络设备的驱动基础 311
11.2 基于Linux的网络设备驱动程序分析 311
11.2.1 数据结构struct net_device 312
11.2.2 数据结构struct sk_buff 318
11.2.3 主要函数描述 322
11.3 基于CS8900网络设备驱动设计实例 328
11.3.1 CS8900网卡硬件描述 328
11.3.2 CS8900网卡驱动设计分析 330
11.4 网络应用 351
11.4.1 ICMP协议(Internet控制报文协议) 356
11.4.2 ICMP报文 356
11.5 Web服务器Boa移植实例 363
11.5.1 移植步骤 364
11.5.2 Boa的配置 364
11.5.3 Boa运行 364
参考文献 365
|
| 精彩片段: |
|
|
| 书 评: |
前 言 随着电子技术的发展和SOC片上系统应用领域的不断扩展,嵌入式系统已经在消费、电子、军事和医疗卫生领域得到了广泛应用,并且将会在更广泛的领域中占据更多的市场份额。 本书从嵌入式产品驱动的基本开发流程入手,由工业级嵌入式系统CPU S3C2440主要应用接口设计展开描述。期望通过本书的学习使读者不仅了解嵌入式系统接口开发的基本概念,还能掌握相关接口应用产品的开发方法。 本书共分为13章,各章的主要内容如下: 第1章介绍了嵌入式系统的现状和嵌入式系统的开发模式,详细描述了嵌入式系统产品开发的特点和设计流程、嵌入式产品的软/硬件划分以及硬件的详细设计和软件设计,最后介绍了嵌入式开发的电路基础。 第2章介绍了嵌入式微处理器的结构和类型,并比较了ARM9与ARM7微处理器的异同,具体介绍了本书中所用到的S3C2440X ARM9微处理器以及EY-2440-S开发平台。 第3~13章分别介绍了S3C2440所涉及的各个模块的驱动,深刻剖析了驱动程序的体系架构,并且给出了相应的具体应用实例。这些章节所涉及的模块包括Flash、SD/MMC、IO接口、串口、SPI接口驱动及CAN协议、LCD设备、USB接口、A/D接口及触摸屏、网卡等。本书采用抽象与具体相结合的方式,先介绍各模块的接口硬件及寄存器,然后以模板的形式给出了各模块驱动的设计框架,对主要数据结构和变量进行了描述,最后用具体的应用实例驱动填充对应的模板。 本书由孙弋任主编,卢建军、高理、雷文礼任副主编。朱周华、何蓉、李远征、周永康、魏刚等编写部分章节内容,研究生秦东、徐成文、杨海科等参与部分内容编写及代码验证工作;同时,本书也参考了国内外众多学者的研究成果,在此向他们一并表示衷心感谢。 由于本书编者水平有限,疏漏再所难免,希望读者批评指正。
|
| 其 它: |
|
|
|