自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

我的嵌入式

有志者,事竟成!

  • 博客(57)
  • 资源 (7)
  • 收藏
  • 关注

转载 Git和Repo扫盲——如何取得Android源代码

Git 是 Linux Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的分布式版本控制软件,它不同于Subversion、CVS这样的集中式版本控制系统。在集中式版本控制系统中只有一个仓库(repository),许多个工作目录(working copy),而像Git这样的分布式版本控制系统中(其他主要的分布式版本控制系统还有BitKeeper、Mercurial、GNU

2012-02-26 16:21:57 520

转载 v4l2驱动编写篇

分类: Linux设备驱动程序第三版学习笔记 2011-03-01 18:11 1083人阅读评论(3)收藏 举报 博主按:介绍V4L2基础的东西,不知道是哪位同志翻译的,莫名的感动啊。这个必须转!                 另,对未翻译的部分博主加以补充。文中以蓝色字体表示,如果有错误请高手指正。还有些图片好像不能显示,我从原文复制过来了。 v4l2驱动编写篇一--

2012-02-22 10:37:22 902

转载 Mplayer 移植

关于mplayer移植网上资料很多,但都很混乱。在此,我做了一个关于mplayer 的详细总结。在做之前最好在解压源码包后,先通过./configure --help看一下相关配置。X86的LINUX上已经自带了解码库,不需要另外安装解码库,而arm平台自己做的文件系统没有解码库,需要另外安装解码库。下载MPlayer:MPlayer-1.0rc2.tar.bz2        解码库

2012-02-21 09:45:55 586

原创 linux 2.6.35内核移植- USB camera功能添加

一、环境主机环境 :ubuntu 10.10        目标机:FS2410(S3C2410)        主机工具链 :gcc-4.4.5        交叉工具链:arm-none-linux-gnueabi-gcc-4.3.2        摄像头 :ZC301二、移植过程1、配置内核是内核支持芯片为ZC301的摄像头        Make menuc

2012-02-20 21:05:00 1069

转载 V4l2 Capture Sequence 捕获过程

v4l2 操作实际上就是 open() 设备, close()设备,以及中间过程的 ioctl() 操作。对于 ioctl的调用,要注意对 errno 的判断,如果调用被其他信号中断,即errno 等于EINTR 的时候,要重新调用。Video capture device 的实际功能就是采集视频信号,并将数字化的图像保存在memory 中,现在几乎上所有的相关设备都能采集

2011-11-24 21:31:16 760

转载 V4L2驱动编写网址

http://www.usr.cc/group-57-1.html  主题作者/时间回复最后发表v4l2驱动编写篇第七--控制方法dean2010-5-90665dean2010-5-9 09:53v4l2驱动编写篇第六B--流输入输出dean2010-5-90735dean2010

2011-11-24 21:28:01 484

转载 在开发板上挂载NFS(转)

网络文件系统(NFS,Network File System)是一种将远程主机上的分区(目录)经网络挂载到本地系统的一种机制,通过对网络文件系统的支持,用户可以在本地系统上像操作本地分区一样来对远程主机的共享分区(目录)进行操作。    在嵌入式Linux 的开发过程中,开发者需要在Linux 服务器上进行所有的软件开发,交叉编译后,通用FTP 方式将可执行文件下载到嵌入式目标系统运行,但

2011-11-24 21:25:35 1157

转载 USB摄像头驱动的移植 linux

USB摄像头驱动的移植一、驱动程序中的重要数据结构    Linux系统下,USB设备驱动程序完全符合通用设备驱动的准则,不同的是Linux操作系统中有一个叫做“USB CORE”的子系统,它的作用是提供支持USB设备驱动程序的API(应用编程接口)和USB的主机驱动程序。它提供了许多数据结构、宏定义和功能函数来对硬件或设备进行支持。    在Linux下编写USB设备的驱动程序从严格

2011-11-24 21:22:58 3379 1

原创 Ubuntu下安装使用Xfce4发表于 : 2005-07-04 23:25

安装: 代码:sudo apt-get install xfce4 xfce4-taskbar-plugin(xfce4-taskbar-plugin是我需要,你可不用,完整安装xfce4 的桌面环境:sudo apt-get install xfld-desktop )现在直接sudo apt-get install xubuntu-desktop就可以了!会安装以下组件:引用:a2ps (1:

2011-11-23 10:23:48 1184

原创 ubuntu下安装xcfe4桌面环境

Xfce是一个最流行的Unix下的轻量级桌面环境,随着Xfce的成熟,现在使用Xfce作桌面的系统已经越来越多了,国外的XUbuntu GNU/Linux、SAM Linux Desktop和国内的lucky8k-veket都将Xfce作默认的桌面窗口管理器。你为什么应该尝试Xfce的呢?Ubuntu 11.04默认情况下使用‘Unity’ 桌面,但如果你使用的是一个较旧的计算机上运行

2011-11-23 10:10:08 2663

转载 让Mplayer成为Linux系统下的万能播放器

1.下载相关codes ( http://www.mplayerhq.hu/MPlayer/ ) 主要都在这里  Mplayer-1.0rc1.tar.bz2(主程序)( http://www.mplayerhq.hu/MPlayer/releases/MPlayer-1.0rc1.tar.bz2 )  Abyss-1.6.tar.bz2 (皮肤) (http://www2.mplayer

2011-11-21 15:14:15 775

转载 教你如何在REDHAT LINUX 9 下安装mplayer播放器

昨天把MPLAYER安装到自己的LINUX下了,真是太爽了。今天把安装方法分享给大家,安装之前我也参考了网上的一些教程。总体感觉比较乱,不适合菜鸟。今天写这个目的就是方便广大的菜鸟朋友。 哈哈.....(今天没有贴图,原因是我的LINUX下的邮件服务出了故障,发不了附件了。REDHAT也不支持我的显卡,在REDHAT LINUX下用的是较老的浏览器mozilla,写不了BLOG。)MPla

2011-11-21 14:50:08 1591

转载 Linux下samba源码安装(非RPM包)

实战linux与xp的访问(原创)小弟自己通过实践终于配置成功了samba,写下配置过程,希望高手多提意见,本文有个遗憾我的rpm安装samba打印机共享成功,用源码安装打印机没有成功,非常可惜。(原创)本文只发表于[url]www.xxlinux.com[/url],作者tian1118(大学法律专业的linux爱好者)。特别感谢黑夜不在,燕南天等。欢迎转载,并保证本文的完整性,并注明出

2011-11-15 15:20:45 785

转载 kzalloc 函数详解

用kzalloc申请内存的时候, 效果等同于先是用 kmalloc() 申请空间 , 然后用 memset() 来初始化 ,所有申请的元素都被初始化为 0.view plaincopy to clipboardprint?/**  * kzalloc - allocate memory. The memory is set to zero.  * @size: ho

2011-11-03 17:46:04 720

转载 Linux支持U盘的一些内核选项

DEVICE DRIVERS---SCSI device support SCSI disk support SCSI generic support DEVICE DRIVERS---USB support OHCI HCD support USB Mass Storage support[*] USB Mass Storage Write-Protected M

2011-10-28 23:36:47 948

转载 s3c2440 外中断的按钮实现

根据TQ2440开发板的原理图,按键接的是S3C2440可用于外部中断的EINT0,1,2,4引脚,GPFCON可以设置这些引脚的功能。EXTINT0寄存器可以设置这四个引脚的中断产生的条件,需要注意的是EINT0~2都有自己的中断向量,而EINT4~7则共用一个中断向量。因此使用EINT4时还要在EINTMASK寄存器开相应中断允许位,进入EINT4中断后还要清EINTPEND寄存器的中

2011-10-28 23:35:30 735

原创 将数字转换为字符串

int ul_to_str(char *str,unsigned long num,int k) //功能:将数字转换为字符串,错误返回-1,正确返回1{     #define N 20    int arr[N];    int i,j;     for (i=0;i     {         arr[i]=num%k;         num=num/k;

2011-10-28 23:29:31 720

转载 linux C程序实现文件夹大小提取

在嵌入式linux系统中,经常要对一些实时数据进行存储,而在存储空间有限的情况下往往需要判断存储目录中的文件夹的大小,而通过C语言实现文件夹大小的获取在网上的程序可是少之又少,现提供一个程序,大家一起分享,分享,其实程序是提取文件夹下所有文件大小,提取运行程序文件夹下的文件的大小之和,但不包括文件夹目录下的文件夹的大小。具体程序如下:#include #include #inclu

2011-10-28 23:25:50 1133

转载 S3C2440裸奔触摸屏

S3C2440对于触摸屏的相关interface有以下几个模式: 1.普通转换模式,手册是这么说的:most likely used for General Purpose ADC Conversion.(不了解这个,所以用原文) 2.分开X/Y转换模式,就是分开来转换X位置和Y位置。X位置的信息会保存在ADCDAT0的低10位,而Y位置信息则保存在ADCDAT1的低10位。 3.自动

2011-10-28 23:22:39 621

转载 S3C2440读写NAND FLASH(大页)

K9F2G08U0A nand flash 的容量为256M byte,其内部有2048块,每块有64页,每页有2K+64字节,其中每页会分为main区(主域)和spare区(备用域),main区一般用来存入主要数据,spare一般用来存放ECC校验码。下面几点是编程时需要注意的: 1.NAND FLASH芯片手册里说的column是指页内地址,row是指页地址,page也是指

2011-10-28 23:21:45 1267

转载 s3c2440控制TFT LCD

TFT LCD的时序比较复杂,因此S3C2440涉及TFT LCD的寄存器比较多。只要认真对照好LCD的说明书设置好相应2440寄存器就行了。TFT LCD并不难,但是一个小地方设置错了都可能导致显示不正常,而且十分难找到出错的地方。   下面是编译会涉及到东西:  1.时序和显示模式配置LCDCON1~5。  2.显示缓存的地址配置LCDSADDR1~3。  3.如果是三星的

2011-10-28 23:00:15 769

转载 Uart_Printf()

Uart_Printf ()为常用的串口打印函数,其常用于满足特定条件时通过串口打印信息。很多开发者喜欢在中断服务程序中使用它,所以,仅仅包含一句Uart_Printf ()的中断服务程序,可以被认为是一个普遍而简单的应用。下面给出针对只包含一句Uart_Printf ()的中断服务程序进行测试的结果。 Uart_Printf()函数分析ARM与PC机通信,常通过Uart_Printf

2011-10-28 22:59:12 6636

转载 S3C2440 AD转换

S3C2440的AD转换跟触摸屏差不多,下面是关键代码,十分简单。 int get_ad(int ain)//读取AD的值{    rADCCON = (1    while( rADCCON&1 );//等待转换开始    while( !( rADCCON&(1        return (U32)(rADCDAT0&0x3ff);//返回结果}

2011-10-28 22:56:57 665

转载 S3C2440定时器的使用

#include "mytimer.h"#include "lhg_def.h"#include "uart.h"#include "lhg_def.h"#include "2440addr.h"//Timer input clock Frequency = PCLK / {prescaler value+1} / {divider value}//PCLK=50Mhz

2011-10-28 22:55:46 452

转载 S3C2440 IIC读写AT24C02A

S3C2440读写AT24C02A只需要采用主机发送模式和主机接收模式即可,手册上提供有这两个模式的流程图,可以参考。 AT24C02A有几点需要注意的:1.AT24C02A连续读多个字节时最后一个字节不用产生应答信号。2.读的时候要先用写的方式写入硬件地址写方式和数据地址,此时不用发送STOP信号,接着继续写入硬件地址读方式,然后开始读数据。3.其写的方式只有单字节写或者页写

2011-10-28 22:54:39 480

转载 platform设备驱动全透析

1.1 platform总线、设备与驱动在Linux 2.6的设备驱动模型中,关心总线、设备和驱动这3个实体,总线将设备和驱动绑定。在系统每注册一个设备的时候,会寻找与之匹配的驱动;相反的,在系统每注册一个驱动的时候,会寻找与之匹配的设备,而匹配由总线完成。一个现实的Linux设备和驱动通常都需要挂接在一种总线上,对于本身依附于PCI、USB、I2 C、SPI等的设备而言,这自然不是问题,

2011-10-25 23:25:00 345

转载 mjpg-streamer源码分析

mjpg-streamer是一个很好的开源项目,用来做视频服务器,使用的是v4l2的接口。前面我们说了它的移植过程,但是在某些特定的情况下这个工程不能达到我们的需求,所以我们需要对源码进行修改,或者直接写一个自己的视频服务器。在修改源码或写自己的服务器之前我们分析下这个源码的代码。这个代码里有三个部分是我们需要掌握的内容,第一是v4l2接口,第二个是socket编程,第三个是多线程编程。一

2011-10-25 23:17:36 372

转载 zImage内核镜像解压过程详解

在华清远见教学过程中,发现很多学员对内核镜像解压过程比较感兴趣,但网上相关的文章往往不能把关键问题讲清楚,所以写了这篇文章。本文以linux-2.6.14内核在S3C2410平台上运行为例,讲解内核的解压过程。内核编译完成后会生成zImage内核镜像文件。关于bootloader加载zImage到内核,并且跳转到zImage开始地址运行zImage的过程,相信大家都很容易理解。但对于zIm

2011-10-20 20:13:46 408

转载 线程解析(四)

一、线程控制上一节我们讲了使用互斥量实现线程的同步,这里我们介绍一下另外一种常用的方法,POSIX提供的无名信号量sem,PV原语是对整数计数器信号量sem的操作,P操作判断sem资源数是否为0,不为0则进行P操作,一次P操作可使sem减一,而一次V操作可使sem加一。下面是POSIX提供的一些接口函数:1、信号量初始化        #include         int se

2011-10-20 20:12:06 323

转载 一个通用Makefile的编写

我们在Linux环境下开发程序,少不了要自己编写Makefile,一个稍微大一些的工程下面都会包含很多.c的源文件。如果我们用gcc去一个一个编译每一个源文件的话,效率会低很多,但是如果我们可以写一个Makefile,那么只需要执行一个make就OK了,这样大大提高了开发效率。但是Makefile的语法规则众多,而且缺乏参考资料,对于初学者来说,写起来还是有一定的难度,往往令很多人望而生畏。下面我

2011-10-20 20:08:33 315

转载 何时需要PIC

“PCI”其实是我们在编译动态库的命令行参数,我们用这个参数标记,告诉GCC产生的代码不要包含对函数和变量具体内存位置的引用,这是因为现在还无法知道使用该消息代码的应用程序会将它连接到哪一段内存地址空间。这样编译出的*.o可以被用于建立共享链接库。建立共享链接库只需要用GCC的“-shared”标记即可。现实生活中不是每个程序代码都是从零开始,常常会复用别人写好的,成熟的代码,而这些代码就被封

2011-10-20 19:55:52 375

转载 C++什么时候使用纯虚函数

通常在实现一个接口的时候使用纯虚函数。接口一般就是一个抽象类。有时在基类中将某一成员函数定为虚函数,并不是基类本身的要求,而是考虑到派生类的需要,在基类中预留一个函数名,具体功能留给派生类根据需要去定义。例如,我们定义一个Point基类,Point类中没有求面积的area函数,因为点是没有面积的。但是在其直接派生类cricle和间接派生类cylinder中都需要有area函数,而且这两个are

2011-10-20 19:54:42 1915

转载 非阻塞式socket编程select()

Select在Socket编程中还是比较重要的,可是对于初学Socket的人来说都不太爱用Select写程序,他们只是习惯写诸如 connect、accept、recv或recvfrom这样的阻塞程序(所谓阻塞方式block,顾名思义,就是进程或是线程执行到这些函数时必须等待某个事件的发生,如果事件没有发生,进程或线程就被阻塞,函数不能立即返回)。可是使用Select就可以完成非阻塞(所谓非阻塞方

2011-10-20 19:53:47 460

转载 分析Linux中Spinlock在ARM及X86平台上的实现

本文主要以2.6.22.6内核分析Linux中spinlock在ARM及X86平台上的实现(不同版本的内核实现形式会有一些差异,但原理大致相同)。此处默认大家已经熟悉了spinlock的使用,重点解释容易引起迷惑的体系结构相关的实现部分。一、spin_lock(lock)的实现 #if defined(CONFIG_SMP) || defined(CONFIG_DEBUG_SPINLO

2011-10-20 19:52:32 448

转载 共享内存和信号

1.共享内存概述共享内存允许两个或更多进程共享一给定的存储区。因为数据不需要在各个进程之间复制,所以这是最快的一种进程间通信方式。使用共享内存时的关键点在于如何在多个进程之间对一给定的存储区进行同步访问。 例如若一个进程正在将数据放入共享内存区,则在它做完这一操作之前,其他进程不应该去取这些数据。通常,信号量被用来实现对共享内存访问的同步。如果只有两个进程访问共享内存,那么我们可以

2011-10-20 19:50:19 386

转载 根文件系统中添加telnetd服务

使用busybox制作的一个基本根文件系统如何添加telnetd服务呢?下面把本人的添加过程列出来供大家分享,如有不同意见请不吝赐教!1、 添加telnet的支持(busybox中配置)Networking Utilities --->                [*] telnet                [*] Pass TERM type to remote h

2011-10-20 19:46:42 411

转载 Linux内核中等待队列的几种用法

Linux内核里的等待队列机制在做驱动开发时用的非常多,多用来实现阻塞式访问,下面简单总结了等待队列的四种用法,希望对读者有所帮助。1. 睡眠等待某个条件发生(条件为假时睡眠):    睡眠方式:wait_event, wait_event_interruptible            唤醒方式:wake_up (唤醒时要检测条件是否为真,如果还为假则继续睡眠,唤醒前一定要把条件变

2011-10-20 19:17:00 303

转载 u-boot链接分析

一个典型的嵌入式系统中,bootloader代码放在NOR Flash或NAND Flash里面,系统加电或复位后,首先运行这段代码。通常把bootloader代码放在NOR Flash里面,NAND Flash由于硬件原因不能随机访问,需要特殊的硬件支持机制。bootloader代码除了初始化以外就是搬运程序,即地址重定位(relocate)。我们为什么需要relocate?主要是经济方面和

2011-10-20 19:14:43 325

转载 关于linux中的软链接和硬链接

Linux中有两种类型的链接:硬链接是利用Linux中为每个文件分配的物理编号——inode建立链接。因此,硬链接不能跨越文件系统。(用ls –i命令可以查看目录下文件的inode编程)。软链接(符号链接)是利用文件的路径名建立链接。通常建立软链接使用绝对路径而不是相对路径,以最大限度增加可移植性。i节点包含了所有与文件有关的信息:文件类型、文件存取许可权位、文件长度和指向该文件所占用

2011-10-20 19:11:44 386

转载 mjpg-streamer源码分析

mjpg-streamer是一个很好的开源项目,用来做视频服务器,使用的是v4l2的接口。前面我们说了它的移植过程,但是在某些特定的情况下这个工程不能达到我们的需求,所以我们需要对源码进行修改,或者直接写一个自己的视频服务器。在修改源码或写自己的服务器之前我们分析下这个源码的代码。这个代码里有三个部分是我们需要掌握的内容,第一是v4l2接口,第二个是socket编程,第三个是多线程编程。一

2011-10-20 19:02:37 369

s5pv210 cortex A8用户手册

s5pv210 cortex A8用户手册

2011-12-25

TI OMAP4430 cotex A9 ubuntu移植文档

TI OMAP4430 cotex A9 ubuntu移植文档玩A9的可以参考下

2011-11-24

cotex A9介绍

cotex A9介绍cotex A9介绍cotex A9介绍

2011-11-22

boa-0.94.13.tar.tar

boa-0.94.13.tar.tar ,结合郭天祥boa移植文档,自己做个服务器,可以试试看哦。

2011-10-28

web服务器boa移植手册

郭天祥的boa移植文档,是个不错的好东西哦!!!

2011-10-23

U-BOOT移植S3C2440完全手册

详细讲解了u-boot移植的全过程,有助于了解u-boot的函数机制。

2011-10-17

空空如也

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

TA关注的人

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