一.Linux驱动的代码重用有很多的方法,可以采用标准的C程序的方法将要重用的代码放在其他的文件(在头文件中声明)中。如果要使用某些功能,include相应的头文件即可,也可以是另外一种动态重用的方式,也是一个Linux驱动可以使用另外一个Linux驱动中的资源。蜂鸣器是 S3C6410 开发板上带 ...
分类:
其他好文 时间:
2016-07-07 18:56:12
阅读次数:
198
第八章 这章将介绍蜂鸣器的实现原犁,并实现一个完整的蜂呜器驱动(可以打开和关闭蜂鸣 器)。 1.Linux驱动的代码重用:可以采用标准的C程序的方法将要重用的代码放在其他的文件中。如果要使用某些功能,include相应的头文件即可,也可以是另外一种动态重用的方式,也是一个Linux驱动可以使用另外一 ...
分类:
移动开发 时间:
2016-07-07 17:10:41
阅读次数:
143
通过蜂鸣器的实现原理,实现一个完整的蜂呜器驱动,可以打开和关闭蜂鸣器. PWM驱动的实现方式不同于LED驱动, PWM 驱动将由多个文件组成。这也是大多数 Linux 驱动的标准实现方式. 刚开始是LED驱动的代码重用,Linux 驱动的代码重用有很多种方法。可以采用标准 C程序的方式。将要重用的代 ...
分类:
移动开发 时间:
2016-07-07 09:54:12
阅读次数:
222
一、Linux驱动的代码重用 1、编译是由多个文件组成的Linux驱动 如果Linux驱动只有1个源代码文件,0bj-m变量可以和源代码文件同名。如果Linux驱动包含多个文件,就需要使用module-y来指定所以的目标文件。 2、Linux驱动模块的依赖 代码重用分为静态和动态两种。 二、强行卸载 ...
分类:
其他好文 时间:
2016-07-06 21:43:08
阅读次数:
129
代码重用分为静态和动态两种。 模块依赖,也称为导出符号。如果只能用一句话解释如何利用导出符号实现代码共卒,这句话就是“在一个驱动模块里使用另一个驱动模块里的被导出的符号(常章、变量、函数等)”。 如果编写的Linux驱动程序在逻辑上是正确的,那么可以正常装载和卸载,但在某些情况下,可能某些程序会出现 ...
分类:
其他好文 时间:
2016-07-05 20:28:51
阅读次数:
194
代码的重用分为静态重用跟动态重用。静态重用:采用标准的c程序的方式,将要重用的代码放在其他的文件中,如果要使用相应的某些功能,include相应头文件即可。动态重用:也就是一个linux驱动可以使用另外一个linux驱动中的资源。还有另外一种代码共享的方式:,模块依赖,也称为导出符号。在一个驱动模块 ...
分类:
移动开发 时间:
2016-07-05 01:01:03
阅读次数:
223
看了本书第八章,我学习到了: PWM连接到了TOUT1端口,使用端口F的GPFCON寄存器进行控制。宏S3C64XX_GPFCON表示寄存器GPFCON的虚拟地址。仅用最高两位(30、31位)控制PWM。最高两位为 10时,打开PWM;为00时停止PWM。用iowrite32函数为GPFCON设置不 ...
分类:
移动开发 时间:
2016-07-05 00:59:36
阅读次数:
252
第八章主要介绍了蜂鸣器驱动,蜂鸣器是S3C6410开发板上带的一个硬件设备。可以通过向寄存器写入特定的值来控制蜂鸣器发出尖叫声。本章就介绍了蜂鸣器的实现原理,并实现一个完整的蜂鸣器驱动。 本章介绍了一个实验:让开发板发出声音,蜂鸣器驱动将介绍蜂鸣器的实现原理,并实现一个完整的蜂呜器驱动,可以打开和关 ...
分类:
其他好文 时间:
2016-07-04 21:57:18
阅读次数:
140
在这一章中,我们得知了Linux内核提供了多个与I/O内存交互的函数,比如ioread16、ioread32、iowrite16、iowrite32等,Linux内核的内存管理模块负责同步I/O内存与硬件中的数据。 每一个连接Linux的硬件在I/O内存中都会有映射地址。由于LED驱动只能在S3C开 ...
分类:
移动开发 时间:
2016-07-04 21:50:43
阅读次数:
138
通过学习Android深度探索(卷一)HAL与驱动开发的第八章让我知道了如何让开发板发出声音,如何编写蜂鸣器的驱动程序。了解了Linux驱动的代码重用,代码重用分为静态和动态两种。 Linux驱动的代码重用有很多方法,可以采用标准C程序的方式,将重要代码的代码放在其他的文件中,如果要使用某些功能,i ...
分类:
移动开发 时间:
2016-07-04 18:50:00
阅读次数:
224