基本信息出版社:中国电力出版社
页码:245 页
出版日期:2008年07月
ISBN:9787508374352
条形码:9787508374352
版本:第1版
装帧:平装
开本:16
正文语种:中文
丛书名:ARM嵌入式Linux系统开发丛书
内容简介 《ARM嵌入式Linux设备驱动实例开发》Linux是一个成熟而稳定的开放源代码操作系统,将Linux植入嵌入式设备具有众多的优点。《ARM嵌入式Linux设备驱动实例开发》以应用最广泛的新一代ARM9处理器为对象,专门分析Linux系统下设备驱动的设计和实现方法。《ARM嵌入式Linux设备驱动实例开发》以8个典型实例为研究对象,讲述基于Linux 2.6.20内核的设备驱动开发过程。这些实例几乎覆盖了Linux系统下常见的设备类型,其中包括按键设备、触摸屏、MMC/SD、网卡、Framebuffer、USB和PCI设备等,《ARM嵌入式Linux设备驱动实例开发》提供了实例的所有源代码,便于读者分析和学习。《ARM嵌入式Linux设备驱动实例开发》通俗易懂,可作为高等院校电子类、电气类、控制类、计算机类等专业本科生、研究生学习嵌入式Linux设备驱动开发的参考书或自学教材,也可供广大希望转入嵌入式领域的科研和工程技术人员参考使用,还可作为嵌入式开发培训班的教材或教辅材料。
编辑推荐 《ARM嵌入式Linux设备驱动实例开发》内容包括:
按键设备驱动
触摸屏设备驱动
MMC/SD设备驱动
网卡设备驱动
Framebuffer设备驱动
USB设备驱动
PCI设备驱动
《ARM嵌入式Linux设备驱动实例开发》是《ARM嵌入式Linux系统开发丛书》之一。
《ARM嵌入式Linux设备驱动实例开发》以应用最广泛的新一代ARM9处理器为对象,专门分析Linux系统下设备驱动的设计和实现方法。《ARM嵌入式Linux设备驱动实例开发》以八个典型实例为研究对象,讲述基于Linux 2.6.20内核的设备驱动开发过程。这些实例几乎覆盖了Linux系统下常见的设备类型,其中包括按键设备、触摸屏、MMC/SD、网卡、Framebuffer、USB和PCI设备等,《ARM嵌入式Linux设备驱动实例开发》提供了实例的所有源代码,便于读者分析和学习。
目录
前言
第1章 嵌入式Linux设备驱动开发基础
1.1 设备驱动介绍
1.1.1 Linux设备驱动
1.1.2 Linux设备驱动分类
1.2 设备驱动相关的重要概念
1.2.1 Linux中断
1.2.2 内存与I/O端口
1.2.3 并发控制
1.2.4 阻塞(Blocking)与非阻塞(Nonblocking)
1.3 运行和编译设备驱动模块
1.3.1 编写Hello World设备模块
1.3.2 编写Makefile
1.3.3 加载和卸载模块
1.4 ARM处理器
1.4.1 ARM处理器简介
1.4.2 ARM处理器的选型
1.4.3 S3C2410简介
1.5 UD.2410DVK.I开发板
1.5.1 开发板简介
1.5.2 硬件资源
1.5.3 软件资源
1.6 小结
第2章 按键设备驱动程序
2.1 按键设备模块硬件接口和寄存器
2.1.1 按键设备模块硬件接口电路
2.1.2 按键设备模块相关寄存器
2.2 按键设备模块驱动程序
2.2.1 字符设备相关的数据结构
2.2.2 按键设备模块驱动程序分析
2.2.3 按键设备驱动测试
2.3 小结
第3章 触摸屏设备驱动程序
3.1 触摸屏设备简介
3.1.1 四线电阻式触摸屏工作原理
3.1.2 S3C2410触摸屏接口原理
3.2 触摸屏设备接口电路与寄存器
3.2.1 触摸屏接口电路
3.2.2 触摸屏与ADC接口寄存器
3.3 触摸屏设备驱动程序分析
3.3.1 初始化和退出函数
3.3.2 probe函数
3.3.3 中断处理函数
3.3.4 remove函数
3.4 测试和编译触摸屏设备驱动
3.5 小结
第4章 MMC/SD卡设备驱动程序
第5章 网卡设备驱动程序
第6章 Framebuffer设备驱动程序
第7章 USB设备驱动程序
第8章 NAND Flash设备驱动程序
第9章 PCI设备驱动程序
第10章 调试技术
参考文献
……
文摘 第一章 嵌入式Linux设备驱动开发基础
1.1 设备驱动介绍
设备驱动是任何计算机系统(包括嵌入式系统)硬件与软件工作的接口,它是软件系统与硬件系统交互的桥梁。设备驱动往往指设驱动程序,也就是说它属于软件。设备驱动可以理解为一类程序,而这类程序的功能一般就是驱动硬件正常工作,提供给软件良好的工作接口。设备驱动程序既可以工作在有操作系统的环境下,也可以工作在无操作系统的环境中。通常在实现一些简单的硬件控制时,由于系统功能比较单一,不需要操作系统来管理,所以针对这种情况的设备驱动实现相对来说比较简单,因为它只完成控制特定硬件的功能,而不需要考虑其他的并发任务等复杂情况。但是往往作为一个大型的、多任务的复杂系统,需要有操作系统来对它进行管理。在这种情况下,编写驱动程序就要考虑到许多其他任务的并发、任务的优先级以及出现中断情况的处理等,所以通常在带有操作系统的环境下编写设备驱动相对比较复杂,但是这也是实际中应用最广的类型,所以对想人事设备驱动程序开发的读者来说,这部分内容是必须掌握的。
1.1.1 Linux设备驱动
本书是以应用最广泛的Linux操作系统为研究对象,讲述如何在Linux系统下开发设备驱动程序。……