第七章 LED将为我闪烁:控制发光二极管 一.LED驱动的实现原理。尽管Linux驱动直接和硬件打交道,但并不是Linux驱动直接向硬件中的内存写数据,而是与本机的I/O内存进行交互。 二.编写LED驱动。Linux驱动提供了两种交互方式:命令和读写设备文件。LED驱动以动态驱动模块的形式提供,测试 ...
分类:
其他好文 时间:
2016-06-03 12:47:33
阅读次数:
173
一、LED驱动的实现原理 Linux驱动与硬件交互的原理:Linux驱动与I/O内存通过ioread30和iowrite32函数交互;I/O内存与硬件,内存管理模块负责同步I/O内存与硬件中德数据。 二、编写LED驱动 其中1表示开、0表示关。当字符串长度不足4个,相当于后面补0 1.创建LED驱动 ...
分类:
其他好文 时间:
2016-06-03 12:42:28
阅读次数:
180
第六章、第一个linux驱动程序:统计单词个数 一、编写Linux驱动程序的步骤 1.建立Linux驱动骨架(装载和卸载Linux驱动) Module_init处理驱动初始化,module_exit处理驱动退出 2.注册和注销设备文件 Misc_register函数创建和misc_deregiste ...
分类:
系统相关 时间:
2016-06-03 12:40:29
阅读次数:
174
代码重用分为静态和动态。静态重用是使用某些功能时,include相应的头文件即可。动态重用就是一个Linux驱动可以使用另外一个Linux驱动中的资源。C或C++语言中编译多个源代码文件时,如果a.c使用了b.c文件中的函数,需要在a.c文件中使用extern预先定义b.c中德函数,extern的作 ...
分类:
其他好文 时间:
2016-06-03 12:39:58
阅读次数:
129
第八章主要讲的实例是蜂鸣器驱动程序,蜂鸣器是S3C6410开发板上自带的一个硬件设备。 这一章讲了linux驱动的代码重用,代码重用分为静态重用和动态重用,将要重用的代码放在头文件中声明,这种是静态重用,linux驱动可以使用另一个linux驱动中的资源,这是动态重用。 还有一种代码共享的方式:模块 ...
分类:
其他好文 时间:
2016-06-03 11:19:29
阅读次数:
135
编写Linux驱动程序的步骤: 第1步:建立Linux驱动骨架(装载和卸载Linux驱动) 任何类型的程序都有一个基本的结构,例如,C语言需要有一个入口函数main。Linux驱动程序也不例外。Linux内核在使用驱动时首先需要装载驱 动。 在装载过程中需要进行一些初始化工作,例如,建立设备文件,分 ...
分类:
移动开发 时间:
2016-06-03 10:02:42
阅读次数:
151
本章是android底层开发的第一个章节,本章是第一个linux驱动程序,统计单词个数。 本章作为实战第一章,首先要做的就是了解linux驱动到底是个什么东西,首先了解linux驱动的工作方式,linux系统将每一个驱动都映射成一个文件,保存在/dev中,再使用c语言函数ioctl向驱动的设备文件发 ...
分类:
其他好文 时间:
2016-06-03 09:59:14
阅读次数:
136
通过学习Android深度探索(卷一)HAL与驱动开发的第六章让我了解了统计单词个数的Linux驱动程序开发和测试的完整过程。 Linux系统将每一个驱动都映射成一个文件,这些文件被称为设备文件或驱动文件,都保存在/dev目录中。由于大多数Linux驱动都有与其对应的设备文件,因此与Linux驱动交 ...
分类:
移动开发 时间:
2016-06-02 13:36:44
阅读次数:
140
本章从一个小程序由浅入深告诉读者“Linux驱动程序到底是个什么东西”。Linux驱动和普通的Linux API没有本质的区别,只是使用方式不同而已。 Linux系统将每个驱动都映射成一个文件。这些文件称为设备文件或驱动文件,都保存在/dev目录中。这使得与Linux驱动进行交互就向与普通文件进行交 ...
分类:
系统相关 时间:
2016-06-02 13:26:50
阅读次数:
199