自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

嵌入精灵

潜心研究嵌入式技术

  • 博客(22)
  • 资源 (11)
  • 收藏
  • 关注

转载 Linux C :遍历输出指定目录下的所有文件

在Linux下opendir()、readdir()和closedir()这三个函数主要用来遍历目录。在使用这三个函数前必须先包括以下两个头文件:#include <sys/types.h>#include <dirent.h><br /><br />opendir函数的原型为:<br />DIR *opendir(const char *name);它返回一个DIR*类型,这就是一个句柄啦,你不用管它的内部结构是什么样的,只要知道这个句柄就是等一下要传给readdir()函数的参数就行了。<br /><b

2010-11-29 20:41:00 2275

转载 Android事件处理分析+Android事件处理 +Android输入事件流程

Android事件处理分析http://blog.csdn.net/linweig/archive/2010/02/27/5330391.aspx按键事件 对于按键事件,调用mDevices->layoutMap->map进行映射。映射实际是由 KeyLayoutMap::map完成的,KeyLayoutMap类里读取配置文件qwerty.kl ,由配置 文件 qwerty.kl 决定键值的映射关系。你可以通过修 改./development/emulator/keymaps/qwerty.kl来改变键值的

2010-11-29 12:56:00 1797

转载 Android 事件处理

<br />Android 事件处理<br />--学习笔记2(金海建)<br />目的:通过全面的分析Android的鼠标和键盘事件。了解Android中如何接收和处理键盘和鼠标事件,以及如何用代码来产生事件。<br />主要学习内容:<br />1. 接收并处理鼠标事件:按下、弹起、移动、双击、长按、滑动、滚动<br />2. 接收并处理按键事件:按下、弹起<br />3. 模拟鼠标/按键事件<br /><br />1. Android事件<br />现代的用户界面,都是以事件来驱动的来实现人机交换的,

2010-11-29 12:49:00 4565

转载 Udev 内核机制(kobject_uevent) 性能优化

<br />Udev 内核机制(kobject_uevent) 性能优化<br />作者: zjujoe 转载请注明出处<br />Email:zjujoe@yahoo.com<br /><br />前言<br />这两天遇到一些 udev 的问题, 顺便阅读了一下文档(见参考文档), 基本了解了 udev 的机制。 嵌入式系统性能很重要,于是对内核这一块进行了性能方面的研究。<br />内核大概20多处会调用了 kobject_uevent 函数发送 KOBJ_ADD / KOBJ_REMOVE 等事件。

2010-11-28 18:28:00 1335

转载 Linux设备模型 学习总结682057749

看LDD3中设备模型一章,觉得思维有些混乱。这里从整体的角度来理理思路。本文从四个方面来总结一些内容:1.底层数据结构:kobject,kset.2.linux设备模型层次关系:bus_type,device,device_driver.3.集成:PCI设备驱动模型实例及设备,设备驱动注册源码的简单分析.4.面向对象的思想在linux设备模型中的应用分析.一、底层数据结构:kobject,kset先说说模型的意义: 总体来说是为了系统地管理所有设备。kobject 结合面向对象的思维。这个kobject属于

2010-11-28 18:11:00 994

原创 在Ubuntu上搭建ssh和samba服务器

   现在linux开发,大多采用远程服务器在本地客户端模式,在服务器上搭建好开发环境,在本地通过putty之类的端口登录远程服务器进行相应的控制,同时通过samba服务器,使得能够在windows环境下开发linux代码,然后同步在linux环境下编译。下面讲述在Ubuntu上搭建ssh和samba服务器的方法。   一.ssh服务器的搭建   ubuntu默认不带openssh server,而只有openssh client。  在命令窗口运行 sudo apt-get install openssh

2010-11-27 15:24:00 1519

转载 寄存器编址

<br />分析这几个容易混淆的概念.<br />        引用一段资料: 几乎每一种外设都是通过读写设备上的寄存器来进行操作的。外设寄存器也称为“I/O端口”,通常包括:控制寄存器、状态寄存器和数据寄存器三大类,而且一个外设的寄存器通常被连续地编址。<br /><br />CPU对外设IO端口物理地址的编址方式有两种:一种是I/O映射方式(I/O-mapped),另一种是内存映射方式(Memory-mapped)。具体采用哪一种则取决于CPU的体系结构。<br />  有些体系结构的CPU(如Pow

2010-11-26 16:32:00 1107

转载 Linux内核中的platform机制

<br />Linux内核中的platform机制<br /><br />从Linux 2.6起引入了一套新的驱动管理和注册机制:platform_device和platform_driver。Linux中大部分的设备驱动,都可以使用这套机制,设备用platform_device表示,驱动用platform_driver进行注册。<br />Linux platform driver机制和传统的device driver 机制(通过driver_register函数进行注册)相比,一个十分明显的优势在于pl

2010-11-26 16:14:00 670

转载 Linux驱动的platform机制

<br />最近研究了一下Linux驱动的platform机制。<br />从Linux2.6起,引入了一套新的驱动管理和注册机制:Platform_device和Platform_driver。Linux中大部分的设备驱动,都可以使用这套机制,设备用platform_device表示,驱动用platform_driver进行注册。<br /> <br />Linux platform driver机制和传统的device_driver机制相比,一个十分明显的优势在于platform机制将本身的资源注册进内

2010-11-26 16:12:00 1385

转载 理解“统一编址与独立编址、I/O端口与I/O内存”

<br />引言:<br />        从CPU连出来一把线:数据总线、地址总线、控制总线,这把线上挂着N个接口,有相同的,有不同的,名字叫做存储器接口、中断控制接口、DMA接口、并行接口、串行接口、AD接口……一个设备要想接入,就用自己的接口和总线上的某个匹配接口对接……于是总线上出现了各种设备:内存、硬盘,鼠标、键盘,显示器……<br />        对于CPU而言,如果它要发数据到某个设备,其实是发到对应的接口,接口电路里有多个寄存器(也称为端口),访问设备实际上是访问相关的端口,所有的信息

2010-11-26 15:08:00 2118 1

转载 platform设备添加流程

<br />今天我以fb设备的注册过程来分析platform设备的添加流程<br /><br />platform总线是kernel中最近加入的一种虚拟总线,它被用来连接处在仅有最少基本组件的总线上的那些设备.这样的总线包括许多片上系统上的那些用来整合外设的总线, 也包括一些"古董" PC上的连接器; 但不包括像PCI或USB这样的有庞大正规说明的总线.<br />平台设备<br />~~~~~~<br />    平台设备通常指的是系统中的自治体, 包括老式的基于端口的设备和连接外设总线的北桥(host

2010-11-24 16:37:00 1021

转载 内核中的 likely() 与 unlikely()

<br />在 2.6 内核中,随处可以见到 likely() 和 unlikely() 的身影,那么为什么要用它们?它们之间有什么区别? <br /><br />首先要明确:<br />            if(likely(value)) 等价于 if(value)<br />            if(unlikely(value)) 也等价于 if(value)<br />也就是说 likely() 和 unlikely() 从阅读和理解代码的角度来看,是一样的!!!<br /><br />这

2010-11-21 16:55:00 801

转载 怎样做一块好的pcb板

大家都知道理做PCB板就是把设计好的原理图变成一块实实在在的PCB电路板,请别小看这一过程,有很多原理上行得通的东西在工程中却难以实现,或是别人能实现的东西另一些人却实现不了,因此说做一块PCB板不难,但要做好一块PCB板却不是一件容易的事情。<br />微电子领域的两大难点在于高频信号和微弱信号的处理,在这方面PCB制作水平就显得尤其重要,同样的原理设计,同样的元器件,不同的人制作出来的PCB就具有不同的结果,那么如何才能做出一块好的PCB板呢?根据我们以往的经验,想就以下几方面谈谈自己的看法:<br /

2010-11-20 14:08:00 760

转载 中断服务下半部之工作队列详解

摘要】本文详解了中断服务下半部之工作队列实现机制。介绍了工作队列的特点、其与tasklet和softirq的区别以及其使用场合。接着分析了工作队列的三种数据结构的组织形式,在此基础之上分析了工作队列执行流程。最后介绍了工作队列相关的API,如何编写自己的工作队列处理程序及定义一个work对象并向内核提交等待调度运行。【关键字】中断下半部,工作队列,workqueue_struct,work_struct,DECLARE_WORK,schedule_work,schedule_delayed_work ,fl

2010-11-19 10:28:00 2086

转载 linux 多点触控协议

<br />多点触摸协议 <br /> <br />------------------------- <br />Copyright (C) 2009 Henrik Rydberg <rydberg@euromail.se > <br /><br />讨论: datangsoc@hotmail.com<br /> <br /> <br /> <br />简介 <br />为了使用功能强大的多点触控设备,一种方案是上报用户层所需的详细的手指触摸数据。这个文档所描述的多点触控协议可以让内核驱动程序向用户层上报

2010-11-18 12:54:00 1300

转载 PXA270嵌入式系统设计(2)—时钟及复位部分

一、时钟部分 任何一款处理器都需要至少一个时钟源。在处理器的内部会有相应的时钟管理单元来为cpu及各个功能控制单元提供合适的时钟。 PXA270处理器的需要两个外部振荡器,1个13M和1个32.768K。它们各自的作用:  13M的时钟主要用于产生系统各个PLL的参考时钟,也可以为部分低速控制器提供时钟;  32.768K的时钟主要用于为RTC控制器提供实时时钟源,也可以为部分低速控制器提供时钟。  PXA270处理器内部有两个PLL单元,一个是外围PLL,另一个是核心PLL外围PLL使能后产生固定的312

2010-11-12 19:57:00 842

转载 PXA270嵌入式系统设计一:电源管理部分收藏

<br />最近计划针对我们华清远见的教学开发一套PXA270系统,我把我的一些软、硬件开发过程记录下来和大家一起分享、讨论。有好的建议大家一定要及时交流,lht@farsight.com.cn<br />平台硬件功能要求:32M/64M nor flash、64M sdram、10M/100M自适应网口、串口、SD卡接口、USB主从口、实时时钟、4*4扫描键盘、I2C的e2rom、蜂鸣器、A/D、CAN总线接口、VGA接口、数字液晶接口、音频接口、电源管理等功能。<br />平台嵌入式操作系统要求:<br

2010-11-12 19:51:00 960

转载 记录每次更新到仓库

<br />现在我们手上已经有了一个真实项目的 Git 仓库,并从这个仓库中取出了所有文件的工作拷贝。接下来,对这些文件作些修改,在完成了一个阶段的目标之后,提交本次更新到仓库。<br />请记住,工作目录下面的所有文件都不外乎这两种状态:已跟踪或未跟踪。已跟踪的文件是指本来就被纳入版本控制管理的文件,在上次快照中有它们的记录,工作一段时间后,它们的状态可能是未更新,已修改或者已放入暂存区。而所有其他文件都属于未跟踪文件。它们既没有上次更新时的快照,也不在当前的暂存区域。初次克隆某个仓库时,工作目录中的所有

2010-11-09 20:30:00 797

转载 C语言数据类型:联合(union)

<br />1. 联合说明和联合变量定义 <br />    联合也是一种新的数据类型, 它是一种特殊形式的变量。 <br />    联合说明和联合变量定义与结构十分相似。其形式为: <br />     union 联合名{ <br />          数据类型 成员名; <br />          数据类型 成员名; <br />          ... <br />     } 联合变量名; <br />    联合表示几个变量公用一个内存位置, 在不同的时间保存不同的数据类型 <br /

2010-11-08 10:12:00 1053

原创 在Ubuntu上搭建嵌入式Linux开发环境

<br />                     <br />                                     在Ubuntu上搭建嵌入式Linux开发环境    <br />     我用的是Ubuntu8.10,是在windows xp上通过虚拟机VMware7安装的,这个过程比较简单 。由于Ubuntu在安装后很多开发必备的软件都没有安装,下面详细讲解下这些软件的安装和配置过程。<br />一.实现Ubuntu与windows的文件共享。<br />       如果虚拟机

2010-11-08 09:17:00 1645

转载 Android之PreferenceActivity

<br />看到很多书中都没有对PreferenceActivity做介绍,而我正好又在项目中用到,所以就把自己的使用的在这总结一下,也方便日后查找。<br />PerferenceActivity是什么,看下面的截图:<br />            <br />Android系统截图(左)                MusicPlayer Setting截图(右)<br />         好了,我们看到Android系统本身就大量用到了PreferenceActivity来对系统进行信息配置和

2010-11-03 16:13:00 1441

转载 PreferenceActivity 全接触

<br />PreferenceActivity <br /> <br /> <br />为了引入这个概率 首先从需求说起 即:现有某Activity专门用于手机属性设置 那么应该如何做呢?<br /> <br />根据已学知识 很快一个念头闪过 即:Activity + Preference 组合 前者用于界面构建 后者用于设置数据存放  其实 这是正确的 但是 这会比较繁琐 因为 每个设置选项 都要建立与其对应的Preference <br /> <br />所以  现在有更好的选择了 那就是本文的主角

2010-11-03 15:15:00 1211

android开发教程&笔记

详细的android开发入门教程和笔记,是新手入门开发android的好资料

2010-04-20

android移植教程

详细的android移植教程,让你快速搭建嵌入式android开发系统

2010-04-17

android移植到2440

详细讲解android移植到S3C2440的方法和步骤,让你快速熟悉android系统的开发和移植

2010-04-11

建立Android开发环境

让你快速搭建android开发环境 引导你进入android开发的大门

2010-04-11

Android在6410上的移植

详细讲解android系统在S3C6410上的移植过程,帮你快速学习android开发

2010-04-10

Android应用框架原理和程序设计36技

android开发的优秀教材,详细讲解Android设计的技巧和方法

2010-04-10

嵌入式linux开发标准教程

华清远见经典linux开发教程 详细讲解嵌入式linux开发全过程

2010-02-28

linux2.6在s3c2410上全线移植

详细论述linux2.6.14内核在s3c2410上的移植过程,包括uboot,内核和根文件系统的详细移植步骤,是学习linux内核移植的好教材

2010-01-22

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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