暂时未有相关云产品技术能力~
ITGEGE在线教育嵌入式开发讲师。 CSDN博客专家、CSDN-Linux特邀编辑、CSDN博乐、CSDN学院讲师,目前从事嵌入式开发领域,从事与单片机,Linux,android相关的产品开发。
在安装了最新的ubuntu17.04后编译Android6.0源代码的过程中,遇到了很多问题: 1、openjdk无法支持jdk8,只能用回jdk7 2、还有很多未曾遇到的编译问题 还陆陆续续遇到了各种各样的编译失败的信息,最后,参考这两位博主的16.04编译Android的方法顺利解决。
ep : 我手上有个libapp.so , fuse.bin , busybox,我需要将这三个文件在编译的时候自动拷贝到out目录下 编译完成以后,.so文件会被预置到Andorid系统的根目录下的system/lib下,.bin文件会被预置到Andorid系统的根目录下的system/bin下。
在上一节里,我们用一个应用程序实现了鼠标的控制,并控制鼠标用相对位移不断的画一个正方形,感觉非常有意思,这一节,我们将通过一个简单按键实例来真正的实现一个input设备驱动程序。 http://blog.
这节,我们来说下input子系统,什么是input子系统? input子系统就是输入子系统。 输入子系统是 Linux内核用于管理各种输入设备 (键盘,鼠标,遥控杆,书写板等等 )的部分,用户通过输入子系统进行内核,命令行,图形接口之间的交换。
上节,我们讲到如何来实现tasklet小任务机制 http://blog.csdn.net/morixinguan/article/details/69666935 这节,我们来实现一下中断下半部的工作队列: 在写这个demo之前,我们要了解一下工作队列的相关数据结构还有API。
上节:http://blog.csdn.net/morixinguan/article/details/68958185 在上一节博文中,教会了大家如何来写一个Linux设备的中断程序,实现也非常简单,我们来回顾一下具体的操作流程,只要遵循以下几个步骤即可实现最简单的中断处理程序: 使用中断相...
转载自http://blog.csdn.net/myarrow/article/details/9287169 1. 中断处理“下半部”机制 中断服务程序一般都是在中断请求关闭的条件下执行的,以避免嵌套而使中断控制复杂化。
1、安装gitapt-get install git2、查看git版本git --version3、设置用户名和邮箱 $ git config --global user.name "morixinguan"$ git config --global user.email "morixinguan@vip.qq.com"注意git config命令的--global参数,用了这个参数,表示你这台机器上所有的Git仓库都会使用这个配置,当然也可以对某个仓库指定不同的用户名和Email地址。
今天,我们要来实现一个基于tiny4412开发板上的最简本的按键中断驱动程序,那么,写这个程序之前,我们先来了解下Linux中断的基本知识。 在Linux内核中,每一个能够发出中断请求的硬件设备控制器都有一条名为IRQ的输出线。
这个专题我们来说下Linux中的定时器。 在Linux内核中,有这样的一个定时器,叫做内核定时器,内核定时器用于控制某个函数,也就是定时器将要处理的函数在未来的某个特定的时间内执行。内核定时器注册的处理函数只执行一次,即不是循环执行的。
为什么要学习链表? 链表主要有以下几大特性: 1、解决数组无法存储多种数据类型的问题。 2、解决数组中,元素个数无法改变的限制(C99的变长数组,C++也有变长数组可以实现)。 3、数组移动元素的过程中,要对元素进行大范围的移动,很耗时间,效率也不高。
OTA升级介绍 http://blog.csdn.net/u013947002/article/details/49024637 http://blog.chinaunix.net/uid-29728680-id-5253651.
[Description]user版本怎么打开root权限 [Keyword]user root adb superuser 用户版本 root权限 security [Serious Declaration]严重声明: 任何在最终user版本上打开root权限的手法都会给用户带来安全风险, 请仔细评估您的需求是否真实需要. MTK 强烈反对此类做法, 由此带来的安全风险,以及造成的损失, MTK 不承担任何的责任。
http://blog.csdn.net/zhaowenkaiyongheng/article/details/60349380?locationNum=2&fps=1
http://blog.csdn.net/fulinwsuafcie/article/details/8709192 http://blog.csdn.net/fulinwsuafcie/article/details/8351537
前面两篇文章: http://blog.csdn.net/morixinguan/article/details/65494239 http://blog.csdn.net/morixinguan/article/details/65938128 在UNix多线程编程中,我们会使用到以下函数:...
上一篇博文的地址: http://blog.csdn.net/morixinguan/article/details/65494239 这节,我们来看看函数指针与回调函数在Linux内核中的应用。
最近做NDK开发相关的项目,总会时不时冒出下面这句打印信息: error: only position independent executables (PIE) are supported.后面一查,原来是Android版本新添加的保护机制,以前在RK3168 android4.1上没有看到这个东西。
关于静态库和动态库的使用和制作方法。 http://blog.csdn.net/morixinguan/article/details/52451612 今天我们要搞明白的一个概念叫回调函数。 什么是回调函数? 百度的权威解释如下: 回调函数就是一个通过函数指针调用的函数。
上一节,我教大家实现了一个最简单的MISC设备驱动,那么这节,我们将用一个实例来驱动蜂鸣器,这里为了方便,我就不再写应用程序进行测试,直接在驱动里调用open函数,这个程序是在Android系统里跑起来,后面我会教大家如何在Android下写应用测试程序。
关于如何来写一个misc设备,在前面有篇文章已经介绍了大致的流程,现在就让我们来实现一个最简单的misc设备驱动。 http://blog.csdn.net/morixinguan/article/details/52700146 关于前面的字符设备有以下四篇文章,可以做参考: http://blog.
让我们一起组队战胜拖延症,欢迎加入嵌入式软件开发QQ群: 这里将让你每天写代码,每天学点新知识,每个月写一个小项目。 4个月后,你也可以成为一名初级的嵌入式软件开发工程师。 博主本着开源精神,贡献知识,不收取任何费用!
http://blog.csdn.net/morixinguan/article/details/56514356 之前写过一篇文章,是对alc5623.c codec部分进行了大致框架的分析,现在要解决一些实际问题,关于上层的代码我就不公布了,只公布在驱动的代码: 在手册中,我们看到一个这样的寄存器设置。
Git hub上开源的libfuse源代码 https://github.com/libfuse/libfuse/releases 参考的博文: fuse用户空间文件系统 http://blog.csdn.
在我们开发过程中,内核的信息一开机就会很多,然后一直打个不停,很烦人,也不好看调试信息,更不好在串口终端输入相关的命令进行调试。 那么有什么办法可以解决? 1、在kernel中修改log默认等级, kernel-3.18/include/linux/printk.h static inline void console_verbose(void)函数中的 console_loglevel = CONSOLE_LOGLEVEL_MIN; //CONSOLE_LOGLEVEL_MOTORMOUTH;然后重新编译内核。
frameworks/base/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java +2519 \ if (SystemProperties.
驱动代码位于: sound/soc/codec/alc5623.c随便找个linux内核都会有。 1、首先进行i2c总线驱动加载在: static int __init alc5623_modinit(void)在该函数中: i2c_add_driver(&alc5623_i2c_driver)...
http://wushank.blog.51cto.com/3489095/1212647
1.Android源码中的产品线解析 通常产品厂商在拿到Android源码后会在Android源码基础上进行定制修改,以匹配适应自己的产品。这就引入了产品线的概念。Android系统源码中,产品相关的文件通常保存在 device/company/product目录下其目录的组织结构为 在tiny4412 android 5.
1、开机图片: android-logo-mask.png android-logo-shine.png 这两个图片一个在上一个在下 ./out/target/common/obj/JAVA_LIBRARIES/android_stubs_current_intermediates/classes/assets/images/android-logo-shine.
http://blog.csdn.net/lushengchu_luis/article/details/20382775 最近RK3026的项目需要修改开机充电,才分析了Android原生态的充电过程。
frameworks/base/packages/SettingsProvider/res/values/defaults.xml中修改def_screen_off_timeout为-1 frameworks/base/policy/src/com/android/internal/policy/impl/KeyguardViewMediator.
http://blog.csdn.net/lb5761311/article/details/41805423
1、dose not point to a valid jvm installation出错问题 按照以下方法设置一定可以不会出现这个错误。 我的JDK安装路径如下: C:\Program Files\Java\jdk1.
http://blog.csdn.net/yimiyangguang1314/article/details/7755815 http://blog.csdn.net/azloong/article/details/6140911
今年2月份,受CSDN学院邀请,我很荣幸的成为了CSDN学院的讲师,正在制作优质的课程,帮助更多开发者入门。 欢迎大家加入嵌入式软件开发QQ交流群: 610498871 观看地址:http://edu.csdn.net/course/detail/4018
在开发过程中发现串口不能输入,所以就一直使用ADB进行调试,后来解决了这个问题。 看下图: 点开SecureCRT的这个界面,将右边的Flow Control的下面这三个选项的勾都去掉。然后按确定。 现在可以正常输入了。
前面,我们基本已经学会怎么去编写一个简单的字符设备驱动程序了,这节,我们来看看友善之臂中提供的led驱动。 参考之前写的文章,我们已经知道LED的GPIO口,和一些配置信息: http://blog.
这一节,我们再来看看新的知识点,这一次,我们将进一步完善这个字符设备的驱动程序。 首先,将上一节的代码做下修改: #include #include #include #include #include #include #include //创建一个字符设备 struct c...
上节,我们讲解了如何写第一个linux字符设备驱动程序,这节,我们将代码做一下修改。 如下: #include #include #include #include #include #include #include dev_t dev_no ; static int __i...
从这篇博文开始,我将开始手把手教会大家写linux设备驱动程序 这是开篇,如何来写第一个字符设备驱动程序。 首先,写一个最简单的字符设备驱动程序需要什么?或者说我们需要了解什么? 1、每一个字符设备至少需要有一个设备号 2、设备号 = 主设备号 + 次设备号 3、同一类设备的主设备号一般是相同的,但不是绝对的。
http://blog.csdn.net/tommy_wxie/article/details/8193954 http://blog.csdn.net/tommy_wxie/article/details/8194276
找到布局文件:packages\apps\Launcher3\res\values\dimens.xml +74将48dp改为0dp 48dp找到相关触发代码:packages\apps\Launcher3\src\com\android\launcher3\allapps\DefaultAppSearchController.
http://blog.sina.com.cn/s/blog_a6559d9201015vx9.html
找到: frameworks\base\packages\SystemUI\src\com\android\systemui\statusbar\phone\PhoneStatusBar.java这个文件 找到start方法: 将start方法下这个方法注释重新编译安卓系统即可。
网上参考了许多博文,更改了不少都没有结果,搜索框就是去不了,后来在以下的这个java文件中找到这个按钮监听事件 packages/apps/Launcher3/src/com/android/launcher3/Launcher.
http://www.th7.cn/Program/Android/201412/326584.shtml 去除导航栏主要意图为: 1>当手机有物理按键时,需要把虚拟按键(也叫做导航栏)去除或者隐藏,是用户界面的需要 2>如苹果那样只有一个按键的,不要这个虚拟按键 3>模拟器上自己做了导航键盘,不需要android自带的虚拟导航按键 这里介绍直接去除的方法: 1>去除导航栏: 设置导航栏的宽度为0即可,代码:frameworks/base/core/res/res/values/dimens.xml。
http://blog.csdn.net/mcgrady_tracy/article/details/42104193
Kconfig怎么写的在上节就已经教大家写了。 这节我们来写写增强版的,因为Kconfig有太多太多可以配置的,所以这里我就不给出图片演示了,请参考上节的文章,再来看这节大家就会大彻大悟,然后自己去尝试吧。
在Android 5.0源代码根目录下: 找到 :famerawork/base/policy/src/com/android/internal/policy/impl/PhoneWindowManager.