自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 x4412开发板&ibox卡片电脑项目实战20-C库函数文件操作实验

我们不仅可以使用linux的文件操作函数,还可以直接使用标准的C库函数文件。C库函数的文件操作实际上是独立于具体的操作系统平台的,不管是在 DOS、Windows、Linux 还是在 VxWorks 中都是这些函数。这极大地方便了用户层的调试。 1.1.1    创建和打开 FILE *fop...

2014-10-12 13:00:40 1028 0

原创 x4412开发板&ibox卡片电脑项目实战19-linux文件操作实验

linux的文件操作包括创建,打开,读写,定位,关闭等。在WINCE或是WINDOWS系统下,我们通常称这些接口为API函数。下面我们将分别介绍这些系统函数的使用方法。 1.1.1    创建 int creat(const char *filename, mode _ t mode); 参...

2014-10-12 12:57:50 1323 0

原创 x4412开发板&ibox卡片电脑项目实战17-模块传参实验

在很多情况下,在加载驱动时我们需要接收外部的指令。我们可以通过加载模块传递参数的方式实现。在驱动中,通过“module_param(参数名,参数类型,参数读/写权限)”为模块定义一个参数,在加载模块时,向其传递参数。如果不传递,则参数为驱动中定义的默认值。 参数类型可以是 byte、short、...

2014-10-12 12:53:27 1020 0

原创 x4412开发板&ibox卡片电脑项目实战18-驱动中导出符号

在驱动调试时,经常需要驱动互调,即在A驱动中调用B驱动中的相关函数。这时,驱动中的导出符号功能就可以大显身手了。/proc/kallsyms文件对应着内核符号表,它记录了符号以及符号所在的内存地址。 模块可以使用如下宏导出符号到内核符号表: EXPORT _ SYMBOL(符号名); EXPO...

2014-10-12 12:53:14 937 0

原创 x4412开发板&ibox卡片电脑项目实战16-将hello x4412驱动编译成模块

在内核根目录执行make menuconfig,进入Device Drivers-> Character devices菜单界面,找到hello X4412 driver配置选项,按空格键将它配置成模块[M],保存退出。 执行如下指令,保存配置好的内核配置文件: cp .config a...

2014-10-12 12:44:44 1158 0

原创 x4412开发板&ibox卡片电脑项目实战15-移植第一个hello x4412内核驱动

前面我们学习了Linux驱动的调试方法,加载方法以及编写步骤,本章节我们将从零开始,编写第一个字符设备驱动。 在kernel/drivers/char/x4412目录下新建Makefile,Kconfig以及hello-x4412.c三个文件,Makefile文件内容如下: obj-$(CON...

2014-10-12 12:42:00 937 0

原创 x4412开发板&ibox卡片电脑项目实战14-linux驱动的编写步骤

从零开始编写linux驱动时,无论采用linux的何种架构,基本上都可以归纳为以下驱动八要素。 1.1.1    建立Linux驱动框架 Linux内核在使用驱动时首先要装载驱动,在装载过程中进行一些初始化动作,如建立设备文件、分配内存等。在驱动程序中需提供相应函数来处理驱动初始化工作,该函数...

2014-10-12 12:20:55 1201 0

原创 x4412开发板&ibox卡片电脑项目实战12-linux驱动的加载方法

在类unix操作系统中,驱动加载方式一般分为:静态加载和动态加载。静态加载就是把驱动程序直接编译到内核里,系统启动后直接被调用。静态加载的缺点是调试起来比较麻烦,每次修改一个地方都要重新编译下载内核,效率较低。动态加载利用了LINUX的module特性,可以在系统启动后用insmod命令把驱动程序...

2014-09-27 23:40:08 3957 0

原创 x4412开发板&ibox卡片电脑项目实战11-linux驱动的调试方法

驱动程序开发的重点就在于驱动、系统的调试了,因此,掌握linux驱动的调试方法,是linux系统工程师必须掌握的技能。这里介绍驱动开发中常用的几种调试手段: l 利用printk l 查看OOP消息 l 利用strace l 利用内核内置的hacking选项 l 利用...

2014-09-27 23:35:48 2531 0

原创 x4412开发板&ibox卡片电脑项目实战10-使用buildroot搭建linux文件系统

上一章节我们讲述了最简单的文件系统的搭建方式,在实际应用场景中,我们需要添加很多第三方文件,比如busybox,tslib,qt,vim,交叉编译工具等,如果我们手动移植里面的任何一个源码包,都会花费我们少则半个小时,多则半天,甚至一天,大大的浪费了我们宝贵的时间。buildroot可以很方便的解...

2014-09-27 23:30:49 2938 0

原创 x4412开发板&ibox卡片电脑项目实战9-搭建最简单的linux文件系统

Linux文件系统不仅包含着文件中的数据而且还有文件系统的结构,所有Linux用户和程序看到的文件、目录、软连接及文件保护信息等都存储在其中。有了文件系统,用户就可以很方便的和Linux设备进行数据交互了。 随着实际需求的不断提高,Linux文件系统也变得越来越庞大。无论它如何千变万化,归根...

2014-09-27 23:20:12 1897 0

原创 x4412开发板&ibox卡片电脑项目实战8-Linux下的C语言编程风格

谈起linux的编程,我们首先就会想到GNU。GNU计划,又称革奴计划,是由Richard Stallman在1983年9月27日公开发起的。它的目标是创建一套完全自由的操作系统。它在编写linux的时候自己制作了一个标准成为 GNUC标准。ANSI,全称为美国国家标准协会,它对C做的标准后来被国...

2014-09-27 22:45:14 1992 0

原创 x4412开发板&ibox卡片电脑项目实战7-Linux内核的引导

linux的启动框架如下:

2014-09-27 22:29:34 1068 0

原创 x4412开发板&ibox卡片电脑项目实战6-配置内核

我们可以使用如下四条命令的任意一条来配置内核:

2014-09-27 22:24:25 1041 0

原创 x4412开发板&ibox卡片电脑项目实战5-修改内核LOGO

由于我们linux,android都共用一套uboot和内核,因此默认linux系统启动时,显示的仍然是一个android机器人图标。我们可以从这个机器人图标入手,修改成我们自己想要的LOGO。具体步骤如下: 第一步:在kernel/drivers/video/logo/Kconfig 中添加配...

2014-09-23 16:15:24 1187 0

原创 x4412开发板&ibox卡片电脑项目实战4-在uboot中添加开机LOGO

在uboot中添加开机LOGO,基本上可以归纳为以下四个步骤: 一:初始化LCD控制器相应的寄存器; 二:初始化LCD控制器对应的时钟源; 三:填充framebuffer; 四:打开背光。 在uboot\board\samsung\x4412\x4412.c中,我们在函数board_la...

2014-09-23 16:07:59 1629 0

原创 x4412开发板&ibox卡片电脑项目实战3-文件系统编译脚本解析

mk脚本中包含了android文件系统和linux文件系统的编译,这里我们只讲解linux文件系统的编译脚本。

2014-09-23 16:00:17 986 0

原创 x4412开发板&ibox卡片电脑项目实战2-内核编译脚本解析

内核的编译脚本如下: build_kernel() { # Compiler kernel cd ${BS_DIR_TOP}/kernel || return 1 //进入内核目录 make ${BS_CONFIG_KERNEL} || return 1 //配置内核 make -j...

2014-09-23 15:58:53 955 0

原创 x4412开发板&ibox卡片电脑项目实战1-uboot编译脚本解析

x4412&ibox平台所有源码包统统可以使用一个mk脚本编译。编译uboot的脚本如下: build_uboot() { # Compiler uboot cd ${BS_DIR_TOP}/uboot || return 1 //进入uboot根目录 make distclea...

2014-09-23 15:56:54 1794 0

原创 android4.0平台通过IOCTL控制LED-基于x210v3开发板

1.1     使用IOCTL测试LED 前面的实验中,我们通过sys文件系统,在sys/devices/platform/x210-led目录下建立了四个对应led的文件,通过改变这四个文件的状态控制LED灯。本章节我们重新编写驱动,另外再编写测试应用程序,通过IOCTL控制LED。 1.1...

2013-09-10 13:44:11 4408 0

原创 android4.0平台通过echo命令控制LED-基于x210v3开发板

第一步:编写LED驱动 在kernel/drivers/char目录新建led目录,在led目录下建立如下四个文件: x210-led.c Kconfig Makefile 各自内容见开发板源码包。 第二步:修改kernel/drivers/char/Kconfig文件,添加如下代码:...

2013-09-09 15:44:37 2555 0

原创 基于x210v3/s5pv210开发板的裸机教程发布,含26个精美实例

1.1     x210v3裸机开发1-LED流水灯实验 1.1     x210v3裸机开发2-蜂鸣器实验 1.1     x210v3裸机开发3-按键控制LED灯实验 1.1     x210v3裸机开发4-按键控制蜂鸣器实验 1.1     x210v3裸机开发5-串口输入输出实...

2013-09-03 10:25:57 4589 0

原创 android4.0.4平台关闭自动休眠功能-基于x210ii开发板

frameworks\base\packages\SettingsProvider\res\values\defaults.xml 这里记录了很多默认的设置值 找到60000 将60000改为-1即可。 编译时删除x210_ics_rtm_v11/out/target/product/sm...

2012-10-30 14:30:50 1488 0

原创 x210ii开发板支持几乎全视频格式视频解码[独家支持]

x210ii全视频播放测试方法 准备工作: 先从网上下载最新的映像文件,再使用fastboot更新system.img,重启开发板。 下载地址:  http://xboot.org/thread-6920-1-1.html 测试步骤: 第一步:将视频源文件如*.rmvb,*...

2012-08-29 12:01:25 2085 0

原创 x210ii开发板使用fastboot下载出现没有权限的问题

使用fastboot烧写映像时,出现如下错误信息: jjj@ubuntu-server:~/s5pv210/android_gingerbread_v10/android/out/release$ fastboot flash system system.img  或是 jjj@ub...

2012-08-28 12:04:10 2196 0

原创 s5pv210平台WCDMA模块[华为E1750]调试成功-基于x210ii开发板

集成E1750源码包的映像,启动界面如下: 可以看到,在左上脚,有CHN-UNICOM的标识,即联通WCDMA卡已经识别。 进入WIFI设置界面,最下面有个移动网络,点击进去: 启用数据访问功能,网络运营商选择自动,连接成功后,在任务栏会有一个G的标识。这时,就可以开启浏览器...

2012-08-28 10:49:34 1804 0

原创 x210ii DM9000驱动调试成功-基于x210ii/s5pv210开发板

//---------------------------------------------------------------------------------------------------------------------------- // 作者:armeasy ...

2012-04-20 17:05:52 3849 4

转载 百度、Google.yahoo排名机制和优化规则

由于搜索引擎数量太多,我在这里只能分析百度,GOOGLE,YAHOO之间区别。百度是中文用户市场份额最大的一个,不过由于竞价排名的原因,大多数SEO都不注重百度的SEO。GOOGLE是SEO们奋斗的焦点,而YAHOO,最近一段时间则默默无闻,由于YAHOO和GOOGLE的相似程度比较高,所以,GO...

2012-02-11 23:04:48 4495 0

转载 Google左侧排名优化

首先,是全球使用量最大、技术最先进、排名公正性最好、影响力最大的优秀搜索引擎。2003年11月18日,著名网站访问统计调查机构OneStat的最新数据表明,Google的搜索市场占有率从55.2%上升到56.1%,同时Yahoo!以21.5%位居第二。 Google左侧排名为自然排名,即根据...

2012-02-11 23:03:55 927 0

转载 Android LOG机制流程图

以下只是Android LOG机制流程图,关于Android LOG机制的更多详细内容请参阅《Android LOG机制详解》

2012-02-09 11:35:25 1057 0

转载 在Android的c/c++代码中使用LOG

在Android中,Java代码通过android.util.Log输出Log信息,同样的本地c/c++代码也提供了相对应而且是更多的接口。Android直接在头文件(system/core/include/cutils/log.h)里定义了一些日志输出的宏,这些宏比android.util.Lo...

2012-02-09 11:34:09 4782 0

转载 Android.mk的用法和基础

一个Android.mk file用来向编译系统描述你的源代码。具体来说:该文件是GNU Makefile的一小部分,会被编译系统解析一次或多次。你可以在每一个Android.mk file中定义一个或多个模块,你也可以在几个模块中使用同一个源代码文件。编译系统为你处理许多细节问题。例如,你不需要...

2012-02-06 08:50:43 717 0

原创 android编译单独模块时异常提示

lqm@lqm:~/android_gingerbread$ make ledtestapp ============================================ PLATFORM_VERSION_CODENAME=REL PLATFORM_VERSION=2.3.1 TARG...

2012-02-01 17:39:20 1041 0

转载 misc_register和register_chrdev的区别

注册杂项字符设备,该类设备使用同一个主设备号10 杂项字符设备使用的数据结构 struct miscdevice  {     int minor;     const char *name;     struct file_operations *fops;     struct l...

2012-01-13 09:57:56 2268 0

转载 register_chrdev,class_create()

int register_chrdev(unsigned int major, const char *name,              struct file_operations *fops);     其中,major是为设备驱动程序向系统申请的主设备号,如果为0则系统为此驱动程...

2012-01-13 09:34:52 2485 0

原创 android平台按键驱动[基于x210开发板]

按键驱动源码在kernel/arch/arm/mach-s5pv210/button-smdkv210.c中,源码很简单, 在s3c_button_probe函数中设置相关按键的寄存器,再开启定时器定时扫描。在定时器中断 函数s3cbutton_timer_handler中判断相应IO口的电平...

2011-12-28 14:39:20 1836 0

原创 降龙十八掌搞定rt3070 USB WIFI模块在android2.3平台上上网[基于x210开发板]

第一掌:编译KO文件,生成rt3070sta.ko 编译时提示如下错误: 错误: ./include/generated/autoconf.h:708: fatal error: /home/lqm/share/V210/samsung/kernel/include/config/modve...

2011-12-23 10:11:21 7177 2

原创 android平台矩阵键盘驱动[基于x210开发板]

矩阵键盘驱动源文件: kernel/drivers/input/touchscreen/keyboard/s3c-keypad.c kernel/drivers/input/touchscreen/keyboard/s3c-keypad.h kernel/arch/arm/mach-s5pv...

2011-12-19 10:39:09 4256 0

原创 android平台init.rc脚本修改-[基于x210开发板]

很多时候,我们需要修改init.rc来满足不同的应用需求。这里提供两种修改方法: 一:普通修改方法     在device/samsung/smdkv210目录下,有init.rc和init_sdmmc.rc两个文件。如果映像存放在 SD卡中,需修改init_sdmmc.rc,如果映像存放在...

2011-12-19 09:46:01 8877 0

原创 android平台busybox的终极解决方案---基于x210开发板

之前写过一篇博客,名为给android添加busybox,给出了四种移植方法,但是仍然不是很完美,需要 后期处理,不能一次性解决所有问题,下面给出上文的补丁,即android平台busybox的终极解决方案, 具体步骤如下: 第一步:交叉编译busybox 这里选择busybox-1.19...

2011-12-15 14:47:33 1594 0

提示
确定要删除当前文章?
取消 删除