嵌入式LINUX驱动程序实战开发PDF电子书下载
- 电子书积分:12 积分如何计算积分?
- 作 者:奚海蛟,谌利,吕铁军编著
- 出 版 社:北京:北京航空航天大学出版社
- 出版年份:2012
- ISBN:9787512409255
- 页数:341 页
第1章Linux设备驱动概述 1
1.1设备驱动的作用 1
1.2 Linux设备驱动的分类 2
1.3内核空间与用户空间 3
1.4编译驱动程序 4
本章小结 7
第2章 开发环境的搭建 8
2.1目标系统的选择 8
2.2主机服务配置 10
2.2.1交叉编译环境的搭建 10
2.2.2网络服务配置 12
2.3 Makefile解析 16
本章小结 18
第3章Linux设备驱动开发基础 19
3.1字符设备驱动程序框架 19
3.1.1加载和卸载 19
3.1.2主、次设备号 21
3.1.3数据结构 24
3.1.4设备注册 28
3.1.5 open和release 30
3.1.6读和写 32
3.1.7 License问题 35
3.2竞争与并发 36
3.2.1竞争与并发概述 36
3.2.2并发控制机制原理 37
3.2.3信号量的实现 39
3.2.4 completion的实现 45
3.2.5其他并发控制机制简介 50
3.3阻塞和异步 52
3.3.1休眠 52
3.3.2 Demo驱动测试 56
3.3.3异步通知 60
3.4时间度量 66
3.4.1测量时间 66
3.4.2获取当前时间和延时 68
3.4.3内核定时器 70
3.4.4 Tasklets机制 76
3.4.5时间度量驱动实例 78
3.4.6驱动程序测试 81
3.5 LED驱动开发实例 82
3.5.1驱动代码分析 83
3.5.2驱动程序测试 90
本章小结 91
第4章Linux设备驱动调试 92
4.1 GDB调试器使用 92
4.2 Linux内核调试和内核打印 98
4.2.1内核中的调试支持 98
4.2.2打印调试信息 102
4.3监视工具 104
4.4内核调试器 110
4.5仿真器调试 116
4.6应用程序测试 117
本章小结 117
第5章 键盘驱动程序设计 118
5.1 Linux中断处理体系结构 118
5.1.1中断的初始化 121
5.1.2注册中断 121
5.1.3中断的处理过程 123
5.1.4中断处理函数卸载 125
5.2按键驱动程序实例 125
5.2.1 S3C2440A的中断控制器 125
5.2.2按键电路连接和工作原理 130
5.2.3驱动程序实现与分析 131
5.2.4测试程序情景分析 139
本章小结 141
第6章A/D驱动程序设计 142
6.1 AD7490介绍 142
6.2 S3C2440与AD7490的硬件连接 143
6.3 SPI通信原理 144
6.4 S3C2440的SPI控制器 145
6.4.1 SPI控制寄存器(SPCONn) 145
6.4.2 SPI状态寄存器(SPSTAn) 146
6.4.3 SPI引脚控制寄存器(SPPINn) 146
6.4.4 SPI波特率预分频寄存器(SPPREn) 147
6.4.5 SPI发送数据寄存器(SPTDATn) 148
6.4.6 SPI接收数据寄存器(SPRDATn) 148
6.5 AD驱动程序实例 149
6.5.1工作原理分析 149
6.5.2驱动程序源码与分析 149
6.5.3测试程序情景分析 154
本章小结 155
第7章 串口驱动程序设计 156
7.1 Linux中的终端设备 156
7.1.1 Linux中的终端设备分类 156
7.1.2 Linux中的终端设备驱动 157
7.1.3 Linux中的UART设备驱动移植 159
7.2串口驱动程序实例 173
7.2.1 S3C2440串口硬件 174
7.2.2 S3C2440串口驱动程序源码与分析 180
7.2.3 S3C2440串口测试程序情景分析 185
本章小结 187
第8章I2C驱动程序设计 188
8.1 I2C总线及其通信 188
8.1.1 I2C总线的特点 188
8.1.2 I2 C总线的通信 189
8.2 S3C2440的I2 C接口硬件原理 191
8.3 S3C2440 I2 C设备驱动程序设计实例 194
8.3.1 AT24C02硬件结构介绍 194
8.3.2 S3C2440与AT24C02的连接与分析 195
8.3.3 AT24C02驱动编写实例 197
8.3.4测试程序编写 203
本章小结 204
第9章RTC时钟驱动程序设计 205
9.1 Linux下的RTC时钟 205
9.1.1 Linux下的时钟系统简介 205
9.1.2 Linux对时间的表示 205
9.2 S3C2440中的RTC控制器 206
9.3 Linux中的RTC驱动功能实现分析 210
9.3.1 RTC平台设备 210
9.3.2 RTC平台设备驱动 212
9.4 S3C2440 RTC设备驱动程序设计实例 214
9.4.1 RTC驱动编写实例 214
9.4.2测试程序编写 220
本章小结 222
第10章 触摸屏设备驱动程序设计 223
10.1触摸屏结构和工作原理 223
10.1.1触摸屏设备概述 223
10.1.2触摸屏设备的工作原理 223
10.2 S3C2440触摸屏接口 226
10.2.1 S3C2440触摸屏接口概述 226
10.2.2 S3C2440触摸屏接口工作模式 227
10.2.3 S3C2440触摸屏接口寄存器 228
10.3 Linux的input子系统驱动架构 232
10.3.1 input子系统核心层 233
10.4 S3C2440触摸屏设备驱动实例 239
10.4.1硬件连接和驱动实现步骤 239
10.4.3测试实例 247
本章小结 250
第11章 网络设备驱动程序设计 251
11.1网络设备驱动简介 251
11.1.1网络结构模型简介 251
11.1.2 Linux下的网络设备概述 252
11.1.3 Linux网络设备驱动的关键数据结构 254
11.1.4 Linux网络设备驱动设计流程 264
11.2 DM9000驱动程序设计 267
11.2.1 DM9000介绍 267
11.2.2 DM9000和S3C2440接口电路设计 272
11.2.3 DM9000驱动程序实例 272
本章小结 289
第12章USB驱动程序设计 290
12.1 USB设备概述 290
12.1.1 USB规范 291
12.2 URB(USB数据传输块) 298
12.3 USB主机驱动 303
12.3.1 S3C2440中的USB主机驱动控制器 303
12.3.2 USB主机驱动结构 303
12.3.3 S3C2440的OHCI HCD实现 315
12.4 USB设备驱动 320
12.4.1 S3C2440中的USB设备驱动控制器 320
12.4.2 USB设备驱动结构 320
12.4.3 USB骨架程序 322
12.4.4 USB串口驱动分析 333
12.5 Linux中的USB驱动移植 336
本章小结 340
参考文献 341
- 《程序逻辑及C语言编程》卢卫中,杨丽芳主编 2019
- 《物联网与嵌入式技术及其在农业上的应用》马德新 2019
- 《高等学校“十三五”规划教材 C语言程序设计》翟玉峰责任编辑;(中国)李聪,曾志华,江伟 2019
- 《改革进程中的刑事诉讼程序与证据问题研究 基于警察的视角》谢波 2019
- 《Java程序设计基础》罗刚 2018
- 《C++程序设计实验指导 第2版》张潇责任编辑;孟桂娥 2019
- 《C程序设计教程 第3版》林小茶,陈昕 2018
- 《Java语言程序设计教程》胡光 2018
- 《C语言程序设计》黑新宏,胡元义主编 2019
- 《C++语言程序设计习题与实验指导》姚雅鹃,石礼娟 2018
- 《市政工程基础》杨岚编著 2009
- 《家畜百宝 猪、牛、羊、鸡的综合利用》山西省商业厅组织技术处编著 1959
- 《《道德经》200句》崇贤书院编著 2018
- 《高级英语阅读与听说教程》刘秀梅编著 2019
- 《计算机网络与通信基础》谢雨飞,田启川编著 2019
- 《看图自学吉他弹唱教程》陈飞编著 2019
- 《法语词汇认知联想记忆法》刘莲编著 2020
- 《培智学校义务教育实验教科书教师教学用书 生活适应 二年级 上》人民教育出版社,课程教材研究所,特殊教育课程教材研究中心编著 2019
- 《国家社科基金项目申报规范 技巧与案例 第3版 2020》文传浩,夏宇编著 2019
- 《流体力学》张扬军,彭杰,诸葛伟林编著 2019
- 《大学计算机实验指导及习题解答》曹成志,宋长龙 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《大学生心理健康与人生发展》王琳责任编辑;(中国)肖宇 2019
- 《大学英语四级考试全真试题 标准模拟 四级》汪开虎主编 2012
- 《大学英语教学的跨文化交际视角研究与创新发展》许丽云,刘枫,尚利明著 2020
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《复旦大学新闻学院教授学术丛书 新闻实务随想录》刘海贵 2019
- 《大学英语综合教程 1》王佃春,骆敏主编 2015
- 《大学物理简明教程 下 第2版》施卫主编 2020
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019