
驱动移植
文章平均质量分 94
sdvch
dream,vision,courage and hope--create a sunny day
展开
-
给android添加busybox
默认情况下,android使用的是精简的toolbox工具,相对习惯了busybox的朋友来说,使用toolbox简直无法忍受。网上介绍了一些移植busybox到android平台的文章,但是用起来总感觉有些不顺手,比如有网友将busybox放在了/data目录,这可是ram目录啊,掉电后busybox也会根着消失。还有些网友直接将toolbox给替换了,要知道toolbox有一些命令转载 2015-05-26 16:17:51 · 2681 阅读 · 0 评论 -
安卓开发之常见死机问题--log分析
一般在平时工作中,基本上很多代码可以在eclipse+ndk进行调试,但如果需要用到具体的硬件设备,如媒体播放设备无法模拟的情况下,只能上硬件(盒子或手机)上进行调试。此时唯一的调试手段就是logcat产生log信息进行分析问题了。 什么时候会有Log文件的产生 ?一般在如下几种情况会产生log文件 。 1、程序异常退出 uncaused exception 2、程序强制关闭 F转载 2015-05-22 21:33:05 · 1008 阅读 · 0 评论 -
Android S5PV210 fimc驱动分析 - fimc_regs.c
fimc_regs.c是fimc框架操作camera 硬件的接口,fimc框架把所有硬件相关的操作都放在这个文件中[html] view plaincopy100 int fimc_hwset_camera_source(struct fimc_control *ctrl) 101 { 102 struct s3c_platfor转载 2015-05-26 18:17:37 · 764 阅读 · 0 评论 -
android开发打印票据或文档的方法:android打印文档的类
最近在做个一个基于android平台的工厂ERP项目,需要用到android平板连接打印机打印文档的功能。经过在网上一顿狂搜之后,发现目前好像打印机对android的直接没有任何标准,再不就是自家封的API,再不就是直接调用ESC/POS命令,通过调用打印函数来打印。如果直接使用ESC/POS命令,这个到是通用,但是调用打印机指令进行走纸、扫点这个开发成本有点高。如果调用打印机的API,那么如果有转载 2015-04-17 13:56:07 · 6971 阅读 · 2 评论 -
android 控制POS机图文打印(二)
上一篇文章结束了ESC/POS的指令集,没看过的可以去看一下,可以当作工具文档来使用的android 控制POS机图文打印(一)这一篇正式介绍如何使用POS机来打印图文信息。首先介绍一下,ESC/POS指令是如何使用的,字体加粗指令:byte[] FONT_B =newbyte[3];FONT_B[0] = 27;FONT_B[1] = 33;转载 2015-04-17 13:43:50 · 8300 阅读 · 5 评论 -
Android遇上打印机
打印机其实和Android没有什么大的关系,和linux内核关联才是比较强的。最近调试打印机,有那么一点心得,一点一点记录下来。 最终的结果是要在Android实现驱动打印机,但是一般调试一个新的驱动的流程是这样的:1.先在linux PC上进行测试。2.在标准嵌入式linux上进行调试。3.改装到Android中去。 为什么这么安排,是有说道的。因为资源是递减的,转载 2015-04-17 13:22:32 · 3328 阅读 · 1 评论 -
android 控制POS机图文打印(一)
因为公司业务的需要,要用android客户端控制pos机打印票据,不单只是中文的,而且还要包括二维码的打印的!经过两天的努力!终于搞定了!!!!我真是!首先,先奉上ESC/POS指令集。EPSON打印控制指令集打印命令 功能格式: ASCII: 以标准ASCII字符序列表示 十进制: 以十进制数字序列表示转载 2015-04-17 13:43:23 · 5056 阅读 · 1 评论 -
Android系统上部署usb打印机
Android系统上部署usb打印机一、综述android系统现多用于手持设备,为手机等设备应用提供了很好的系统级支持。但对于PC机常用的打印功能,android到目前并不支持,也没有打印机厂家专门为android设备做打印机驱动。因此在android上实现usb打印功能有一点繁琐。本文提供了androidjava应用程序实现usb打印的一种方案。这个方案在android系统中打开了一条实转载 2015-04-17 13:17:02 · 11326 阅读 · 2 评论 -
Android连接蓝牙打印机实现PDF文档的打印
目前网上教程与Demo介绍的都是蓝牙连接热敏打印机(pos机大小的打印机),如果想通过蓝牙连接日常所见到的打印机,进行打印,这些教程或Demo是做不到的。 目前Android的蓝牙并不支持BPP(Basic Printing Profile),所以在Android实现蓝牙打印,通过正常的手段是实现不了的。网上能够搜索的那些教程或demo我都试过了,Google Play上与打印相关的ap转载 2015-04-16 19:10:09 · 6549 阅读 · 1 评论 -
android自动调节屏幕亮度自动调节流程解析
屏幕亮度自动调节:主要是从Sensor分析之中分离出来分析LIGHT 光线感应器,因此就分析一下自动调节屏幕亮度(手机随着光线的强度自我调节,也就是在亮的光线下屏幕自动调亮一些,暗的时候就自动调暗一些,省得光线对眼睛有刺激)..... (本人从历经挫折才大概了解流程),现在就开始讲一下流程,如果有不对地方希望牛人指出来。。。 先从Sttings入手吧,在di转载 2015-04-18 14:45:11 · 6053 阅读 · 0 评论 -
Android自动开关机实现
Android自动开关机实现关于android自动关机,网上有很多应用程序和例子。 相对于自动开机来说,自动关机可以在应用层通过设置alarm来实现。而自动开机,网上的介绍就比较少了,因为它需要底层rtc时钟的支持。前段时间根据客户需求实现了自动开关机。在这里分享一下。1. 简介我的实现是在设置程序里面增加一个接口,让用户设置自动开关机,这个自动开关机的设置可以参照闹钟的设置。转载 2015-04-18 14:41:24 · 1170 阅读 · 0 评论 -
4412 矩阵键盘
关键词:android 按键 矩阵按键 AD按键 平台信息:内核:linux2.6/linux3.0系统:android/android4.0 平台:S5PV310(samsung exynos4210)作者:xubin341719(欢迎转载,请注明作者)一、硬件部分:1、矩阵按键、IO按键、AD按键 这个知识相对来说比较简单,不过上次真有一个网友不转载 2015-05-22 11:44:53 · 2366 阅读 · 0 评论 -
android平台busybox的终极解决方案---基于x210开发板
之前写过一篇博客,名为给android添加busybox,给出了四种移植方法,但是仍然不是很完美,需要后期处理,不能一次性解决所有问题,下面给出上文的补丁,即android平台busybox的终极解决方案,具体步骤如下:第一步:交叉编译busybox这里选择busybox-1.19.0,当然可以用更高的版本。修改makefile文件,修改的内容如下:ARCH ?= armC转载 2015-05-22 22:07:37 · 1726 阅读 · 1 评论 -
DM3730:在24 bit的LCD上顯示 RGB656的android initlogo.rle Logo
DM3730:在24 bit的LCD上顯示 RGB656的android initlogo.rle LogoIntroductionReference hardware platforms:AM37x/DM37xOS Kernel: Linux 2.6.37Android: Gingerbread 2.3.4Reference hardware platform转载 2015-05-22 13:06:46 · 1016 阅读 · 0 评论 -
Linux3.X下的Samsung MFC(Multi Format Codec) Firmware
作者:咕唧咕唧liukun321来自:http://blog.youkuaiyun.com/liukun321三星系列处理器,从S3c6410开始SOC上就集成了一个MFC(Multi Format Codec)多格式媒体编解码器硬件模块。并且三星的linux BSP开源了对它的驱动。看过MFC驱动的朋友,肯定发现了,在驱动初始化过程中,内核需要加载一个Samsung MFC 固件。没有它MF转载 2015-05-26 16:14:25 · 963 阅读 · 0 评论 -
LCD驱动分析(三): framebuffer驱动的注册
原文地址:LCD驱动分析(三): framebuffer驱动的注册 作者:huabinbin00这里最好牵涉到几个文件S3cfb.c、S3cfb_fimd6x.c setuo-fb.c fb_mem.c在这里之前最好知道pci,和memio一些术语的意思S3cfb.c中的s3cfb_probe设备探测,是驱动注册的主要函数 点击(此处)折叠或打开转载 2015-05-26 16:13:45 · 669 阅读 · 0 评论 -
Android LCD(三):Samsung LCD接口篇
关键词:android LCD控制器 Framebuffer PWM 平台信息:内核:linux2.6/linux3.0系统:android/android4.0 平台:samsung exynos 4210、exynos 4412 、exynos 5250作者:xubin341719(欢迎转载,请注明作者)欢迎指正错误,共同学习、共同进步!!下载链接:LCD规格书转载 2015-05-26 16:10:39 · 800 阅读 · 0 评论 -
Android LCD(一):LCD基本原理篇
关键词:android LCD TFT 液晶 偏光片 彩色滤光片 背光平台信息:内核:linux2.6/linux3.0系统:android/android4.0 平台:samsung exynos 4210、exynos 4412 、exynos 5250作者:xubin341719(欢迎转载,请注明作者)欢迎指正错误,共同学习、共同进步!!下载链接:LCD规格书(转载 2015-05-26 16:09:12 · 867 阅读 · 0 评论 -
LCD驱动分析(一):时序的分析
第一次调试lcd驱动的话是不是对下面的结构有点陌生,不知道那些值是如何得来的,当然我就属于其中的一个点击(此处)折叠或打开 static struct s3cfb_lcd lte480wv = { .width = 1024,//800, .height = 600,//480, .bpp = 24,//24,//32转载 2015-05-26 16:14:25 · 4237 阅读 · 0 评论 -
Android LCD(四):LCD驱动调试篇
关键词:android LCD TFTSN75LVDS83B TTL-LVDS LCD电压背光电压平台信息:内核:linux2.6/linux3.0系统:android/android4.0 平台:samsung exynos 4210、exynos 4412 、exynos 5250作者:xubin341719(欢迎转载,请注明作者)欢迎指正错误,共同学习、共同进步!!转载 2015-05-26 16:11:53 · 978 阅读 · 0 评论 -
修改Android应用程序的默认最大内存值
Android应用程序的默认最大内存值为16M,有些应用程序可能会出现内存溢出,譬如:ERROR/AndroidRuntime(264): java.lang.OutOfMemoryError: bitmapsize exceeds VM budget除了要检查修正代码之外,还可以考虑修改Android应用程序的默认最大内存值。修改应用程序的默认最大内存有2种方法:1、修改代码,适转载 2015-05-22 21:42:02 · 2300 阅读 · 0 评论 -
优化Android应用内存的若干方法
使用保守的Service如果你的应用需要使用 service 在后台执行业务功能, 除非是一直在进行活动的工作(比如每隔几秒向服务器端请求数据之类)否则不要让它一直保持在后台运行. 并且, 当你的 service 执行完成但是停止失败时要小心 service 导致的内存泄露问题.当你启动 service 时, 系统总是优先保持服务的运行. 这会导致内存应用效率非常低, 因为被该转载 2015-05-22 21:41:06 · 452 阅读 · 0 评论 -
Android上的内存分配策略优化
在Android上,其实自身有一套完善的内存管理机制。但由于我们深受Windows和塞班的毒害,每当看到手机剩余内存只有30m时,就觉得非常不爽,总是希望通过一些工具清理一下内存,而当Toast显示已经为你清理500m内存时,就会产生无比的快感。比如管家的小火箭发射,就是利用了这种用户心理。所以,那些内存清理工具在windows上是很有必要的,但在Android上,实属多此一举。至于进程的优先转载 2015-05-22 21:45:30 · 748 阅读 · 0 评论 -
如何修改Android应用程序能够使用的默认最大内存值
当应用程序分配内存时,会调用到dalvik/vm/alloc/HeapSource.c中的 dvmTrackExternalAllocation()方法,继而调用到externalAllocPossible()方法,该方法要求当前堆已使 用的大小(由currentHeapSize和hs->externalBytesAllocated构成)加上我们需要再次分配的内存大小不能超 过堆的最大内存值,如果转载 2015-05-22 21:43:12 · 2081 阅读 · 0 评论 -
android 量产软件改动信息(持续更新)
关键词:android 4.0默认语言蓝牙名称 MTP名称默认时区关于平板电脑 内核版本号平台信息:内核:linux2.6/linux3.0系统:android/android4.0 平台:S5PV310(samsungexynos4210)作者:xubin341719(欢迎转载,请注明作者)1、开关机logo;2、用户模式、工程模式;3、更改默认语言;转载 2015-04-18 18:16:57 · 680 阅读 · 0 评论 -
android 物理按键
关键词:android 按键 矩阵按键 AD按键 平台信息:内核:linux2.6/linux3.0系统:android/android4.0 平台:S5PV310(samsung exynos4210)作者:xubin341719(欢迎转载,请注明作者)一、硬件部分:1、矩阵按键、IO按键、AD按键 这个知识相对来说比较简单,不过上次真有一个网友不转载 2015-04-10 16:25:46 · 1265 阅读 · 0 评论 -
Linux/Android——input_handler之evdev (四)
在前文Linux/Android——input子系统核心 (三)中概括了总体的结构,以及介绍了input核心的职责,其中有说道注册input设备时会去匹配已有的事件处理器handler,而这个handler也是存放在一个链表里面的,这里介绍下input子系统中的事件处理input_handler机制.转载 2015-03-25 11:56:05 · 1427 阅读 · 0 评论 -
单独编译Android源代码中的模块
第一次下载好Android源代码工程后,我们通常是在Android源代码工程目录下执行make命令,经过漫长的等待之后,就可以得到Android系统镜像system.img了。以后如果我们修改了Android源代码中的某个模块或者在Android源代码工程新增一个自己的模块,是不是还是执行make命令呢?答案是否定的,Google为我们准备了另外的命令来支持编译单独的模块,以及重新打包system转载 2015-03-28 00:59:28 · 581 阅读 · 0 评论 -
如何将ramdisk.img 编译进内核和修改init.rc
一 将ramdisk.img编译进内核android系统可以不用ramdisk.img 文件就可以启动文件系统,原因是在android内核编译的时候使用配置选项已经将文件系统编译进内核。方法是在编译配置选项中打开File Systems->"The Extended 4 (ext4) filesystem", 如图:我经过亲身实验,如果关掉ext4,打开ext3文件系统,那么在系统的转载 2015-03-28 01:08:37 · 2703 阅读 · 1 评论 -
Android通过源码编译apk获得系统权限
Android中的应用程序如何获得系统权限?在 android 的 API中有提供 SystemClock.setCurrentTimeMillis()函数来修改系统时间,可惜无论你怎么调用这个函数都是没用的,无论模拟器还是真 机,在logcat中总会得到"Unable to open alarm driver: Permission denied ".这个函数需要root权限或者运行与系统进转载 2015-03-28 01:16:17 · 1518 阅读 · 0 评论 -
如何单独编译Android源代码中的模块
第一次下载好Android源代码工程后,我们通常是在Android源代码工程目录下执行make命令,经过漫长的等待之后,就可以得到Android系统镜像system.img了。以后如果我们修改了Android源代码中的某个模块或者在Android源代码工程新增一个自己的模块,是不是还是执行make命令呢?答案是否定的,Google为我们准备了另外的命令来支持编译单独的模块,以及重新打包system转载 2015-03-28 00:09:58 · 555 阅读 · 0 评论 -
Android源码中添加 修改应用
第一部分:添加一个新的应用1. 在和系统相同版本的SDK目录下开发自己的android应用2. 把开发的android工程放到源码的packages/apps/目录下3. 在工程目录下添加Android.mk文件,修改LOCAL_PACKAGE_NAME :=test001 把工程名指定为自己的工程名,我加载的工程为test001 LOCAL_PATH:= $(call转载 2015-03-28 00:13:58 · 578 阅读 · 0 评论 -
S5PV210 ANDROID 为摄像头增加闪光灯
首先找到android拍照的时候所执行的函数代码在:packages/apps/Camera/src/com/android/camera/Camera.java[java] view plaincopymCameraDevice.setParameters(mParameters); mCameraDevice.takePicture(mShutterCallb转载 2015-03-05 15:08:52 · 679 阅读 · 0 评论 -
Linux USB触摸屏驱动注解
Linux USB触摸屏驱动注解Linux USB触摸屏驱动注解 参考2.6.31版本中的driver/usb/input/usbtouchscreen.c。驱动可分为几个部分:驱动加载部分、probe部分、open部分、urb回调函数处理部分。 一、 驱动加载部分 static int __init usbtouch _init(void) { r转载 2015-03-25 13:13:25 · 1444 阅读 · 0 评论 -
Linux/Android——input系统之 kernel层 与 frameworks层交互 (五)
之前的四篇博文记录的都是linux中的input体系相关的东西,最底层以我调试的usb触摸屏的设备驱动为例,贴出链接:Linux/Android——usb触摸屏驱动 - usbtouchscreen (一)Linux/Android——输入子系统input_event传递 (二)Linux/Android——input子系统核心 (三) Linux/Android——inp转载 2015-03-25 11:56:19 · 1758 阅读 · 0 评论 -
Linux/Android——usb触摸屏驱动 - usbtouchscreen (一)
最近需要往TV上装一个触摸屏设备,现在比较常见的就是使用usb接口的触摸框,适用于各种平台,这里大体记录一下在android上kernel中的usbtouchscreen驱动. 撰写不易,转载需注明出处:http://blog.youkuaiyun.com/jscese/article/details转载 2015-03-25 11:45:26 · 7400 阅读 · 0 评论 -
Linux/Android——input子系统核心 (三)
之前的博客有涉及到linux的input子系统,这里学习记录一下input模块.input子系统,作为管理输入设备与系统进行交互的中枢,任何的输入设备驱动都要通过input向内核注册其设备,常用的输入设备也就是鼠标,键盘,触摸屏。稍微细分一点整个输入体系,就是 硬件驱动层,input核心中转层,事件处理层.层次之间传递都以event事件的形式,这其中input连接上下层,分别提供接口.转载 2015-03-25 11:54:42 · 926 阅读 · 0 评论 -
Android 源代码中增加新apk
Android build system就是编译系统的意思 在我们需要向自己编译的源代码中增加模块的时候,需要一些规则,当然这个规则都是类似的。 Android.mk文件解析 让我们来看一个 Android.mk 文件的样子 Java代码LOCAL_PATH := $(call my-dir)include $(CLEAR_VARS)LO转载 2015-03-28 01:13:14 · 1026 阅读 · 0 评论 -
Android 源码下编译APK
有些时候,我们写的 app 需要获取系统的一些权限,比如获取联系人信息,Mail 信息等等,就需要在 android 源码下编译APK,让app与系统源码具有一样的签名。1、在源码目录下运行$ . build/envsetup.sh 目的是使mm/mmm命令可用2、修改 AndroidManifest.xml(非必须,除非app需要system ID) 添加: android:shared转载 2015-03-28 00:56:39 · 4268 阅读 · 0 评论 -
编译Android时,添加或者删除system.img中第三方apk、更改Android系统默认语言
/******************************************************************************************** * author:conowen@大钟转载 2015-03-28 00:58:08 · 1325 阅读 · 0 评论