2016年7月8日

第9章 硬件抽象层:HAL

摘要: HAL(Hardware Abstraction Layer)硬件抽象层是建立在Linux驱动之上的一套程序库。属于Linux内核层上的应用层。HAL的主要目的是尽量避免应用程序直接访问Linux驱动,保护“私人财产”。传统的Linux驱动一般有两种类型的代码:访问硬件寄存器的代码和业务逻辑代码。 阅读全文

posted @ 2016-07-08 15:10 Redknot 阅读(107) 评论(0) 推荐(0) 编辑

第10章 嵌入式linux的调试技术

摘要: 对于复杂的Linux驱动及HAL等程序库,需要使用各种方法进行调试。 打印内核调试信息:printk Printk函数运行在内核空间,printf函数运行在用户空间。Linux内核程序只能使用printk函数输出调试信息。 防止printk函数降低linux驱动性能 Linux驱动只在开发阶段使用p 阅读全文

posted @ 2016-07-08 15:10 Redknot 阅读(114) 评论(0) 推荐(0) 编辑

第8章 蜂鸣器驱动

摘要: 蜂鸣器是S3C6410开发板上带的一个硬件设备。可以通过向寄存器写入特定的值来控制蜂鸣器发出尖叫声。 1.Linux驱动的代码重用 静态重用:将重用的代码放在其他文件中,如使用哪些功能,include相应的头文件 动态重用:一个linux驱动使用另一个linux驱动中的资源 2.强行卸载linux驱 阅读全文

posted @ 2016-07-08 15:09 Redknot 阅读(89) 评论(0) 推荐(0) 编辑

2016年6月5日

第七章 I/O

摘要: 尽管Linux驱动直接与硬件打交道,但是并不是Linux驱动直接向硬件的内存写数据,而是与本机的I/O进行交互。所谓I/O内存是通过各种接口连接到主机的内存中的映射。 Linux内核提供了多个与I/O内存交互的函数。每个连接Linux的硬件在I/O内存中都会有映射首地址。 创建LED驱动的设备文件: 阅读全文

posted @ 2016-06-05 13:25 Redknot 阅读(98) 评论(0) 推荐(0) 编辑

第六章 编写Linux驱动程序

摘要: Linux驱动的工作和访问方式是Linux的亮点之一,同时受到了业界广泛好评。Linux系统将每个驱动都映射成一个文件。这些文件称为设备文件或驱动文件。 编写Linux驱动程序的步骤: 第一步:建立Linux驱动骨架(装载和卸载Linux驱动) 第二步:注册和注销设备文件 第三步:指定与驱动相关的信 阅读全文

posted @ 2016-06-05 13:24 Redknot 阅读(152) 评论(0) 推荐(0) 编辑

第五章 S3C6410

摘要: S3C6410 是由三星公司推出的一款低功耗、高性价比的RISC处理器,它基于ARM11内核,可广泛应用于移动电话和通用处理等领域。由于只用一块S3C6410 ARM11的的处理器芯片还无法测试驱动,因此,还必须在该处理器的基础上进行一些列的扩展,如加上适当的接口,以便可以和PC链接进行调试。基于S 阅读全文

posted @ 2016-06-05 13:22 Redknot 阅读(123) 评论(0) 推荐(0) 编辑

2016年4月27日

源代码的下载和编译

摘要: Android 的源代码是使用Git管理的,有两种方法可以得到Android代码,第一种是使用repo,repo是个小工具,可以方便管理。第二种是直接使用Git,使用 git clone 命令直接把Android的代码仓库克隆到本地就可以了。 编译Android源代码,首先要运行envsetup.s 阅读全文

posted @ 2016-04-27 09:17 Redknot 阅读(113) 评论(0) 推荐(0) 编辑

Git使用入门

摘要: 先附上我的GitHub地址:http://github.com/redknotmiaoyuqiao Git是用来管理项目代码的版本控制器。 git init 版本库又名仓库,英文名repository,你可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改、删除,Gi 阅读全文

posted @ 2016-04-27 09:16 Redknot 阅读(142) 评论(0) 推荐(0) 编辑

搭建Android 开发环境

摘要: 看完这章之后,我发现这本书是使用的ADT作为开发环境,而这种方式已经过时。经过查阅资料,我了解到现在开发一般使用 Android Studio,所以,我重新查阅了Android Studio的安装方法。 1,下载安装JDK 首先上甲骨文公司的官方网站下载JDK的安装包,根据自己电脑的操作系统选择正确 阅读全文

posted @ 2016-04-27 09:14 Redknot 阅读(110) 评论(0) 推荐(0) 编辑

Android 系统移植与驱动开发概述

摘要: 通过这章的学习,我了解到了一些基本知识,以及了解到了使用程序控制LED灯的过程。 1,Android 系统架构 Android 系统分为4层,分别是Linux内核,C/C++代码库,Android SDK API,应用程序。Linux内核负责最基本的功能,例如内存管理,安全性,进程管理, 网络协议栈 阅读全文

posted @ 2016-04-27 09:13 Redknot 阅读(103) 评论(0) 推荐(0) 编辑

导航