- 博客(32)
- 资源 (20)
- 收藏
- 关注
转载 V4L2摄像头获取单幅图片测试程序
直接读写方式:#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define CLEAR(x)
2011-06-30 19:49:00 2932 4
转载 Video for Linux 2.0 版API参考手册
Video for Linux Two API SpecificationDraft 0.21Michael H Schimek mschimek@gmx.at> Bill DirksHans VerkuilMartin RubliCopyright © 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Bill
2011-06-30 18:48:00 1661
转载 V4L2 – Linux下视频驱动模型
在DM6446平台,我们在GPP端一般使用MontaVista操作系统来进行程序控制。MontaVista作为一种嵌入式的Linux,和桌面Linux类似,同样使用视频驱动V4L2(Video For Linux Two)来进行视频采集、输出。本文就V4L2的使用方式做简易说明。视频采集的基本流程一般的,视频采集都有如下流程: 打开视频设备在V4L2中,视频设备被看做一个文件。
2011-06-30 15:57:00 1122
转载 linux android V4l2 的一些精品文章连接
花了很长时间找的,因此记录下来,以备使用: Android camera preview and take picture with V4l2: http://hi.baidu.com/kellyvivian/blog/item/5ea8244b91e20c3aafc3ab95.html v4l2驱动编写篇第五B--格式的协定 :http://www.usr.cc/forum-redirect-g
2011-06-30 15:54:00 1060
转载 在驱动和应用程序间共享内存
在不同的场合,很多驱动编写人员需要在驱动和用户程序间共享内存。两种最容易的技术是: l 应用程序发送IOCTL给驱动程序,提供一个指向内存的指针,之后驱动程序和应用程序就可以共享内存。(应用程序分配共享内存) l 由驱动程序分配内存页,并映射这些内存页到指定用户模式进程的地址空间,并且将地址返回给应用程序。(驱动程序分配共享内存) 使用I
2011-06-30 14:56:00 1083
转载 在linux应用层写driver驱动程序介绍
刚从vxworks或其他rtos转到linux的朋友一定对linux下涉及到硬件的操作很不适应,因为在linux的体系结构中不允许应用层直接对物理地址进行访问,应用看到的都是进程内经过映射的虚拟地址。所以一般的做法是只要涉及到硬件的操作都是设计一个相应的driver,随后应用程序通过driver提供的文件操作接口去读写寄存器或者物理内存。在这里介绍一种比较折中的方法,即通过特殊的设计使得应用程序可
2011-06-30 14:37:00 1315
转载 驱动程序与应用程序之间的通信
驱动程序必须与应用程序进行通信,才能最终达到应用程序控制设备的目的,不然驱动有QIU用。要通信就涉及到3个方面: 1.应用程序与驱动程序通信2.驱动程序与应用程序通信3.数据传输下面分别讨论1。应用程序与驱动程序通信1-1 应用程序实现与驱动通信的过程: ---用CreateFile打开设备,然后用DeviceIoControl和驱动通信,包括从驱动读数据和写数据2种情况也可以使用ReadFile
2011-06-30 14:27:00 1027
转载 memset, memcpy, strcpy 的区别
memset用来对一段内存空间全部设置为某个字符,一般用在对定义的字符串进行初始化为‘ ’或‘/0’;例:char a[100];memset(a, /0, sizeof(a)); memcpy用来做内存拷贝,你可以拿它拷贝任何数据类型的对象,可以指定拷贝的数据长度;例:char a[100],b[50]; memcpy(b, a, sizeof(b));注意如用sizeof(a),会造成
2011-06-29 08:45:00 720
转载 应用层调用驱动程序的方法
转:http://hi.baidu.com/cealy/blog/item/3d300ed7941182 d9a144df5a.html Windows 中,应用程序使用驱动,应用程序与驱动通信的一些问题。 2.1 应用程序如何使用驱动 应用程序中使用 CreateFile,ReadFile,WriteFile,DeviceIoControl,CloseHandle 来指示驱动程序完成某种
2011-06-23 12:18:00 2927
转载 C++网络库总结
C++网络库总结转载自:http://blog.csdn.net/yangzhuoluo/archive/2009/06/27/4303134.aspx1. ACE - Adaptive Communication Environment http://www.cs.wustl.edu/~schmidt/ACE.html 2. Common G++ (GNU) http://www.gnu
2011-06-23 09:36:00 2387
转载 Win32 平台 Boost 的编译方法
转自:http://blog.csdn.net/livelylittlefish/archive/2010/12/24/6095619.aspxWin32 平台 Boost 的编译方法 本文以 boost1.40 为例,在 Win32 平台的编程环境为 vs2005 ,假设 Boost 代码在 E:/opensource/boost_1_40_0 目录,步骤如下。 1. 获得 b
2011-06-23 09:33:00 765
转载 Win32平台如何配置才能使用Boost、ACE、CppUnit
转自:http://blog.csdn.net/livelylittlefish/archive/2010/12/24/6096108.aspx Win32平台如何配置才能使用Boost、ACE、CppUnit 1. 环境变量 (1) 为ACE-5.6.4添加/修改的的环境变量 C:/Documents and Settings/zubo.yu>echo %ACE_ROO
2011-06-23 09:32:00 992
转载 Linux平台Boost的编译方法
转载自:http://blog.csdn.net/livelylittlefish/archive/2010/12/24/6095658.aspxLinux平台Boost的编译方法 Boost的编译使用的不是已经成为公认标准的make,而是专门为Boost开发的工具bjam(boost jam)。本文以boost1.40为例,在Linux平台的编程环境为gcc4.4.1,假设Boo
2011-06-23 09:31:00 670
转载 linux内核空间与用户空间信息交互方法(转)
内核空间(kernel-space) VS 用户空间(user-space)作为一个Linux开发者,首先应该清楚内核空间和用户空间的区别。关于这个话题,已经有很多相关资料,我们在这里简单描述如下:现代的计算机体系结构中存储管理通常都包含保护机制。提供保护的目的,是要避免系统中的一个任务访问属于另外的或属于操作系统的存储区域。如在IntelX86体系中,就提供了特权级这种保护机制,通过
2011-06-21 13:57:00 864
转载 FrameBuffer 原理、实现与应用
一、FrameBuffer的原理 FrameBuffer 是出现在 2.2.xx 内核当中的一种驱动程序接口。 Linux是工作在保护模式下,所以用户态进程是无法象DOS那样使用显卡BIOS里提供的中断调用来实现直接写屏,Linux抽象出FrameBuffer这个设备来供用户态进程实现直接写屏。Framebuffer机制模仿显卡的功能,将显卡硬件结构抽象掉,可以通过Framebuffe
2011-06-20 13:59:00 1374
转载 嵌入式LCD驱动程序设计
一. Linux的帧缓冲设备帧 缓冲(framebuffer)是Linux为显示设备提供的一个接口,把显存抽象后的一种设备,他允许上层应用程序在图形模式下直接对显示缓冲区进行读 写操作。这种操作是抽象的,统一的。用户不必关心物理显存的位置、换页机制等等具体细节。这些都是由Framebuffer设备驱动来完成的。帧缓冲驱动 的应用广泛,在linux的桌面系统中,Xwindow服务器就是利用帧缓冲进行
2011-06-20 13:46:00 921
转载 LCD & framebuffer开发心得(转)
缓冲设备属于字符设备,采用了“文件层-驱动层”的接口方式。Linux为帧缓冲设备定义的驱动层接口为struct fb_info结构。在文件层次上,Linux为其定义了下面的操作函数:struct file_operations 软件运行流程:在文件层次上,用户调用struct file_operations的函数操作,在struct file_operations中间接调用struct fb_op
2011-06-20 13:45:00 898
转载 ioctl函数详解
本函数影响由fd 参数引用的一个打开的文件。 #includeint ioctl( int fd, int request, .../* void *arg */ );返回0 :成功 -1 :出错 第三个参数总是一个指针,但指针的类型依赖于request 参数。我们可以把和网络相关的请求划分为6 类:套接口操作文件操
2011-06-20 11:10:00 1490
转载 TI C64x+ DSP CACHE 一致性分析与维护
作者:德州仪器 DSP 技术应用工程师 宋洋摘要 在各种数字信号处理系统中,CACHE被广泛用于弥补Core与存储器之间的速度差异。在CACHE的使用过程中,存在不同类型存储器之间数据是否一致的问题。本文着重分析TI高性能C64x+ DSP系列中各级CACHE之间数据一致性问题以及如何进行一致性维护。1. 概述 CACHE作为Core和低速存储器之间的桥梁,基于代码和数据的
2011-06-20 10:47:00 1317
转载 关于Linux下的视频编程
前言:目前正在忙于ARM平台的Linux应用程序的开发(其实是刚刚起步学习啦)。底层的东西不用考虑了,开发板子提供了NAND Bootloader,和Linux 2.6的源码,而且都编译好了。自己编译的bootloader可以用,但是Linux编译后,文件很大,暂且就用人家编译的系统,先专心写应用程序吧。。正文:要做的任务是,把一块板子上的摄像头采集的图像和声卡采集的声音(貌似很啰嗦哈)通过T
2011-06-20 08:21:00 675
转载 linux读写文件速度测试
一. 文件一次读入速度linux下读文件这东西最后都是要通过系统调用sys_read(fd,buf,count)来实现的,所以如果要提高速度,就是最简单地调用sys_read的封装,比如直接用read()或fread()。下面是我在linux下的几个测试。首先创建一个130M数据文件 dd if=/dev/zero of=data bs=1024k count=130[dd if=/d
2011-06-17 14:28:00 1790 2
转载 DAVINCI DM6446 开发攻略——V4L2视频驱动和应用分析
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://zjbintsystem.blog.51cto.com/964211/4647292010年即将过去,有很多感慨需要总结一下,自从2010年1月份开始着手写DM6446开发攻略以来,得到很多网友和客户对本人博客的支持,同时结识一些有诚意的客户,他们对本人和我们团队的认可,在这里
2011-06-17 13:23:00 1330
转载 基于Linux视频驱动接口V4L2视频采集编程
视频采集基本步骤流程如下: 打开视频设备,设置视频设备属性及采集方式、视频数据处理,关闭视频设备,如下图所示: 一、打开视频设备打开视频设备非常简单,在V4L2中,视频设备被看做一个文件。使用open函数打开这个设备:1. 用非阻塞模式打开摄像头设备int cameraFd;cameraFd = open("/dev/video0", O_RDWR | O_N
2011-06-17 13:22:00 759
转载 linux 中解析命令行参数 (getopt_long用法)
getopt_long支持长选项的命令行解析,使用man getopt_long,得到其声明如下: #include int getopt_long(int argc, char * const argv[], const char *optstring, const struct option *longopts
2011-06-17 09:41:00 632
转载 Davinci开发心得点滴
1.1 在eclipse.org下载Eclipse IDE for Java EE Developers(目前最新版本helios,即v3.6),以及相应版本的CDT(目前最新版本7.0.0)。安装之后,通过eclipse的菜单“Window->Preferences”调出窗口后,在“General->Editors->File Associations”中,将*.bld/*.cfg/*.xdc等
2011-06-15 14:33:00 1149
转载 使用Generic Trace Support打印调试信息
使用Codec Engine开发Davinci系统,最令人头痛的莫过于调试。由于evm6446开发过程分成DSP端和GPP端,因此我们无法使用IDE下的调试工具对程序进行跟踪调试。为此,TI在Codec Engine中提供了一套名为Generic Trace Support 的模块,专门用来打印Debug信息。Generic Trace Support一览要在终端上打印DEBUG信息,很简
2011-06-14 11:26:00 749
转载 达芬奇工具链的建立(工程编译步骤DM6446)
工具链是指的Linux下对程序的编译环境。在这里通过codec_engine_1_02/examples/codecs 下的videnc_copy工程封装CCS下调试好的程序并生成videnc_copy.a64P,再通过codec_engine_1_02/examples/servers/video_copy工程把videnc_copy.a64P封装成all.x64P。最后通过encodedeco
2011-06-14 09:19:00 955
转载 达芬奇工具链的建立(工程编译步骤DM6446)
工具链是指的Linux下对程序的编译环境。在这里通过codec_engine_1_02/examples/codecs 下的videnc_copy工程封装CCS下调试好的程序并生成videnc_copy.a64P,再通过codec_engine_1_02/examples/servers/video_copy工程把videnc_copy.a64P封装成all.x64P。最后通过encodedeco
2011-06-14 09:16:00 869
转载 达芬奇工具链的建立(工程编译步骤DM6446)
工具链是指的Linux下对程序的编译环境。在这里通过codec_engine_1_02/examples/codecs 下的videnc_copy工程封装CCS下调试好的程序并生成videnc_copy.a64P,再通过codec_engine_1_02/examples/servers/video_copy工程把videnc_copy.a64P封装成all.x64P。最后通过encodedeco
2011-06-14 09:14:00 766
转载 Linux网络编程一步一步学+基础
http://blogold.chinaunix.net/u1/48325/showart_413841.html
2011-06-14 08:16:00 642
转载 codec server封装过程中的问题
http://www.61ic.com/Services/DaVinci/FAQ/201104/32758.html
2011-06-13 12:10:00 809
转载 DM365上运行jpegdec程序全记录
DM365上运行jpegdec程序记录 1. 说明DVSDK版本:dvsdk_2_10_00_17路径:ROOTDIR = /opt/dvsdk_2_10_00_17/dm365_codecs_01_00_06/packages/ti/sdo/codecs/jpegdec/源代码:$(ROOTDIR)/apps/Client/Test/Src头文件:$(ROOTDIR)/app
2011-06-10 09:53:00 2220
Linux操作系统文件系统基础知识
2010-03-22
BIOS的使用完全手册
2010-03-22
基于Quartus_II_+_ModelSim_SE的后仿真(VHDL版)\基于Quartus II + ModelSim SE的后仿真(VHDL版
2010-03-22
modelsim的库编译
2010-03-22
驱动开发windwos入门
2009-07-20
华为面试资料(总汇)
2008-12-08
端口映射原理与linux
2008-12-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人