摘要: Android模拟器只能通过端口映射的方式使用kgdbserver调试程序。但开发板除了可以通过ip连接到kgdbserver外还可以通过串口进行连接。开发板同样也带了kgdbserver程序,可直接运行。 大多数开发人员认为kgdb是最好的内核调试工具。Kgdb除了提供类似的printk函数的日志 阅读全文
posted @ 2016-07-03 17:24 立彦 阅读(161) 评论(0) 推荐(0) 编辑
摘要: Hal是建立在linux驱动之上的一套程序库。这套程序库并不属于linux内核而是属于linux内核层之上的应用层。 Google为android加入hal主要目的如下: 1、统一硬件的调用接口。 2、解决了gpl版权问题。 3、针对一些特殊的要求。 编写一款支持hal的linux驱动程序的步骤: 阅读全文
posted @ 2016-07-03 17:23 立彦 阅读(368) 评论(0) 推荐(0) 编辑
摘要: 蜂鸣器是 S3C6410 开发板上带的一个硬件设备。可以通过向寄存器写入特定的值来控制蜂鸣器 发出尖叫声。 这章将介绍蜂鸣器的实现原犁,并实现一个完整的蜂呜器驱动(可以打开和关闭蜂鸣 器). PWm时驱动的实现方式不同于 LED 驱动, PWM 驱动将由多个文件组成。这也是大多数 Linux 驱动的 阅读全文
posted @ 2016-06-05 14:15 立彦 阅读(203) 评论(0) 推荐(0) 编辑
摘要: 这一章就是通过Linux驱动发送数据控制LED小灯的开关。在通过驱动控制LED灯的开始我们需要创建LED驱动的设备文件:第一步:使用cdev-init函数初始化cdev第二步:指定设备号第三步:使用cdev-add函数将字符设备添加到内核中的字符设备数组中第四步:使用class-create宏创建s 阅读全文
posted @ 2016-06-05 14:02 立彦 阅读(118) 评论(0) 推荐(0) 编辑
摘要: 这章主要讲述了一个linux驱动程序,首先说了编写linux驱动程序的步骤 :第 1 步:建立 Linu x 驱动骨架 (装载和卸载 Linu x 驱动)第 2 步:注册和注销设备文件;第 3 步z 指定与驱动相关的信息;第 4 步=指定回调函数 ;第 5 步z 编写业务逻辑 ;第 6 步:编写 M 阅读全文
posted @ 2016-06-05 13:47 立彦 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 开发板是开发和学习嵌入式技术的主要硬件设备, 尽管可以在 PC 上开发 Linux 驱动, 然后重 新编译成 ARM 架构的 Linux 驱动模块。但最终都是要在开发板上进行测试的。本书主要介绍开发板的调试环境的搭建, 以及如 何将 Android 系统安装在开发板上。本书的 Linux 驱动示例都 阅读全文
posted @ 2016-06-04 19:09 立彦 阅读(134) 评论(0) 推荐(0) 编辑
摘要: 这章先讲了下载编译和测试安卓源代码:1.配置安卓源代码下载环境:第一步:创建一个用于存放下载脚本文件的目录;第二步:下载repo脚本文件。第三步:创建用于存放安卓源代码的目录;第四步:初始化;第五步:开始下载安卓源代码;2.安卓源代码目录结构解析;3.下载安卓源代码中的一部分:方法一:使用repo 阅读全文
posted @ 2016-04-26 13:06 立彦 阅读(135) 评论(0) 推荐(0) 编辑
摘要: 本章开始先说了liunx和安卓都是开源型的操作系统,其核心就是源代码的开放性,既然涉及源代码,就需要对源代码进行管理。liunx内核及很多著名的项目都是用Git进行源代码管理。liunx以一个文件系统专家和内核设计者的视角对Git进行了设计,其独特的设计让Git拥有非凡的性能和最优化的储存能力,Gi 阅读全文
posted @ 2016-04-26 12:27 立彦 阅读(139) 评论(0) 推荐(0) 编辑
摘要: 本章主要介绍如何搭建安卓底层开发环境,主要包括安卓应用开发环境、安卓NDK开发环境和交叉编译环境的搭建,虽然本书介绍安卓移植及liunx驱动开发,但仍然需要编写安卓应用程序及安卓NDK程序来测试liunx驱动、HAL程序库等底层程序,所以安卓底层开发不仅需要交叉编译环境,还需要开发安卓应用程序的环境 阅读全文
posted @ 2016-04-25 15:17 立彦 阅读(138) 评论(0) 推荐(0) 编辑
摘要: 本章主要讲述了安卓系统移植和驱动开发,但重点又在于驱动开发,开始先讲了安卓在现代社会的重要性,然后强调了安卓的系统架构:第一层:liunx内核,主要包括驱动程序以及管理内存、进程、电源等资源的程序;第二层:c/c++代码库,主要包括liunx的.so文件以及嵌入式到APK程序中的NDK代码;第三层: 阅读全文
posted @ 2016-04-25 14:31 立彦 阅读(163) 评论(0) 推荐(0) 编辑