作为开发和学习嵌入式技术的主要硬件设备,开发板是机器重要的。因为即使可以在PC上开发Linux驱动,并重新编译成ARM架构的Linux驱动模块,但最终还是要在开发板上进行测试。有两个原因:因为ARM架构的开发板可 基于X86架构的PC在CPU指令以及二进制格式上都有所不同;而且驱动需要访问的硬件,有 ...
分类:
移动开发 时间:
2016-07-03 18:54:17
阅读次数:
186
嵌入式Linux的调试技术 对于复杂的Linux驱动以及HAL等程序库,需要使用各种方法对其进行调试。例如,设置断点、逐步跟踪代码、输出调试信息等。 Printk函数的用法与printf函数类似,只不过printk函数运行在内核空间,printf函数运行在用户空间。也就是说,像Linux驱动这样的L ...
分类:
其他好文 时间:
2016-07-03 18:52:44
阅读次数:
119
第八章: 1、通过蜂鸣器实现一个完整的蜂呜器驱动,可以打开和关闭蜂鸣器.。 2、PWM驱动的实现方式不同于LED驱动, PWM 驱动将由多个文件组成。 3、Linux 驱动的代码重用的方法: 1)采用标准 C程序的方式。将要重用的代码放在其他 的文件 (在头文件中声明〉中。 如果要使用某些功能, i ...
分类:
其他好文 时间:
2016-07-03 18:52:34
阅读次数:
131
对于复杂的Linux驱动以及HAL等程序库,需要使用各种方法对其进行调试。例如,设置断点、逐步跟踪代码、输出调试信息等。 Printk函数的用法与printf函数类似,只不过printk函数运行在内核空间,printf函数运行在用户空间。也就是说,像Linux驱动这样的Linux内核程序只能使用pr ...
分类:
系统相关 时间:
2016-07-03 18:49:09
阅读次数:
125
蜂鸣器是s3c6410开发板上带的一个硬件设备,可以通过向寄存器写入特定的值来控制蜂鸣器发出尖叫声。 在前面的章节编写了两个完整的linux驱动:word_count驱动和led驱动,两个有一共同点就是都有一个源代码文件组成。 代码重用分为静态和动态两种。即将需要重要的代码使用者放在一起进行编译,最 ...
分类:
移动开发 时间:
2016-07-03 18:47:50
阅读次数:
185
Google为Android加入HAL的主要目的 1、 统一硬件的调用接口。由于HAL有标准的调用接口,所以可以利用HAL屏蔽Linux驱动复杂、不统一的接口。 2、 解决了GPL版权问题。由于Linux内核基于GPL协议,而Android基于Apache Licence 2.0协议。因此Googl ...
分类:
其他好文 时间:
2016-07-03 18:47:33
阅读次数:
160
Linux内核调试被很多人认为是很困难的,很多人宁愿直接使用printk函数输出调试信息,也不愿意使用各种命令进行调试。对于复杂的Linux驱动及HAL等程序,需要使用各种方法对其进行测试。printk函数与printf函数类似,而printk函数运行在内核空间,printf函数运行在用户空间。 嵌 ...
分类:
系统相关 时间:
2016-07-03 18:47:29
阅读次数:
149
驱动蜂鸣器介绍蜂鸣器的实现原理,实现一个完整的蜂呜器驱动,通过驱动控制蜂鸣器的打关。 蜂鸣器也称为PWM脉冲宽度调制,基本原理就是通过脉冲来控制蜂鸣器的打开和停止。蜂鸣器是开发板上带的一个硬件设备,可以通过向寄存器写入特定的值来控制蜂鸣器发出的声音 linux驱动的代码重用,代码重用分为静态重用和动 ...
分类:
其他好文 时间:
2016-07-03 18:46:58
阅读次数:
105
Hal是建立在linux驱动之上的一套程序库。这套程序库并不属于linux内核而是属于linux内核层之上的应用层。 Google为android加入hal主要目的如下: 1、统一硬件的调用接口。 2、解决了gpl版权问题。 3、针对一些特殊的要求。 编写一款支持hal的linux驱动程序的步骤: ...
分类:
移动开发 时间:
2016-07-03 18:45:22
阅读次数:
130
Linux驱动的代码重用有很多的方法,可以采用标准的C程序的方法将要重用的代码放在其他的文件(在头文件中声明)中。如果要使用某些功能,include相应的头文件即可,也可以是另外一种动态重用的方式,也是一个Linux驱动可以使用另外一个Linux驱动中的资源。蜂鸣器是 S3C6410 开发板上带的一 ...
分类:
其他好文 时间:
2016-07-03 18:45:01
阅读次数:
126