摘要: 一个Linux驱动并不是为某个特定的用户空间程序编写的。调用Linux驱动的程序可能会很多,也很有可能会有很多程序同时对 Linux 驱动进行读、写等操作。由于Linux驱动可能使用全局数据(也称为共享数据〉,如果同时对这些共享数据进行读写,可能会出现脏数据,这就要求Linux 驱动具有控制对其字数 阅读全文
posted @ 2016-07-07 20:18 小白客程序猿 阅读(154) 评论(0) 推荐(0) 编辑
摘要: 对于复杂的 Linux 驱动及HAL等程序库,需要使用各种方法对其进行调试。例如,设置断点、逐步跟踪代码、-输出调试值息等。使用 printk 函数可以很方便地将消息写入日志文件或控制台。但大量使用 printk 函数频繁 操作日志文件或控制台设备文件 Udev/console)会严重影响 Linu 阅读全文
posted @ 2016-07-07 20:12 小白客程序猿 阅读(239) 评论(0) 推荐(0) 编辑
摘要: HAL ( Hardware Abstraction Layer,硬件抽象腔,〉是建立在Linux驱动之上的一套程序库。这套程序并不属于 Linux 内核, 而是属于 Linux 内核层之上的应用层。 Google 为 Android 增加 HAL 的主要目 的除了尽量避免应用程序直接访问 Linu 阅读全文
posted @ 2016-07-07 20:11 小白客程序猿 阅读(309) 评论(0) 推荐(0) 编辑
摘要: 蜂鸣器是S3C6410开发板上带的一个硬件设备,可以通过向寄存器写入特定的值来控制蜂鸣器发出尖叫。 (1)前提是eclipse中安装了CDT插件。 (2)在eclipse中单击File-New-Other,选择C Project项,单击next进行相应的设置,例如工程名为word_count,然后F 阅读全文
posted @ 2016-06-06 19:57 小白客程序猿 阅读(465) 评论(0) 推荐(0) 编辑
摘要: Linux系统将每一个驱动都映射成一个文件.这些文件称为设备文件或驱动文件,都保存在/dev目录中。可以直接使用C语言函数打开设备,并用其发送指令。 编写linux驱动程序:编写linux驱动程序的骨架,包含module_init和module_exit函数及指定这两个函数的两个宏的C程序文件;注册 阅读全文
posted @ 2016-06-06 19:55 小白客程序猿 阅读(220) 评论(0) 推荐(0) 编辑
摘要: 尽管linux驱动直接与硬件打交道,但并不是linux驱动直接向硬件中的内存写数据,而是与本机的I/O内存进行交互。 由于misc_register函数只能建立主设备号为10的设备文件,如果想建立其他主设备号的设备文件,就需要使用cdev_init、register_chrdev_region、cd 阅读全文
posted @ 2016-06-06 19:55 小白客程序猿 阅读(149) 评论(0) 推荐(0) 编辑
摘要: 开发板是开发和学习嵌入式技术的主要硬件技术,从技术上说与我们.常用的手机类似也包含显示屏、键盘、Wi-Fi、蓝牙等模块,但在开发班上那个安装嵌入式系统比手机容易的多,有较多拓展的端口。 设备文件:linux系统将每一个驱动都映射成一个文件,这些文件都称为设备文件或驱动文件,都保存在/dev目录中。由 阅读全文
posted @ 2016-06-06 19:54 小白客程序猿 阅读(149) 评论(0) 推荐(0) 编辑
摘要: Android源代码包含了很多东西,内嵌在android中的应用程序源代码包括相机,计算机,日历,相册,拨号器等,Android SDK源代码包含adb、emulator、mksdcard、aapt等,Android NDK的源代码,HAL源代码。在Linux终端执行一系列命令来配置下载环境后下载A 阅读全文
posted @ 2016-04-27 16:09 小白客程序猿 阅读(144) 评论(0) 推荐(0) 编辑
摘要: Linux用户是在开源软件的陪伴下成长。Linux下很多软件都不直接以二进制形式的安装包提供,而是提供了源代码。因为直接提供安装包需要为Linux得各个内核版本都生成一个二进制的安装包,而Linux内核版本非常繁多,所以为了减小发行包的大小,直接提供源代码,由用户在指定Linux内核上进行编译。而G 阅读全文
posted @ 2016-04-27 13:39 小白客程序猿 阅读(109) 评论(0) 推荐(0) 编辑
摘要: 搭建android底层开发环境,主要包括android应用程序开发环境,android NDK开发环境和交叉编译环境的搭建。使用ubuntu linux 10.04以上版本作为开发linux驱动的平台,更容易测试和调试linux驱动。Ubuntu Linux提供了简单的方式安装jdk,在Linux终 阅读全文
posted @ 2016-04-27 13:02 小白客程序猿 阅读(104) 评论(0) 推荐(0) 编辑