2016年7月9日
摘要: Goggle为Android 加入HAL主要有如下目的: 统一硬件的调用接口。由于HAL有标准的调用接口,所以可以利用HAL屏蔽Linux驱动复杂、不统一的接口。 解决了GPL版权问题。由于 Linux 内核基于GPL协议,而Android基于Apache Licence 2 . 0协议。 针对一些 阅读全文
posted @ 2016-07-09 16:11 Y-Beatrice 阅读(216) 评论(0) 推荐(0) 编辑
摘要: 一、 防止函数printk降低linux性能: 利用C语言中的编译指令(#if、#else、#endif等)。 现在修改printk_demo驱动代码,通过编译指令定义了一个pr_debug宏,并通过修改编译指令的条件值来控制是否调用printk函数。如下: # if 1//此处为1,使用print 阅读全文
posted @ 2016-07-09 16:10 Y-Beatrice 阅读(715) 评论(0) 推荐(0) 编辑
摘要: 主要看一下:Linux驱动代码重用 对于复杂的 Linux 驱 动,就需要使用多个源代码文件存放不同的功能代码,这样做有利于代码分类和管理。 C或C++语言中编译多个源代码文件时,如果a.c使用 b.c文件中的函数,需要在 a.c 文件中使用 extern 预先定义 b.c中的函数, extern 阅读全文
posted @ 2016-07-09 16:04 Y-Beatrice 阅读(145) 评论(0) 推荐(0) 编辑
  2016年6月5日
摘要: 一、 led驱动的实现原理: 通过GPC0_3和GPC0_4引脚的高低电平来控制三极管的导通性,从而控制LED灯亮灭。 尽管 Linux 驱动直接与硬件打交道,但并不是 Linux 驱动直接向硬件中的内存写数据, 而是与本机的I0内存(I/O Memory,位于内核空间〉进行交互。所谓 1/0 内存 阅读全文
posted @ 2016-06-05 20:37 Y-Beatrice 阅读(427) 评论(0) 推荐(0) 编辑
摘要: Linux系统将每一个驱动都映射成一个文件.这些文件称为设备文件或驱动文件,都保存在/dev目录中。编写linux驱动最重要的一步就是编写回调函数,否则与设备文件交互的数据无法得到处理。 1. 编写linux驱动程序的步骤: 第 1 步:建立 Linu x 驱动骨架 (装载和卸载 Linu x 驱动 阅读全文
posted @ 2016-06-05 20:35 Y-Beatrice 阅读(315) 评论(0) 推荐(0) 编辑
摘要: S3C6410开发板是低功耗、高性价比的RISC处理器,基于ARM内核,采用“核心技术+底板”结构,可用于移动电话和通信处理等领域。 开发linux驱动程序采用串口通信实现查看调试信息。开发板带了一个串口,可通过串口线和pc连接。Linux驱动在输出调试信息的时候也会通过串口线将调试信息发送至pc机 阅读全文
posted @ 2016-06-05 20:32 Y-Beatrice 阅读(244) 评论(0) 推荐(0) 编辑
  2016年4月27日
摘要: 在谈论Git之前,我们需要了解为什么要使用Git? 使用它的目的:进行源代码管理。 内容:1>安装Git:apt -get install git >apt -get install git-doc git-sun git-email git-gui gitk[注意:当没有为root用户设置密码时, 阅读全文
posted @ 2016-04-27 16:08 Y-Beatrice 阅读(108) 评论(0) 推荐(0) 编辑
摘要: 通过学习前三章:android系统移植和驱动开发概述、搭建开发环境以及Git使用,对于第四章源代码的下载和编译,我已经有初步的了解,以下是我所总结的一些心得也可以说是一些学习内容。 本章就使用git下载源代码,一、下载、编译android源代码:大体流程:1.配置android源代码下载环境【1.创 阅读全文
posted @ 2016-04-27 16:08 Y-Beatrice 阅读(230) 评论(0) 推荐(0) 编辑
摘要: 最近读了一本《android 深度探索 卷1》下面介绍一些读书时的体会: 首先,通过阅读《HAL与驱动开发》了解了“移植”:为特定设备定制Android的过程,而在移植过程中开发最多的就是支持各种硬件设备的LINUX驱动程序,因此谈系统移植就必须谈驱动开发。 其次,需注意:1>android系统架构 阅读全文
posted @ 2016-04-27 16:07 Y-Beatrice 阅读(236) 评论(0) 推荐(0) 编辑
摘要: 在阅读过程中,首先,我们需要知道android开发环境的组成:主要包括三大部分:android应用程序开发环境、android NDK开发环境、交叉编译环境的搭建。 搭建开发环境的前提:一、所需工具:1、JDK6.0以上的版本2、eclipse3.0以上版本3、ADT(用于开发android应用程序 阅读全文
posted @ 2016-04-27 16:07 Y-Beatrice 阅读(144) 评论(0) 推荐(0) 编辑