2016年7月1日
摘要: 通常一个Linux 驱动并不是为某个特定的用户空间程序编写的。 调用Linux 驱动的程序可能会很多,也很有可能会有很多程序 同时对Linux 驱动进行读、写等操作。由于Linux 驱动可能使用 全局数据(也称为共享数据〉,如果同时对这些共享数据进行 读写,可能会出现脏数据,这就要求Linux驱动具 阅读全文
posted @ 2016-07-01 15:07 朱红超 阅读(221) 评论(0) 推荐(0) 编辑
摘要: 对于复杂的Linux 驱动及HAL 等程序库,需要使用各种方法对其进行调试。 例如,设置断点、逐步跟踪代码、-输出调试值息等。虽然嵌入式Linux 在调试方面并没有Visual Studio 、Delphi 、Eclipse这些可视偌工具方便,但 学习一些这方面的技术无疑更有助于开发强大而稳定的Li 阅读全文
posted @ 2016-07-01 15:05 朱红超 阅读(141) 评论(0) 推荐(0) 编辑
摘要: 在Android系统中使用Linux驱动有两种方式,一种是通过传统的方式直接与Linux驱动交互。 例如,直接读写设备文件的数据。另一种是Android特有的,就是通过HAL模块。HAL模块 本质上就是通过Linux共享库与Linux驱动交互,然后应用程序再访问linux共享库,早期的 HAL模块由 阅读全文
posted @ 2016-07-01 15:04 朱红超 阅读(124) 评论(0) 推荐(0) 编辑
摘要: 本章是演示如何将一个Linux驱动分为多个实现文件,通过本章的学习, 可以掌握Linux驱动常用的代码重用方式。本章还介绍了一种强行卸载 Linux驱动的方法。通过这种方法,可免不断重启机器。 蜂鸣器可以通过向寄存器写入特定的值来控制蜂鸣器发出尖叫声。本章 介绍蜂鸣器的实现原理,并实现一个完整的蜂鸣 阅读全文
posted @ 2016-07-01 15:03 朱红超 阅读(102) 评论(0) 推荐(0) 编辑
  2016年6月4日
摘要: 本章讲了控制发光二极管。Led驱动已经包括了linux驱动所有必要的部分。 一个完整的linux驱动主要由内部处理和与硬件交互两部分组成。其中内部 处理主要是指linux驱动的装载、卸载、与设备文件相关的动作处理以及业 务逻辑等。与硬件交互主要是指通过ioweite、ioread32等函数与硬件中 阅读全文
posted @ 2016-06-04 21:39 朱红超 阅读(155) 评论(0) 推荐(0) 编辑
摘要: 本章主要讲了两个重要的部分一是统计单词个数,二是使用eclipse开发和测试linux驱动程序。 统计单词个数:(1)编写linux驱动程序前的准备工作:建立并进入存放linux驱动程序的目录,编写Makefile文件。 (2)编写linux驱动程序的骨架:printf函数运行在用户空间,print 阅读全文
posted @ 2016-06-04 16:41 朱红超 阅读(139) 评论(0) 推荐(0) 编辑
摘要: 本章介绍了如何在OK6410-A开发板上安装Android。开发板是开发和学习 嵌入式技术的主要硬件设备,这张介绍了S3C6410开发板,这是一款低功 耗、高性价比的RISC,可广泛应用于移动电话和通用处理等领域。 接着本章介绍了安装串口调试工具minicom: 1、检测当前系统是否支持usb转串口 阅读全文
posted @ 2016-06-04 16:39 朱红超 阅读(118) 评论(0) 推荐(0) 编辑
  2016年4月30日
摘要: 这一章讲述的是源代码的下载和编译,主要有讲Andriod应用程序开发环境和Linux内核开发环境的搭建,其中重点介绍Linux内核开发环境。 首先要说的是下载、编译、测试Android源代码。我们首先要配置Android源代码的下载环境:1、创建一个用于存放下载脚本文件的目录。2、下载repo脚本文 阅读全文
posted @ 2016-04-30 12:42 朱红超 阅读(106) 评论(0) 推荐(0) 编辑
摘要: 这一章用一整章的内容向我们展示了Git的基本用法,虽然Git不是学习Android移植和Linux内核、驱动开发必须掌握的技术。但是对于想深入研究这些低层技术的读者,Git是学习过程中不可缺少的工具。 这章开始先为我们讲解了如何安装Git,之后是讲在Linux下直接使用man命令查看指定命令的帮助文 阅读全文
posted @ 2016-04-30 12:17 朱红超 阅读(105) 评论(0) 推荐(0) 编辑
  2016年4月29日
摘要: 这章是介绍如何搭建Android底层开发环境,主要包括Android应用程序开发环境、Android NDK开发环境和交叉编译环境的搭建。Android应用程序不仅需要交叉编译环境,还需要Android应用程序的环境。在开发、测试和测试Linux驱动、HAL程序需要JDK6或以上版本;Eclipse 阅读全文
posted @ 2016-04-29 17:03 朱红超 阅读(93) 评论(0) 推荐(0) 编辑