随笔分类 - Android
用于记录Android的学习笔记。
摘要:1、前言 本文将基于Quectel的SC20模块进行OV5648 Camera的点亮,并对其过程进行一个简要介绍,SC20模块是一款基于MSM8909的智能模块,视频输入接口基于MIPI_CSI标准,可以支持两个摄像头,后置摄像头接口最高支持8MP像素的Camera,前置摄像头接口可支持2MP像素的
阅读全文
摘要:1、前言 2、property_get/property_set使用
阅读全文
摘要:1、前言 Android系统中的getevent工具能够在终端设备上运行,并且能够提供关于Android终端输入设备和Linux内核输入事件的实时转储关系,可以确保设备驱动程序报告各个输入设备的一系列预期功能并生成输入事件所需的信息流。 该工具的源码路径为: AOSP/system/core/too
阅读全文
摘要:1、前言 在Android终端设备的开发过程中,有时候我们需要为Android系统中预装APP,本文将介绍如何在Android源码中进行系统预装APP。 2、Android系统预装APP 首先,需要准备好预装的APP文件,以Bing浏览器为例,apk文件下载链接如下: https://www.app
阅读全文
摘要:1、前言 一般情况下,在进行Android系统开发调试的时候,都是使用Mico USB接口的adb工具进行调试,方便简单,除了能使用Mico USB进行数据流传输以外,还能使用网络进行adb调试。 2、网络adb调试开启 (1)Mico USB数据线转网络 //查看当前的Android终端设备 #
阅读全文
摘要:1、前言 AX88772C是一款USB转以太网控制芯片,并且支持Microsoft AOAC(Always On Always Connected),可为各类应用增加低价、小封装、高效能、高集成度和即插即用的快速以太网联网特性,适用于电脑、游戏机、智能家电及任何具体标准USB端口的嵌入式系统,本文将
阅读全文
摘要:1、前言 在嵌入式开发中,我们有时候会需要使用AT指令对AT端口进行操作,例如,在MSM8953的Android平台中,有时候需要使用AT指令对modem进行读写操作,本质上,就是串口设备的读写操作,本文将介绍,如何使用ADB工具,对AT端口进行读写操作。 2、AT指令操作方法 使用ADB登入到An
阅读全文
摘要:1、前言 在Android系统中使用启动脚本.rc文件,可以在系统的初始化过程中进行一些简单的初始化操作,这些初始化启动脚本.rc文件直接被安装到目标板的根文件系统中,例如,init.rc启动脚本被init可执行程序进行解析,本文将简单介绍如何在MSM8953平台的Android系统中添加我们自己的
阅读全文
摘要:1、前言 在Linux Kernel 2.6的时代,内核引入了一个新的安全系统,用来提供访问控制安全策略的机制,这个安全系统就是SELinux,全称为Security Enhanced Linux,由NSA贡献的,它为Linux内核子系统引入了一个健壮的强制控制访问架构 。 Linux系统上传统的访
阅读全文
摘要:1、前言 在前面的文章《MSM8909中LK阶段LCM屏适配与显示流程分析(一)》,链接如下: https://www.cnblogs.com/Cqlismy/p/12019317.html 介绍了如何使用GCDB工具生成要适配的屏幕的相关配置文件,同时,也介绍了如何在LK启动阶段中,在基于Qual
阅读全文
摘要:1、前言 在驱动开发中,我们往往需要适配一些新的屏幕或者调试一些屏幕的参数等,对于Qualcomm的MSM8909这款SoC,当启动Android系统时,会有一个LK阶段,该阶段用来启动Linux内核系统,本文,将简单介绍如何在MSM8909的LK阶段中如何进行LCM屏的兼容和适配流程,并对LK阶段
阅读全文
摘要:1、前言 LK是Little Kernel的缩写,在Qualcomm平台的Android系统中普遍采用LK作为bootloader,它是一个开源项目,LK是整个系统的引导部分,所以不是独立存在的,但是目前LK只支持arm和x86架构,LK显著的特点是实现了一个简单的线程机制(thread),并和Qu
阅读全文
摘要:文章转载链接: https://blog.csdn.net/RadianceBlau/article/details/73229005 对于嵌入式工程师了解芯片启动过程是十分有必要的,在分析、调试各种问题的时候都有可能涉及到这方面的知识,同时这部分知识也是比较复杂的,因为其中涉及到芯片内部架构,启动
阅读全文
摘要:1、修改板级文件 $ cd AOSP $ vim device/qcom/msm8909/BoardConfig.mk 如下所示: 2、修改defconfig文件 $ cd kernel/arch/arm/configs/ $ vim msm8909_defconfig or $ vim msm89
阅读全文
摘要:1、前言 在Android开发中可能会遇到添加新的按键的需求,本文将简单介绍如何在Android系统中完成一个新的按键的添加。 当系统有新的按键需要添加时,Linux内核下的键码到Android系统中键码是如何进行转换映射的? 2、内核添加设备节点 首先,我们需要在Linux内核添加新的按键值,在L
阅读全文
摘要:1、前言 Android系统使用HAL这种设计模式,使得上层服务与底层硬件之间的耦合度降低,在文件: AOSP/hardware/libhardware/include/hardware/hardware.h 中描述了HAL的编写规范,并且给出了标准接口,本文将通过一个简单的实例讲解HAL的编写。
阅读全文
摘要:1、前言 Android系统硬件抽象层(Hardware Abstraction Layer),简写为HAL,是连接Android Framework与Linux内核设备驱动的重要桥梁。HAL存在的意义有以下两个方面: (1)HAL层屏蔽掉不同硬件设备的差异,为Android提供了统一的设备访问接口
阅读全文
摘要:1、前言 Android系统中,应用程序一般是使用Java语言进行开发的,但是通过C语言也可以进行Android中的可执行程序开发,接下来,将简单介绍在Android系统中如何通过C程序来访问内核中sysfs的属性文件,也可以理解为驱动设备节点。 2、添加kernel驱动设备节点 做过Linux内核
阅读全文
摘要:1、前言 Android.mk用于向编译系统描述源文件和共享库,它实际上是编译系统解析一次或多次的微小GNU makefile片段。它的语法支持将源文件分组为模块,模块是静态库、共享库或独立的可执行文件。 2、简单示例 首先来看一个最简单的Android.mk的例子,如下所示: # A simple
阅读全文
摘要:Android Init Language Android初始化语言 The Android Init Language consists of five broad classes of statements,which are Actions, Commands, Services, Optio
阅读全文