图书介绍

嵌入式Linux驱动程序设计从入门到精通pdf电子书版本下载

嵌入式Linux驱动程序设计从入门到精通
  • 冯国进编著 著
  • 出版社: 北京:清华大学出版社
  • ISBN:9787302169420
  • 出版时间:2008
  • 标注页数:316页
  • 文件大小:145MB
  • 文件页数:326页
  • 主题词:Linux操作系统-程序设计

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快] 温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页 直链下载[便捷但速度慢]   [在线试读本书]   [在线获取解压码]

下载说明

嵌入式Linux驱动程序设计从入门到精通PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如 BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1章 Linux驱动程序基础 1

1.1 驱动程序的概念 1

1.2 Linux驱动程序模型 1

1.3 最基本的调试手段 5

1.4 导出符号的方法 5

1.5 动态加载驱动程序 6

1.6 在内核中加入新驱动 6

1.7 应用程序操作接口 7

1.8 第一个驱动 10

第2章 Linux驱动开发核心技术 17

2.1 同步机制 17

2.1.1 自旋锁 17

2.1.2 信号量 18

2.1.3 原子操作 18

2.1.4 读写锁(rwlock) 19

2.1.5 seqlock机制 21

2.1.6 RCU 22

2.2 完成事件 24

2.3 阻塞与非阻塞 25

2.4 时间 27

2.4.1 Linux下延迟 27

2.4.2 内核定时器 27

2.5 内存分配与映射 28

2.5.1 内存分配与释放 28

2.5.2 用户态和内核态内存交互 29

2.5.3 内存池 30

2.5.4 物理地址到虚拟地址的映射 31

2.5.5 内核空间到用户空间的映射 31

2.6 中断处理 32

2.6.1 硬件中断 32

2.6.2 软中断机制 35

2.7 /proc系统 36

2.8 工作队列 38

2.9 异步I/O 39

2.10 DMA 42

2.11 platform概念 43

2.12 简单驱动例程 45

2.12.1 信号量同步 45

2.12.2 阻塞式读写 46

2.12.3 定时器 48

2.12.4 内存映射 49

2.12.5 /proc访问 53

2.12.6 工作队列 55

第3章 GPIO驱动 57

3.1 ARM体系结构概述 57

3.1.1 RISC结构 57

3.1.2 处理器模式 58

3.1.3 寄存器组织 58

3.1.4 异常处理 60

3.2 S3C2410X处理器 61

3.3 S3C2410X I/O端口 63

3.4 最简单的设备驱动——LED灯驱动 64

3.5 S3C2410X GPIO键盘驱动 66

第4章 串行总线驱动 73

4.1 串行总线综述 73

4.1.1 I2C总线 73

4.1.2 SMBus总线 75

4.1.3 SPI总线 76

4.1.4 CAN总线 76

4.2 CAN接口芯片MCP2510 79

4.2.1 数据发送 79

4.2.2 数据接收 81

4.2.3 中断 83

4.2.4 波特率设置 84

4.2.5 工作模式 85

4.3 MCP2510驱动开发 86

4.4 Linux的I2C驱动架构 96

4.5 Linux I2C驱动开发 100

第5章 USB驱动程序 102

5.1 USB总线 102

5.1.1 USB总线概述 102

5.1.2 USB系统组成 102

5.1.3 USB传输模式 104

5.1.4 主机规范 105

5.1.5 USB设备描述符 105

5.1.6 HID类规范 110

5.2 Linux下的USB驱动框架 111

5.3 USB请求块urb 114

5.4 USB骨架程序 118

5.5 USB文件系统 126

5.6 USB摄像头驱动 127

5.6.1 USB摄像头原理 127

5.6.2 Video4Linux规范 128

5.6.3 OV511驱动分析与编译 132

5.6.4 spca5xx编译与使用 139

5.7 USB Gadget 140

5.7.1 USB设备控制器驱动 142

5.7.2 Gadget驱动 146

第6章 Linux Framebuffer驱动 150

6.1 LCD原理 150

6.2 Linux下LCD驱动架构 151

6.3 S3C2410X LCD控制器 157

6.4 S3C2410X LCD驱动开发 163

6.5 基于Framebuffer的界面系统开发 168

第7章 输入子系统驱动 174

7.1 Linux输入设备驱动 174

7.2 键盘输入设备驱动 179

7.3 在MiniGUI中加入键盘驱动 184

7.4 LED输入设备驱动 188

7.5 USB鼠标输入设备驱动 190

第8章 触摸屏驱动 196

8.1 触摸屏原理 196

8.2 S3C2410X触摸屏控制器 197

8.3 S3C2410X触摸屏驱动设计 200

8.4 校准原理及编程思路 204

8.4.1 线性校准原理 205

8.4.2 三点校准原理 205

8.5 利用tslib库校准 207

8.6 在MiniGUI中加入触摸屏驱动 211

第9章 块设备驱动 213

9.1 Linux块设备驱动 213

9.2 简单块设备驱动 217

9.3 Linux文件系统 221

9.4 MTD驱动分析 223

9.5 cramfs文件系统 224

9.6 NAND和NOR Flash 225

9.7 在系统中添加JFFS2分区 226

第10章 SD卡驱动 229

10.1 SD卡概述 229

10.2 SD卡的通信 231

10.3 SD卡寄存器 233

10.4 Linux对SD卡的支持 235

10.4.1 重要数据结构 236

10.4.2 MMC/SD卡块设备驱动 238

10.4.3 SD卡扫描 243

10.5 如何开发一个SD驱动 244

第11章 网络设备驱动 249

11.1 网络驱动基础 249

11.2 sk_buff 253

11.3 Linux网络设备驱动架构 256

11.4 一个虚拟网络设备驱动 259

11.5 DM9000网卡芯片 262

11.6 DM9000网卡驱动程序分析 265

第12章 红外设备驱动 276

12.1 红外通信协议规范 276

12.2 S3C2410X红外接口 277

12.3 S3C2410X红外设备驱动 279

12.4 Linux对红外网络通信的支持 282

12.5 红外SOCKET通信 285

第13章 音频设备驱动 291

13.1 Linux音频体系 291

13.2 UDA1341TS音频原理 292

13.3 S3C2410X的音频接口 294

13.4 UDA1341TS驱动开发 302

13.5 音频应用层编程 308

13.5.1 OSS音频编程接口 308

13.5.2 ALSA音频编程接口 310

附录:深圳优龙科技YL2410开发板简介 313

主要参考文献 316

精品推荐