嵌入式
文章平均质量分 80
哼着无旋律的歌
这个作者很懒,什么都没留下…
展开
-
修改第一次开机时的默认壁纸
静态壁纸Android V2.3版本上:替换frameworks/base/core/res/res/drawable/default_wallpaper.jpg图片Android V4.0版本上:替换frameworks/base/core/res/res/drawable-nodpi/default_wallpaper.jpg图片 动态壁纸 修改frame原创 2013-10-31 14:14:57 · 709 阅读 · 0 评论 -
推荐ALSA一个很好的网站
http://blog.csdn.net/doom66151/article/details/6573256里面有一个大牛讲解的非常详细!! http://blog.csdn.net/sepnic/article/category/778492 管理员在2009年8月13日编辑了该文章文章。 -->原创 2013-10-31 14:14:06 · 580 阅读 · 0 评论 -
ALSA之codec分析
ALSA: Advanced Linux Sound Architecture,它包括内核驱动集合、API库和工具。用户层程序直接调用libsound的API库,不需要打开设备等操作,因此编程者不需要了解底层细节。这里不分析ALSA的核心代码core,也不阐述如何在用户层进行声卡编程,仅仅简要介绍在ALSA的架构上添加一个声卡驱动,即上图中的Sound Driver。其实文档《wirte原创 2013-10-31 14:13:57 · 686 阅读 · 0 评论 -
LInux 内核配置系统
Linux内核的配置系统由三个部分组成,分别是:Makefile:分布在 Linux 内核源代码中的 Makefile,定义 Linux 内核的编译规则; 配置文件(config.in):给用户提供配置选择的功能; 配置工具:包括配置命令解释器(对配置脚本中使用的配置命令进行解释)和配置用户界面(提供基于字符界面、基于 Ncurses 图形界面以及基于 Xwindows 图形界面的用原创 2013-10-31 14:13:45 · 520 阅读 · 0 评论 -
Eclipse快捷方式
快捷键应该是节省时间的一个要素 ,所以自己在网上找了下面这些快捷键, 以便让更多的程序员更快捷的使用Eclipse. ECLIPSE最常用快捷键排名1. Alt + / 自动完成2. Ctrl + O Quick Outline:函数列表,可以定制这个窗口3. Ctrl+K原创 2013-10-31 14:13:41 · 531 阅读 · 0 评论 -
android中关于消息Message与Handler的详解
一、几个关键概念1、MessageQueue:是一种数据结构,见名知义,就是一个消息队列,存放消息的地方。每一个线程最多只可以拥有一个MessageQueue数据结构。创建一个线程的时候,并不会自动创建其MessageQueue。通常使用一个Looper对象对该线程的MessageQueue进行管理。主线程创建时,会创建一个默认的Looper对象,而Looper对象的创建,将自动创建一个Messa原创 2013-10-31 14:13:32 · 636 阅读 · 0 评论 -
mplayer移植到S3C2440(四)音量控制
设置音量的程序#include #include #include #include #define ARM int main(int argc, char *argv[]) { int volume_read,volume_write,mixerfd; if(argc != 3){ printf("usage: %s原创 2013-10-31 14:12:50 · 868 阅读 · 0 评论 -
Qt/e输入法程序设计指南
,本输入法设计指南针对Qt for Embedded Linux 4.5.1,并且以中文输入法为例做说明,并且本文只是侧重于说明Qt/Embedded对输入法的支持接口,并不涉及到如何把键盘输入转换为中文所对应的编码方法。对其它Qt版本的适用性未曾验证。大家都知道,Qt for Embedded Linux是Client/Server结构,在Server端负责监听系统消息,尤其是键盘和鼠标消息原创 2013-10-31 14:12:30 · 881 阅读 · 0 评论 -
Android中G-Sensor流程
1.使G-sensor正常工作需要做的事:G-sensor driver文件包括:driver/i2c/chips/lis331dl.cdriver/i2c/chips/sensorioctl.hinclude/linux/lis331dl.h并在/kernel/arch/arm/mach-s3c6410/mach-ur6410.c文件中i2c chanel1的结构变量i2c_devs1[] __原创 2013-10-31 14:14:47 · 800 阅读 · 0 评论 -
教你如何将ARM的代码直接拷到驱动程序中
#define rGPACON (*(volatile unsigned *)0x56000000) //Port A control 在ARM里面我们是通过上面的那种方法来调用寄存器的,但在LINUX移植到开发板的时候我们发现这些寄存器在Linux里面是完全没有用的,得通过__raw_read1(),__raw_writel( , )这两个函数来该读出并写进相应的寄存器。 但在原创 2013-10-31 14:12:08 · 772 阅读 · 0 评论 -
嵌入式C语言面试题
嵌入式开发.C语言面试题 预处理器(Preprocessor)1. 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题) #define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL 我在这想看到几件事情: 1). #define 语法的基本知识(例如:不能以分号结束,括号的使用,等等) 2). 懂得预处理器将为你计算常数表达式的值,因原创 2013-10-31 14:12:12 · 735 阅读 · 0 评论 -
qt移植到s3c2440开发板上
一、QT-X11环境的配置1、解压qt-x11-opensource-src-4.4.3.tar.gz2、cd 解压了的目录 QT-X113、 #./configure //生成Makefile #make (或者:gmake) #make install //安装完后会生成目录/usr/local/Trolltech/QT-4.4.3 ,这时刚才解压完得到的Q原创 2013-10-31 14:12:32 · 677 阅读 · 0 评论 -
基于platform机制的驱动模型
1、 哪些适用于plarform驱动?platform机制将设备本身的资源注册进内核,由内核统一管理,在驱动程序中使用这些资源时通过platform device提供的标准接口进行申请并使用。这样提高了驱动和资源管理的独立性,这样拥有更好的可移植性。platform机制的本身使用并不复杂,由两部分组成:platform_device和platfrom_driver。Platform driver原创 2013-10-31 14:14:04 · 497 阅读 · 0 评论 -
U-Boot简单流程
下面我们就来修改出一个简单的uboot,实现快速更新系统。一、首先简单的说明uboot的启动过程:1)、从文件层面上看主要流程是在两个文件中:cpu/xxxx/start.s,lib_arm/board.c。Start.s 在flash中执行的引导代码,也就是bootloader中的stage1,负责初始化硬件环境,把u-boot从flash加载到RAM中去,然后跳到lib_arm/board.c原创 2013-10-31 14:14:01 · 707 阅读 · 0 评论 -
ALSA之PCM分析
之前写过一个音频驱动Codec分析:ALSA之Codec分析,那时忽略了阐述最基本的概念。要了解一个东西,首先要明白它是什么它起到什么作用,然后才会更好对它的工作流程更好的分析。所以这里提一下:Codec:音频芯片的控制,比如静音、打开(关闭)ADC(DAC)、设置ADC(DAC)的增益、耳机模式的检测等操作。I2S:数字音频接口,用于CPU和Codec之间的数字音频流raw data的传原创 2013-10-31 14:13:55 · 666 阅读 · 0 评论 -
工作队列work queue
工作队列(work queue)是Linux kernel中将工作推后执行的一种机制。这种机制和BH或Tasklets不同之处在于工作队列是把推后的工作交由一个内核线程去执行,因此工作队列的优势就在于它允许重新调度甚至睡眠。 每个工作队列有一个专门的线程,所有来自运行队列的任 务在进程的上下文中运行(这样它们可以休眠)。驱动程序可以创建并使用它们自己的工作队列,或者使用内核的一个工作队列。工作原创 2013-10-31 14:13:53 · 779 阅读 · 0 评论 -
android u-boot分析
1 U-BOOT中的DDR初始化 设置参数:/uboot/include/configs/smdk6410.h 实际操作:/uboot/cpu/s3c6410/cpu_init.s 2 源代码组织 对于ARM而言,主要的目录如下: board 平台依赖 存放电路板相关的目录文件,每一套板子对 应一个目录。如ARMEasy6410 (arm1176) c原创 2013-10-31 14:13:43 · 638 阅读 · 0 评论 -
android入门理解android的生命周期
最近从展讯平台跳到这个android平台,也没学过JAVA等知识,刚开始学这个感觉挺吃力的,后来发觉好多理论都是相通的,有的东西就是换了个名词而已,我感觉每学一样新东西首先得知道的是大概的处理流程。学习android的时候首先理解Activity的生命周期是十分重要的,他主要是:void onCreate(Bundle savedInstanceState) void onStart()原创 2013-10-31 14:13:27 · 513 阅读 · 0 评论 -
怎样使用Eclipse来开发Android源码
用eclipse+ADT作为android开发工具,可以说是很方便的,在HelloActivity小程序里我们就感觉到eclipse功能的强大。那么,我们可以用 eclipse来开发android源码吗?如果我们直接把android源码里一个工程导入eclipse,一般来说都会出现错误,说许多类库(包)找不到。 今天找到关于怎样使用eclipse来开发android源码的官方文档:原创 2013-10-31 14:13:13 · 470 阅读 · 0 评论 -
QT实现中文翻译
第一步在你的pro里面加入 TRANSLATIONS = myexec_zh.ts (根据对应的ts文件修改)第二步用lupdate 操作pro 将要翻译的提取到ts文件 命令是 lupdate my.pro第三步用 linguist 打开刚才的ts文件,linugist是在qt的bin的目录里面, 是一个界面工具 打开linguist 后用菜单栏file ->open 打开 相应的ts文件 如刚原创 2013-10-31 14:12:34 · 1156 阅读 · 0 评论 -
基于android下测试串口的程序
1,在linux环境下写好如下代码:点击(此处)折叠或打开#include termios.h>#include cutils/log.h>#include fcntl.h>#include time.h>static int fd=-1;static struct termios termios;int main(){ cha原创 2013-10-31 14:14:25 · 861 阅读 · 0 评论 -
init.rc解析与chmod 改变文件属性没用
android的init.rc语法是独有的,可以说是一种语言吧。 init.rc的语法分为行为(Actions),、命令(Commands) 、服务(Services)、选项(Options)。类别名称描述SECTIONon触发条件同上..service解析serviceCOMMANDchdir更改原创 2013-10-31 14:14:23 · 4318 阅读 · 0 评论 -
驱动注册的probe函数
probe的调用 从driver_register看起:int driver_register(struct device_driver * drv){ klist_init(&drv->klist_devices, klist_devices_get, klist_devices_put); init_completion(&drv->unloaded);原创 2013-10-31 14:14:11 · 1213 阅读 · 0 评论 -
mplayer移植到S3C2440(三)制作皮肤
在前面两部只能最基本的播放文件,还有许多功能都木有,这里就得自己制作皮肤。。这里相对开说还是挺难的,研究了俩天,还是有许多疑问,给大家推荐一篇不错的文章http://blog.21ic.com/user1/4132/archives/2009/62241.html 下面是我自己制作的皮肤,在开发板上试了下就感觉自己艺术细胞不怎么样原创 2013-10-31 14:12:45 · 530 阅读 · 0 评论 -
mplayer移植到S3C2440(二)
相信大家在前面弄了下会发现在开发板上还是不能播放文件,这里还得修改下内核: 内核版本:2.6.12编译器版本:arm-linux-gcc 3.4.11 修改/arch/arm/mach-s3c2410/devs.c解决文件系统大于30M无法烧到板上的问题:struct mtd_partition gec24xx_default_nand_part_b[] = { [0] = { .na原创 2013-10-31 14:12:43 · 534 阅读 · 0 评论 -
mplayer移植记录(一)
X86的LINUX上已经自带了解码库,不需要另外安装解码库,而arm平台自己做的文件系统没有解码库,需要另外安装解码库。下载MPlayer:MPlayer-1.0rc2.tar.bz2解码库:libmad-0.15.0b.tar.gz一、在X86的LINUX上安装mplayer 1 #./configure (./configure --enable-gui –-enable-liv原创 2013-10-31 14:12:41 · 528 阅读 · 0 评论 -
u-boot移植记录
uboot整个移植过程我们可以分为三个阶段:一,移植可以从Nor flash启动的uboot这个阶段是移植一个最简单的uboot,可以烧在Nor flash内运行.二,移植支持Nand flash驱动的uboot加入Nand flash驱动的支持,可以在uboot命令行下操作Nand flash.但还未能从Nand flash启动,只能在Nor flash内运行.三,移植可以从Nor flash启原创 2013-10-31 14:12:39 · 624 阅读 · 0 评论 -
QtEmbedded软键盘输入法实战
选了毕业设计的课题就是一个输入法的设计,在网上找了一下关于这方面的问题,先收藏以待慢慢研究最近看到很多人讨论关于QtEmbedded软键盘的问题, 问的最多的主要集中在以下方面:1、怎么才能写出不和程序窗口争夺焦点的输入法软键盘2、怎么把软键盘的键值发送给焦点widget3、其他关于中文输入法的问题首先必须明确, 软键盘其实是输入法的一种表现形式, 所以我们在设计实现软键盘时先要去寻找原创 2013-10-31 14:12:28 · 586 阅读 · 0 评论 -
Qt实现大图片快速缩小的算法
文章转载来自http://www.cuteqt.com/blog/?p=478&cpage=1#comment-3181,里面还有许多比较经典的例子,不妨大家多去看看 在Qt Labs Blog里提到了一个快速缩小大图片的方法, 而且作者说是“几乎所有图形程序员都知道的trick”。 大概因为笔者不是图形程序员的缘故, 对这个小技巧十分之陌生, 我想大家可能也有很大一部分人还不知道这个原创 2013-10-31 14:12:26 · 5526 阅读 · 2 评论 -
Qt资料下载网站
今天在网上看到一个关于Qt资料库下载的网站,感觉里面的知识对我这样的新手来说会很有用,先收藏起来,以便下次经常看看 http://bbs.linuxpk.com/thread-13711-1-1.html 管理员在2009年8月13日编辑了该文章文章。 --> -原创 2013-10-31 14:12:23 · 487 阅读 · 0 评论 -
按键中断的驱动代码
#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define rGPFCON (*((volatile unsigned *)(ioremap((原创 2013-10-31 14:12:10 · 665 阅读 · 0 评论 -
mplayer移植记录(方便自己用)
okmplayer -ac mad /avi.avi不支持格式Cannot find codec for audio format 0x6B6Fmplayer -ac mad /rmvb.rmvb有图像没有声音mplayer -ac mad /3gp.176x144.3gp有视频没声音mplayer -ac mad /wmv.wmv 有视频没声音mplayer -ac mad /原创 2013-10-31 14:12:48 · 631 阅读 · 0 评论 -
mplayer移植到S3C2440(四)音量控制
设置音量的程序#include #include #include #include #define ARM int main(int argc, char *argv[]) { int volume_read,volume_write,mixerfd; if(argc != 3){ printf("usage: %s原创 2013-10-31 14:12:52 · 515 阅读 · 0 评论 -
qt中mousemoveevent和mousepressevent实现鼠标滑动换label颜色...
buptyoyo:Qt中mouseMoveEvent和mousePressEvent实现鼠标滑动换label颜色当鼠标划过上面的一排Label后,鼠标形状变成手状,并且使label自动切换颜色。很自然的会想到在一个Label上,检测鼠标的mouseMoveEvent事件,当划过label时候,切换到另一个绿色的图片。鼠标的形状可以采用QT自带的Qt::OpenHandCursor。具体原创 2013-10-31 14:12:57 · 1029 阅读 · 0 评论 -
对INIT_WORK的理解
以前内核里对这个函数是这样定义的 #define INIT_WORK(_work, _func, _data),可以理解为INIT_WORK会在你定义的_work工作队列里面增加一个工作任务,该任务就是_func。_func这个任务会需要一些数据作为参数,这个参数就是通过_data传递的。 而现在看驱动的时候你会发现调用INIT_WORK的时候是只有两个参数,去掉了数据的部分。也许你会问原创 2013-10-31 14:13:50 · 671 阅读 · 0 评论 -
Linux 输入子系统
在Linux系统中,按键和触摸屏的设备驱动的实现方法是利用linux输入子系统。 因为input子系统已经完成了字符驱动的文件操作接口,所以编写驱动的核心工作是完成input系统留出的接口,工作量不大。但如果你想更灵活的应用它,就需要好好的分析下input子系统了。 一、input输入子系统框架 下图是inp原创 2013-10-31 14:13:48 · 536 阅读 · 0 评论 -
Android Button特效selector+shape
玩了将近一个月的android,确实感觉它的强大,考虑的也是非常全啊,连一个小小的button都能做的这么华丽,真不是展讯平台可以相比的。如果感觉用ImageButton的也可以按这样的结果下来。下面是我转载过来的文章,方便忘记的时候过来看看 ?xml version="1.0" encoding="utf-8"?>selector xmlns:android="http原创 2013-10-31 14:13:39 · 591 阅读 · 0 评论 -
关于android中BaseAdapter的理解
对于我这样还没有入门的人说,学这个android真是拿到一个API就不知道干嘛。每拿到一个API就得去百度寻找答案,现在讲述一下自己对这个BaseAdapter的几点理解。 这几天跟着我项目组的人完成一个文件管理器的功能,因为要显示文件的图片以及相关的文件信息,然后这里是采用了一个FileAdapter继承于BaseAdapter这个类。因为适配器的主要作用是用来给诸如Spinner原创 2013-10-31 14:13:36 · 630 阅读 · 0 评论 -
Android中PreferenceActivity的介绍
在Android中的APIdemos是中经常遇到过继承于PreferenceActivity这个类,紧接着就是addPreferencesFromResource(R.xml.*******);(附:这个******就是一个XML文件,以Preference_dependencies为例),现在我们进这个XML文件看下发现:PreferenceScreen xml原创 2013-10-31 14:13:34 · 472 阅读 · 0 评论 -
Android多线程设计模式---wait()和notify()机制
通常,多线程之间需要协调工作。例如,浏览器的一个显示图片的线程displayThread想要执行显示图片的任务,必须等待下载线程downloadThread将该图片下载完毕。如果图片还没有下载完,displayThread可以暂停,当downloadThread完成了任务后,再通知displayThread“图片准备完毕,可以显示了”,这时,displayThread继续执行。以上逻辑简单的说原创 2013-10-31 14:13:30 · 661 阅读 · 0 评论