自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 收藏
  • 关注

转载 getsockopt/setsockopt 函数说明

<br />功能描述:<br />        获取或者设置与某个套接字关联的选 项。选项可能存在于多层协议中,它们总会出现在最上面的套接字层。当操作套接字选项时,选项位于的层和选项的名称必须给出。为了操作套接字层的选项,应该 将层的值指定为SOL_SOCKET。为了操作其它层的选项,控制选项的合适协议号必须给出。例如,为了表示一个选项由TCP协议解析,层应该设定为协议 号TCP。<br /><br />用法:<br />#include <sys/types.h><br />#include <sys/

2010-10-12 20:59:00 1637

转载 select函数详解及应用

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

2010-09-26 15:53:00 1547

转载 网络socket编程指南

[精华] 网络socket编程指南http://www.chinaunix.net 作者:流浪者  发表于:2008-04-20 15:21:55【发表评论】【查看原文】【Perl讨论区】【关闭】 Beej网络socket编程指南 -------------------------------------------------------------------------------- 介绍   Socket 编程让你沮丧吗?从man pages中很难得到有用的信息吗?你想跟上时代去编Internet相

2010-09-26 15:33:00 1727

原创 浅谈linux字符设备注册

<br />Linux中有两种字符设备注册的方法:<br />这里所提到的函数在文件:fs/char_dev.c中定义,在头文件include/linux/cdev.h中声明。<br />一、             老方法:<br />如果你深入浏览 2.6 内核的大量驱动代码, 你可能注意到有许多字符驱动使用这种方法. 你见到的是还没有更新到 2.6 内核接口的老代码. 因为那个代码实际上能用, 这个更新可能很长时间不会发生. 不知道在我的有生之年它会不会消失.(其实我才20多岁,这样说是不是有点老哦)

2010-09-18 10:35:00 7942 2

原创 gpio button driver

<br />今天心情不错,听着歌,喝着铁观音,就把这两天做的事情写一下下。<br /> <br />平台:davinci dm6441,linux2.6.18<br /> <br />我们在板子上焊了一个按键,是和gpio41连接的,当然需要驱动咯,于是我就做了一个,但是没有去抖动,因为我这个应用不需要去抖动,公司催得紧,所以尽快完成,功能是<br />按下按键4s后重置系统的ip。<br /> <br />/* drivers/char/davinci_dm644x_button.c*/<br /> <b

2010-09-17 22:34:00 2885

转载 达芬奇编解码引擎Codec Engin

<br />达芬奇编解码引擎Codec Engin<br /> <br />DaVinci是DSP和ARM双核架构的SOC芯片,例如TI's DM6446,但是也有精简的系统只包括ARM,没有DSP(像DM3**serials)。对芯片与外界的交互通过ARM端的Montavista Linux和相关驱动与应用程序来管理,DSP端只处理编解码相关的算法。DSP和ARM之间的通讯和交互是通过引擎(Engine)和服务器(Server)来完成的。<br />1. 编解码引擎(Codec Engine)<br />

2010-09-14 10:18:00 2059

转载 Davinci DM6446开发攻略——LINUX GPIO驱动源码移植

<br />一、             DM6446 GPIO的介绍     说到LINUX 驱动移植,没有移植过的朋友,或刚刚进入LINUX领域的朋友,最好去看看《LINUX 设备驱动程序》第三版,有个理论或感性的认识。该版本是基于2.6.10的基础上描述的,经典读物,网上有电子版,但是建议花几十元买本书是值得的。       GPIO是嵌入式系统最简单、最常用的资源了,比如点亮LED,控制蜂鸣器,输出高低电平,检测按键,等等。GPIO分输入和输出,在Montavista linux-2.6.18中,有

2010-09-13 15:33:00 2219

转载 linux内核模块的makefile

<br />转:<br />1. 内核模块的Makefile<br />若要编译hello的内核模块,最简单的方法就是要编写如下内容的Makefile(若对Makefile比较陌生,请参考Linux开发基础讲义):<br />-----------------------------------------------------------------------<br />ifeq ($(KERNELRELEASE),)<br />KERNELDIR ?=/usr/src/kernels/2.6.18-

2010-09-13 15:29:00 3407

原创 RT3070wifi模块的移植

上周做了一下wifi模块的移植。称周末,总结一下。平台:dm6441, ,linux2.6.18,wifi:RT3070我看wifi模块上没有写是镭凌公司的,因为公司同事是在另一个公司买的,但是当我看模块的驱动手册时,看到了驱动模块是rt3070sta.ko,狗狗一下后知道了一切。于是:下载了wifi驱动。wifi驱动是DPO_RT3070_LinuxSTA_V2[1].3.0.4_20100604.tar.bz2在镭凌的官网上可以下载到最新驱程源码。一:配置内核       Make menuconfig

2010-09-12 16:59:00 5697 1

转载 RT73 wifi无线网卡驱动移植过程

<br />转<br /> <br />移植环境:<br />       主机操作系统:Ubantu 8.10<br />       目标系统:linux-2.6.22.6<br />       交叉编译器:arm-softfloat-linux-gnu-gcc-3.4.5<br />一、RT73驱动编译<br />1、 下载RT73驱动源码<br />http://www.ralinktech.com/网站上下载2009_0713_RT73_Linux_STA_Drv1[1].1.0.3.zip<b

2010-09-09 09:37:00 4121

转载 高效学习linux驱动

转:这本《Linux内核修炼之道》已经开卖(网上的链接为: 卓越、当当、china-pub ),虽然是严肃文学,但为了保证流畅性,大部分文字我还都是斟词灼句,反复的念几遍才写上去的,尽量考虑到写上去的每段话能够让读者产生什么疑惑,然后也都会紧接着尽量的去进行解释清楚,中间的很多概念也有反复纠结过怎么解释能够更容易的理解,力求即使对于初学者也可以有很少阻碍的一气读完。同时我也把书中一部分自己的感悟抽出来整理了精华版,share出来。当然水平有限,错漏之处有发现而修订时遗漏的,也有尚没有发现的。这本书如果对您有

2010-08-29 10:22:00 2200

转载 转: 嵌入式linux下usb驱动开发方法--看完少走弯路

嵌入式linux下的usb属于所有驱动中相当复杂的一个子系统,要想将她彻底征服,至少需要个把月的时间,不信?那是你没做过。本人做过2年的嵌入式驱动开发,usb占了一大半的时间。期间走了不少弯路,下面将我的血的经验教训总结下,为要从事和正在从事的战友们做一点点贡献吧:)首先,扫盲;要做的是阅读usb Spec(英文的哦,其实很多文章、书籍和资料真有水平的还是原创的好,就像食品往往经过加工就变了味,之前如果没有接触过的话可以先看看中文的,大概先有个印象),这个工作其实是很复杂很枯燥的一部分。看Spec的同时可以

2010-08-25 18:09:00 9316 5

转载 达芬奇DM644X平台(ARM9, Linux-2.6.10)BSP之irq.c浅析

<br />针对该irq.c的硬件手册是SPRUE14A.pdf,可到TI的网站(www.ti.com)上下载,或直接在谷歌里搜索。<br />以下是文件irq.c的浅析。<br />/*<br /> * linux/arch/arm/mach-davinci/irq.c<br /><br /> * Interrupt handler for DaVinci boards.<br /> *<br /> * Copyright (C) 2006 Texas Instruments.<br /> *<br />

2010-08-20 15:48:00 1813

转载 从硬件入手介绍达芬奇DMSoC硬件部分及Linux OS的启动过程

<br /> 达芬奇DMSoC硬件概述<br />      如图1所示,达芬奇数字媒体片上系统(DMSoC)提供:两个内核(ARM+DSP);视频处理子系统(VPSS);多种Boot模式(NOR Flash/NAND Flash/UART0 Boot Mode);两个电源域;多个时钟树;多个引脚独立或复用的外设。  <br />图1 DM6446功能结构框图        ARM-DSP集成<br />      对于双核的达芬奇架构,大家最关心的就是两个核之间的资源分配、通信方式及如何高效地实现资源共享

2010-08-20 15:42:00 2748

转载 达芬奇DM644X平台(ARM9, Linux-2.6.10)BSP之board-evm.c浅析

<br />/*<br /> * linux/arch/arm/mach-davinci/board-evm.c<br /> *<br /> * TI DaVinci EVM board<br /> *<br /> * Copyright (C) 2006 Texas Instruments.<br /> *<br /> * ----------------------------------------------------------------------------<br /> *<br /> *

2010-08-20 14:26:00 2504

转载 达芬奇DM644X平台(ARM9, Linux-2.6.10)BSP之gpio.c浅析

<br /> <br /> /*转载别人的文章*/<br /> 达芬奇DM644X平台(ARM9, Linux-2.6.10)BSP之gpio.c浅析 收藏 <br />-------------------------------------------- <br />--------------------------------------------<br />针对该gpio.c的硬件手册是SPRUE25.pdf,可到TI的网站(www.ti.com)上下载,或直接在谷歌里搜索。<br />以下是两

2010-08-20 14:20:00 2198

转载 Request_irq和setup_irq的区别

Linux Driver  Linux 内核提供了两个注册中断处理函数的接口:setup_irq和request_irq。这两个函数都定义在kernel/irq/manage.c里。 /* * Internal function to register an irqaction - typically used to * allocate special interrupts that are part of the architecture. */ int setup_irq(unsigned int i

2010-08-20 09:51:00 1865

原创 dm6441的 gpio驱动

<br />这是我进入嵌入式行业进公司做的第一个驱动,<br />平台:Ti   dm6441     linu2.6.18<br />GPIO是嵌入式系统最简单、最常用的资源了,比如点亮LED,控制蜂鸣器,输出高低电平,检测按键,等等。<br />由于硬件资源的原因,DM6441并不是GPIO管脚就是纯粹的GPIO脚,GPIO管脚和其他一些标准接口复用相同的引脚,<br />比如SPI和GPIO复用,I2C和GPIO复用等,到底是使用GPIO还是其他接口,在初始化的时候,都需要对PINMUX0和PINMU

2010-08-18 17:23:00 3856 1

空空如也

空空如也

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

TA关注的人

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