自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(63)
  • 资源 (1)
  • 收藏
  • 关注

转载 用Crosstool工具构建交叉工具链--2

打开crosstool-0.43目录下的arm9.dat文件,内容如下: KERNELCONFIG=`pwd`/arm.configTARGET=arm-unknown-linux-gnuTARGET_CFLAGS="-O"这个文件一般用于设置一些变量,一般不用改,用默认即可!不过倒是可以将arm-unknown-linux-gnu改成arm-linux,到时候敲命令的时候也短些,所以

2009-12-14 14:22:00 707 1

转载 用Crosstool工具构建交叉工具链 --1

      Crosstool 是一组脚本工具集,可构建和测试不同版本的gcc和glibc,用于那些支持glibc的体系结构。它也是一个开源项目,下载地址是http: //kegel.com/crosstool。用Crosstool构建交叉工具链要比上述的分步编译容易得多,并且也方便许多,对于仅仅为了工作需要构建交叉编译工具链的读者建议使用此方法。用Crosstool工具构建所需资源如表2.2所示

2009-12-14 11:28:00 867

转载 标准的文件读过程(read)

1、准备工作。通过VFS层,及一些初始化操作,为真正的读操作做准备。首先是用户进程通过read系统调用发出一个读请求:文件/fs/read_write.casmlinkage ssize_t sys_read(unsigned int fd, char __user * buf, size_t count){    struct file *file;    ssize_t ret = -EBAD

2009-12-09 12:28:00 2129 2

转载 linux 2.4和linux2.6 Makefile

从 2.4 到 2.6,Linux 内核在可装载模块机制、设备模型、一些核心 API 等方面发生较大改变,设备驱动开发人员面临着将驱动从 2.4 移植到 2.6 内核,或是使驱动同时支持2.4 与 2.6 内核的任务。站在设备驱动开发人员的角度,驱动由一个或几个外部可加载内核模块组成,本文针对 2.6 内核里模块机制的改变对编写设备驱动程序的影响,从内核模块的编译、装载时的版本检查、初始化与退出、

2009-12-09 12:23:00 1071

转载 从 2.4 到 2.6:Linux 内核可装载模块机制的改变对设备驱动的影响

从 2.4 到 2.6,Linux 内核在可装载模块机制、设备模型、一些核心 API 等方面发生较大改变,设备驱动开发人员面临着将驱动从 2.4 移植到 2.6 内核,或是使驱动同时支持2.4 与 2.6 内核的任务。站在设备驱动开发人员的角度,驱动由一个或几个外部可加载内核模块组成,本文针对 2.6 内核里模块机制的改变对编写设备驱动程序的影响,从内核模块的编译、装载时的版本检查、初始化与退出、

2009-12-08 19:37:00 305

转载 2009年网络最具代表性的”36个汉字”

2009年网络最具代表性的”36个汉字”1.春——信春哥,不挂科;信春哥,考本科;信春哥,原地复活!2.郁——如果哪天不郁闷,就是天堂~3.黑——09年新疆黑网,go-vern-mentB社会化愈演愈烈(石首、邓玉娇、上海钓鱼,...),重庆打黑而群众依然不明真相,污染加剧,加上作为象征的500年一次的日食,所以09年度的汉字是黑!4.哀——为7.5事件中的死难者默哀为各次矿难中的死难者默哀!5.

2009-12-06 15:11:00 165

转载 sizeof结构体和含位域的结构体

一:sizeof进行结构体大小的判断typedef struct{    int a;    char b;}A_t;typedef struct{    int a;    char b;    char c;}B_t;typedef struct{    char a;    int b;    char c;}C_t;void main(){    char*a=0;    co

2009-12-06 14:58:00 2113

原创 rtc hwclock 使用

Linux机器上的时间比较复杂,有各式各样的时钟和选项等等。一:机器里有两个时钟:硬件时钟和系统时钟硬件时钟从根本上讲是CMOS时钟;系统时钟是由内核维护的,它是从1969年末(即传说中的标志Unix时代开端的那个拂晓)开始算起的累积秒数。在DOS或Mac系统中,起作用的是硬件时钟。遗憾的是,你可能已经发现了,绝大多数电脑时钟都是很不准确的。它们从根本上讲是由小

2009-08-19 19:12:00 4133

转载 H.264与MPEG4区别

压缩方式是DVR的核心技术,压缩方式很大程度上决定着图像的质量、压缩比、传输效率、传输速度等性能,它是评价DVR性能优劣的重要一环。 随着多媒体技术的发展,相继推出了许多压缩编码标准,目前主要有JPEG/M-JPEG、H.261/H.263和MPEG等标准。   1、JPEG/M-JPEG  ①、JPEG是一种静止图像的压缩标准,它是一种标准的帧内压缩编码方式。当硬件处理速度足够快

2009-07-23 11:32:00 1423

转载 H.264,x264,DivX,Xvid

H.264    H.264是由国际电信联盟(ITU-T)所制定的新一代的视频压缩格式。H.264最具价值的部分无疑是更高的数据压缩比。在同等的图像质量条件下,H.264的数据压缩比能比当前DVD系统中使用的 MPEG-2高2-3倍,比MPEG-4高1.5-2倍。正因为如此,经过H.264压缩的视频数据,在网络传输过程中所需要的带宽更少,也更加经济。在 MPEG-2需要6Mbps的传输速率匹配

2009-07-14 11:10:00 2982 1

转载 码率、帧率,what mean?

码率、帧率,what mean?  以前没有接触视频这一块,对视频这一方面的知识不是很了解。现在了解一下码率和帧率的问题。      码率就是数据传输时单位时间传送的数据位数,一般我们用的单位是kbps即千位每秒。通俗一点的理解就是取样率,单位时间内取样率越大,精度就越高,处理出来的文件就越接近原始文件,但是文件体积与取样率是成正比的,所以几乎所有的编码格式重视的都是如何用最低的码率达到最

2009-07-14 11:09:00 670

原创 mplayer移植和mencoder使用

一:mplayer 和 mencoder介绍    MPlayer       是一个电影播放器,它可以在很多系统上运行.它原生支持播放MPEG/VOB,AVI,Ogg/OGM,VIVO,ASF/WMA/WMV,QT/MOV/MP4,RealMedia,Matroska,NUT,NuppelVideo,FLI,YUV4MPEG,FILM,RoQ,PVA文件,也支持Win32的编码解

2009-07-11 16:21:00 4046

转载 Linux configure 参数解释

Linux环境下的软件安装,并不是一件容易的事情;如果通过源代码编译后在安装,当然事情就更为复杂一些;现在安装各种软件的教程都非常普遍;但万变不离其中,对基础知识的扎实掌握,安装各种软件的问题就迎刃而解了。Configure脚本配置工具就是基础之一,它是autoconf的工具的基本应用。    与一些技巧相比,Configure显得基础一些,当然使用和学习起来就显得枯燥乏味一些,当

2009-06-17 17:54:00 391

原创 gdb+gdbserver 使用

===========================================================================================cross compile==========================================================================================

2009-06-17 11:23:00 2780

原创 还是指针

1.type * [类型的限定符] 名称[=初始化器] *:指向…………的指针,也就是指向TYPE的指针。 类型限定符: const,volatile,restirct2.空指针 空指针一定要有别于其他有效的指针,因此,返回值为指针 的函数通常会使用空指针做为失败的返回值3.初始化器来初始化指针 . 一个空指针NULL . 指向相同类型的指针 . 一

2009-06-08 18:26:00 365

原创 madplay播放器移植

madplay播放器移植,libmad是定点运算的。播放很流畅。如果采用madplay,需要libmad, libid3tag, zlib等。step to compile madplay  0.set environment   export PATH=/opt/gcc-3.3.6-glibc-2.3.6/bin:$PATH 1

2009-06-02 16:29:00 555

原创 cq8401-spi-sc16IS751 驱动分析

1. 工作原理  CQ8401 spi总线(master)通过两个SC16IS752芯片(slave),外扩232,GPS,485,422;一块SC16IS752芯片最多只能扩两个设备。  涉及到的知识:SPI协议(参考网上资料有很多),UART工作原理(参考设备驱动)。  1.1原理图:    

2009-05-19 21:02:00 2149 1

原创 i2s cs42l51 驱动分析

1.   工作原理    I2S有5根线,每根线的作用和使用请驱动开发人员参考 《设备驱动程序开发详解》,《嵌入式系统接口设计与LINUX驱动程序开发》,CQ8401 datesheet,相关章节。而且要完成该驱动需要具备DMA,i2s,i2c等相关知识。 1.1  原理理解    CQ8401 i2s 于 codec cs42l51 连接如图: 上图说明如下:    图左边是CQ8401内部集成

2009-05-19 20:55:00 5296

转载 Linux内核编译 CONFIG_MODVERSIONS 作用

    前2天在编译2.6.28 一个驱动模块的时候,报错误:unresloved symbol,后来发现是CONFIG_MODVERSIONS错误。    在晚上查阅资料发现:     linux 内核里面有很多export给其他模块使用的符号表;一般情况下,如果没有选择CONFIG_MODVERSIONS,这些符号是正常的字串;如果选择了CONFIG_MODVERSIO

2009-05-19 20:46:00 1371

原创 如何判度你的机器是32位的还是16位的

#include #include main(){#if 0    int i=~0;    if(i>65536)        printf("32bit machine/n");    else         printf("16bit machine/n");#endif    if(sizeof(int)==4)        printf("32bit machine/n");  

2009-04-27 16:36:00 880 2

原创 container_of 理解

问题:如何通过结构中的某个变量获取结构本身的指针???关于container_of见kernel.h中:/*** container_of - cast a member of a structure out to the containing structure* @ptr:     the pointer to the member.* @type:     the type of the c

2009-04-20 10:49:00 41219 42

原创 ubuntu-810 重装系统

     今天重装系统,结合需要安装的包,记录如下:1.网络配置    Gnome Network Manager好像有一些bug,你手动设置了静态IP后,当系统重启后又回到了DHCP设置。下面这个步骤是移除Gnome Network Manager,手动配置必需的文件来设置静态IPStep 1 –首先移除Gnome Network Manager,因为如果你不移除,当系统重启后,会覆盖你的刚刚的

2009-04-10 19:14:00 636

原创 spi 学习

      对于SPI,感觉熟悉协议比较重要,SPI总线可以配置成单主单从,单主多从,互为主从。以下网页比较简单的介绍了该协议。http://www.dzkf.cn/html/zonghejishu/2007/0829/2544.html     简单的,对主极端来说,发送数据的同时也在从slave接受数据,比如说:MCU上升沿发送,下降沿接收。下面就以同事写的spi_eeprom.c(spi 读

2009-03-05 17:34:00 1102

转载 atoi 和itoa用法

 1.itoa  在linux下没有itoa这个函数         原型:char  *itoa(int   value,char   *string,int   radix)                   用法:#include                 功能:将整数value转换成字符串存入string, radix为转换时所用基数(保存到字符串中的数据的进制基数 2 8 10

2009-03-04 16:31:00 25574 2

原创 连接字符串-sprintf

    在写程序中,有时需要用到连接2个字符串,在这里介绍一下2个函数。函数一:sprintf参考:http://oss.lzu.edu.cn/blog/article.php?tid_877.html定义如下:int sprintf( char *buffer, const char *format [, argument] ... );说明如下:sprintf是个变参函数,除了前两个参数类型固

2009-03-04 16:26:00 5676 2

转载 C语言中类型的自动转换

同一句语句或表达式如果使用了多种类型的变量和常量(类型混用),C 会自动把它们转换成同一种类型。以下是自动类型转换的基本规则:    1. 在表达式中,char 和 short 类型的值,无论有符号还是无符号,都会自动转换成 int 或者 unsignedint(如果 short 的大小和 int 一样,unsigned short 的表示范围就大于 int,在这种情况下,unsigned

2009-02-26 14:29:00 1192

原创 uart dma实现方式分析

       在做uart DMA驱动期间,前后加起来也有1个月左右的时间,总的来说比较全面的了解了uart,DMA的工作原理。在调试中,遇到了最大问题就是关于DMA操作这快的不熟悉,导致浪费了很多的时间和精力。对UART,DMA的工作原理可以看LDD3,或者设备驱动一书中也有详细介绍,uart-dma驱动的移植可以参好drivers/serial/bfin_5xx.c     UART-DMA总

2009-02-25 14:57:00 7561 2

转载 USB学习二:从USB设备插上到驱动probe调用流程分析

 http://blog.csdn.net/aaronychen/archive/2008/03/17/2192147.aspx本文将详细讲述2.6.22下的一个USB设备插上linux系统的PC后是如何一步一步调到我们的usb设备驱动的probe函数的, 我们知道我们的USB驱动的probe函数中的一个参数是interface结构, 因此一般来说,  一个USB设备中的任何一个接口都应该有对应的

2009-02-17 17:57:00 2482 1

原创 关于对字的理解

       一直以来,都对字的理解比较模糊,始终停留在学校里1个字=2个字节的理解,疏不知其实这里面 不同的处理器有不一样的等式。       在计算机的存储器中占据一个单独的地址(内存单元的编号)并作为一个单元(由多个字节组合而成)处理的一组二进制数位称为“字”(Word)。字,指的是数据字,它由若干个位或字节所组成。对计算机的运算器和内存储器来说,一个字或几个字是一个数据;对控制

2009-02-17 11:23:00 578

转载 USB学习一:uhci ohci ehci三者区别

1.uhci  ohci  ehci他们都是主机控制器的规格OHCI主要为非PC系统上以及带有SiShe ALi芯片组的PC主板上的USB芯片UHCI大多为Intel和Via主板上的USB控制器芯片。UHCI的硬件电路比OHCI简单,成本第,但驱动复杂。但他们都是由USB1.1规格的。EHCI是有Intel等几个厂商研发,兼容OHCI  UHCI 遵循USB2.0规范。USB规范都是从寄存器级别规

2009-02-17 09:16:00 15932 3

原创 bus,device,driver三者关系

bus,device,driver三者关系bus:总线作为主机和外设的连接通道,有些总线是比较规范的,形成了很多协议。如PCI,USB,1394,IIC等。任何设备都可以选择合适的总线连接到主机。当然主机也可能就是CPU本身。内存也是通过BUS连接到主机的,可内存使用的总线不是外设总线,因此和内存使用相同类型的总线的设备,谈及BUS比较含糊。一块网卡在嵌入式开发中,直接通过内存总线接入到CPU。我

2009-02-16 15:29:00 3921 1

原创 busybox 制作动态库文件系统

busybox 如何做动态文件系统        libcrypt.so.1 => /lib/libcrypt.so.1 (0x2ab04000)                                libm.so.6 => /lib/libm.so.6 (0x2ab71000)                                        libc.so.6 => /l

2009-02-12 10:51:00 2749

原创 基于busybox 1.7.0 静态库文件系统制作

   基于busybox 1.7.0 静态库文件系统制作1.mkdir rootfs2.cd rootfsmkdir bin dev etc lib proc sbin sys usr mnt tmp var3.mkdir usr/bin usr/lib usr/sbin lib/modules4.创建设备文件mknod -m 666 console c 5 1mknod -m 666 ttyS0

2009-02-10 14:13:00 1916

转载 修正串口控制台无法输入的BUG

问题:输入字符,没有回显,输入命令没有输出4020使用的串口完全兼容8250,8250调用串口顺序如下:serial8250_interrupt(串口芯片层)->seirial8250_handle_port(串口芯片层)->   receive_chars(串口芯片层)->    uart_insert_char(串口抽象层)->     tty_insert_fl

2008-12-30 11:46:00 1938

原创 mtd-utils 工具的使用

一.下载源码包。二.编译1.修改Makefile  CROSS=mipsel-linux-2.make3.将编译生成的可执行文件COPY到开发板上三.命令的使用使用命令前用cat /proc/mtd 查看一下mtdchar字符设备;或者用ls -l /dev/mtd*#cat /proc/mtddev:    size   erasesize  namemtd0: 00c00000 0002000

2008-12-25 15:53:00 24083 3

原创 uart-phy kernel-phy 分析

 1.u-boot里面对于PHY芯片的操作网卡驱动路径:cpu/mips/clx_eth.c涉及到PHY的操作在函数static int search_phy(int phy_id){        unsigned int r;        r = mii_read(phy_id, 1);        if (r!=0 && r!=0xffff)                return

2008-12-22 16:43:00 909

原创 uart启动流程,及8250.c分析

 参考:http://linux.chinaunix.net/bbs/viewthread.php?tid=1025844一.串口初始化流程在init/main.c  start_kernel()-->setup_arch()-->arch_mem_init()-->plat_mem_setup()-->clx_serial_setup()二.函数分析函数一:void __init clx_ser

2008-12-20 15:40:00 3270 1

转载 如何修改RTL8139网卡MAC 地址

 利用程序pg8139.exe1  导出文件:   在计算机中插入一块8139网卡(无须BootRom片)。利用pg8139.exe程序导出pci8139网卡中的93c64串行存储芯片的内容。   首先将8139网卡安装在主板上,开机进入系统,安装网卡的驱动程序,安装结束后重新启动机器;一定要安装网卡驱动程序,否则无法使用

2008-12-05 15:37:00 2407

原创 Ubuntu Virtualbox桥接 配置

Ubuntu Virtualbox桥接 配置1.安装Virtualbox 软件,导入镜像包,看XP 能否起来  $sudo apt-get install virtualbox2.安装必要工具$sudo apt-get install uml-utilities bridge-utils3.设置文件/dev/net/tun的读写权限chmod 0666 /dev/net/tun4.设置Virtua

2008-12-04 15:54:00 1791 1

转载 git 学习3:Git的使用技巧篇

 git & kernel notesa> Google Talk: Linus Torvalds on git   http://www.youtube.com/watch?v=4XpnKHJAok8b> Google Talk: Randal Schwartz on git   http://www.youtube.com/watch?v=8dhZ9BXQgc4b> git中文教程(写于200

2008-12-03 14:44:00 1508

spi 转 uart驱动

spi 转 uart 驱动,很全,很详细, 采用GM814x芯片,在MCU上外扩4个uart,在UART比较少的情况下,可以采用它来扩展

2009-02-24

空空如也

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

TA关注的人

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