自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

AIZHIQING86的专栏

静于浮华,立于天地

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

转载 arm-linux-gdb+gdbserver环境搭建以及远程调试

0) gdb源码下载:http://ftp.gnu.org/gnu/gdb/1) 编译arm-linux-gdb    指定交叉编译工具链的位置    export PATH=$PATH:/usr/local/arm/3.4.1/bin    开始配置和编译    $cd gdb-6.6    $./configure --target=arm-linux --prefix

2013-09-16 12:08:49 941

转载 redhat中设置环境变量PATH的方法

1.有些命令的路径没有在PATH环境变量中,可以用echo $PATH命令查询得知,添加路径到PATH环境变量的方法如下:  (如添加/sbin到PATH环境变量中)  (1)如果只想在本次开机过程中临时性的添加修改,下次开机就无效的话,可以:  输入export PATH=$PATH:/sbin  (2)如果只给当前用户永久添加,则:  在~/.bash_profile中的靠

2013-04-25 16:54:46 923

转载 linux 的system()详解

linux的system () 函数详解 system(执行shell 命令)相关函数        fork,execve,waitpid,popen表头文件        #i nclude定义函数        int system(const char * string);函数说明

2013-04-19 16:58:17 675

转载 Gamma详解

Gamma详解 在显示器应用的过程中,经常会遇到一个参数Gamma值,许多人对此了解不深,Gamma值在影像显示中到底起什么作用?我们如何设置适宜的Gamma值?在此我们转载太平洋电脑网的一篇文章,文中讲述了Gamma的概念及如何设置,希望能对大家有所帮助!一. 在哪见过、听说过Gamma?  * 还用说,Adobe Gamma  * 常听说MAC的默认

2013-04-19 10:02:55 1608

转载 YCbCr

正如几何上用坐标空间来描述坐标集合, 色彩空间用数学方式来描述颜色集合。常见的3 个基本色彩模型是  RGB , CMYK和YUV。  YCbCr 则是在世界数字组织视频标准研制过程中作为ITU - R BT1601 建议的一部分, 其实是YUV经过缩放和偏移的翻版。其中Y与YUV 中的Y含义一致, Cb , Cr 同样都指色彩, 只是在表示方法上不同而已。在YUV 家族中,

2013-04-16 18:57:56 849

转载 电视信号中的一些基本概念 (转自驱动之家)

前言  看了我们的《走近高清晰时代 High Definition揭秘》,我想大家对于HD的概念都有了大致的了解,不过我们要先从HD的憧憬中走回来,来看看更实际的东西,那就是电视视频信号的输入方式的选择。  我们前面大量地说了对于HDTV Ready电视,甚至现有的电视,通过色差信号线或者S-Video信号线,就可以获得初步的高清晰视频体验。也谈到了这些信号线配合DVD、PS2甚至显卡的优

2013-04-16 12:28:03 5271

转载 软件概要设计与详细设计的区别

概要设计与详细设计的区别    概要设计就是设计软件的结构,包括组成模块,模块的层次结构,模块的调用关系,每个模块的功能等等。同时,还要设计该项目的应用系统的总体数据结构和数据库结构,即应用系统要存储什么数据,这些数据是什么样的结构,它们之间有什么关系。     详细设计阶段就是为每个模块完成的功能进行具体的描述,要把功能描述转变为精确的、结构化的过程描述。    概要设计阶段

2013-03-26 21:35:00 1239

转载 如何阅读源代码(一)–导论

1.要养成一个习惯, 经常花时间阅读别人编写的高品质代码.2.要有选择地阅读代码, 同时, 还要有自己的目标. 您是想学习新的模式|编码风格|还是满足某些需求的方法.3.要注意并重视代码中特殊的非功能性需求, 这些需求也许会导致特殊的实现风格.4.在现有的代码上工作时, 请与作者和维护人员进行必要的协调, 以避免重复劳动或产生厌恶情绪.5.请将从开放源码软件中得到的益处看作是一项贷

2013-03-23 23:16:42 680

转载 Linux内核Socket CAN中文文档

自己在年假中空闲之余翻译的内核中Socket CAN的文档,原文地址在:http://lxr.linux.no/linux+v2.6.34/Documentation/networking/can.txt但是这篇文档没有涉及广播管理协议套接字 (SOCK_DGRAM) 的内容。另外一篇比较好的Socket CAN的英文文档是(详细介绍了广播管理协议套接字):Low

2013-03-23 00:00:05 1288

转载 基于MCP2515的Linux CAN总线驱动程序设计(一)

1.前言CAN(Controller Area Network)总线,即控制器局域网总线,是一种有效支持分布式控制或实时控制的串行通信网络。由于其高性能、高可靠性、及独特的设计和适宜的价格而广泛应用于工业现场控制、智能楼宇、医疗器械、交通工具以及传感器等领域,并已被公认为几种最有前途的现场总线之一。CAN总线规范已经被国际标准化组织制订为国际标准ISO11898,并得到了众多半导体器件厂商的支

2013-03-19 22:52:21 1575

转载 基于MCP2515的Linux CAN总线驱动程序设计(二)

作者:李昕,华清远见嵌入式学院讲师。1.前言CAN(Controller Area Network)总线,即控制器局域网总线,是一种有效支持分布式控制或实时控制的串行通信网络。由于其高性能、高可靠性、及独特的设计和适宜的价格而广泛应用于工业现场控制、智能楼宇、医疗器械、交通工具以及传感器等领域,并已被公认为几种最有前途的现场总线之一。CAN总线规范已经被国际标准化组织制订为国际标准ISO1

2013-03-19 22:49:37 1465

转载 指针应用中*的使用

大家可能一看标题就觉得这有什么,不就是间接访问吗!实则不然,如果说都理解为间接访问,很多用法都没法解释,下面我们以实际例子来说明*的用法。1. #include         2. int main(void)        3. {        4. char a = 0;        5. char *p = &a;        6. char **q = &p

2013-03-19 22:46:30 884

转载 基于MCP2515的Linux CAN总线驱动程序设计(三)

作者:李昕,华清远见嵌入式学院讲师。1.前言CAN(Controller Area Network)总线,即控制器局域网总线,是一种有效支持分布式控制或实时控制的串行通信网络。由于其高性能、高可靠性、及独特的设计和适宜的价格而广泛应用于工业现场控制、智能楼宇、医疗器械、交通工具以及传感器等领域,并已被公认为几种最有前途的现场总线之一。CAN总线规范已经被国际标准化组织制订为国际标准ISO1

2013-03-19 22:42:39 3081

转载 嵌入式linux文件系统简介

嵌入式Linux文件系统简介Linux支持多种文件系统,包括ext2、ext3、vfat、ntfs、iso9660、jffs、romfs和nfs等,为了对各类文件系统进行统一管理,Linux引入了虚拟文件系统VFS(Virtual File System),为各类文件系统提供一个统一的操作界面和应用编程接口。    Linux下的文件系统结构如下:    Lin

2013-03-17 14:37:18 972

转载 ubifs文件系统简介

UBIFS文件系统简介(转)一、 UBIFS 简介由IBM、nokia工程师Thomas Gleixner,Artem Bityutskiy等人于2006年发起,致力于开发性能卓越、扩展性高的FLASH专用文件系统,以解决当前嵌入式环境下以FLASH作为MTD设备使用时的技术瓶颈,开发背景: FLASH特性:FLASH是一类电可擦出可编程存储体,在使用方式上与硬

2013-03-17 14:36:27 989

转载 UBI文件系统

UBI文件系统 作者:刘洪涛,华清远见嵌入式学院金牌讲师。 在linux-2.6.27以前,谈到Flash文件系统,大家很多时候多会想到cramfs、jffs2、yaffs2等文件系统。它们也都是基于文件系统+mtd+flash设备的架构。linux-2.6.27后,内核加入了一种新型的flash文件系统UBI(Unsorted Block Images)。这里简单介绍下UBI文件系统加入

2013-03-17 10:19:33 1574

转载 c语言全局变量和局部变量问题汇总

1、局部变量能否和全局变量重名?答:能,局部会屏蔽全局。要用全局变量,需要使用"::"局部变量可以与全局变量同名,在函数内引用这个变量时,会用到同名的局部变量,而不会用到全局变量。对于有些编译器而言,在同一个函数内可以定义多个同名的局部变量,比如在两个循环体内都定义一个同名的局部变量,而那个局部变量的作用域就在那个循环体内。2、如何引用一个已经定义过的全局变量?答:extern

2013-03-14 11:54:49 1037

转载 嵌入式系统的开发流程

嵌入式系统的概念:以应用为中心,以计算机技术为基础,且软硬件可裁减,适应应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。嵌入式系统与普通PC机的对比:软件上的对比:名称嵌入式系统PC引导代码Bootloader引导,针对不同电路进行移植主板的BIOS引导,无须改动

2013-03-10 09:21:35 1038

转载 source insight的配置

source insight代码对齐Tab键终极版以前也写过一个source insight代码对齐,由于自己理解不够深刻,只能解决部分问题,不能根治在source insight中对齐的代码在XXX编辑器中全乱了的问题。在改变字体为Courier New字体后,代码无法对齐的主要原因就是Tab与空格的问题。在很多大公司如华为已经禁止在代码中使用Tab来对齐了,

2013-02-19 09:39:46 5666

转载 环形缓存区bufferC语言实现

环形缓存区bufferC语言实现消息队列锁调用太频繁的问题算是解决了,另一个让人有些苦恼的大概是这太多的内存分配和释放操作了。频繁的内存分配不但增加了系统开销,更使得内存碎片不断增多,非常不利于我们的服务器长期稳定运行。也许我们可以使用内存池,比如SGI STL中附带的小内存分配器。但是对于这种按照严格的先进先出顺序处理的,块大小并不算小的,而且块大小也并不统一的内存分配情况来说,更多使用的是

2013-02-05 10:03:37 27045

转载 linux qt 隐藏鼠标 热拔插 USB 鼠标 指针

网上搜索“qt 隐藏鼠标”,大概有以下几种方法,总结一下:1.编译Qt库的时候添加编译选项QT_NO_CURSOR,这样cursor相关的代码统统不会被编译进去,自然鼠标光标也不会出现在程序中。这样是彻底不能使用鼠标了,很不方便调试,产品开发阶段、维护,使用鼠标可带来极大方便。所以此方法只适合简单界面应用,根本不需要鼠标产品。2.只希望在某个QWidget下不出现鼠

2013-01-27 07:53:36 1415

转载 去掉 embedded LINUX 开机光标以及设置 启动LOGO

一.去除embedded linux 的开机光标: 在内核的当前目录进入到drivers/video/console/fbcon.c 文件 将static void fb_flashcursor(void *private)   和static void fbcon_cursor(struct vc_data *vc, int mode) 里的内容注释掉,使之变成空函数

2013-01-27 07:46:56 1877

转载 Linux对I/O端口资源的管理

Linux对I/O端口资源的管理摘要  本文主要从内核实现的角度分析Linux 2.4.0内核IO子系统中对IO端口资源的管理的实现原理。本文是为那些想要深入分析Linux的IO子系统的读者和设备驱动程序开发人员而写的。(2002-10-08 14:14:05)By 阿开  Copyright © 2002 by 詹荣开  E-mail:[email protected]

2013-01-23 23:18:08 934

转载 数组指针和指针数组的区别

数组指针(也称行指针)定义 int (*p)[n];()优先级高,首先说明p是一个指针,指向一个整型的一维数组,这个一维数组的长度是n,也可以说是p的步长。也就是说执行p+1时,p要跨过n个整型数据的长度。如要将二维数组赋给一指针,应这样赋值:int a[3][4];int (*p)[4]; //该语句是定义一个数组指针,指向含4个元素的一维数组。 p=a;

2013-01-01 20:01:10 341

转载 u-boot链接分析

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

2012-12-23 17:07:58 333

转载 ARM链接器(一):链接的一般概念

ARM链接器可以把编译(或汇编)生成的多个目标文件和所需要的多个库文件链接在一起,生成可执行的ELF格式的输出文件。在链接过程中,如果在链接器的输入文件中同时包含ARM代码和Thumb代码,链接器可以自动为实现不同代码之间的链接生成一个veneer文件。该文件用来帮助目标处理器实现两种不同状态之间的转换,并可以实现长跳转。链接器还可以为指令代码段和或数据段指定在目标存储器中的位置。1  链

2012-12-23 16:59:06 785

转载 adr和ldr的区别

其实这两个都是伪指令:adr是小范围的地址读取伪指令,ldr是大范围的读取地址伪指令。可实际上adr是将基于PC相对偏移的地址值或基于寄存器相对地址值读取的为指令,而ldr用于加载32为立即数或一个地址到指定的寄存器中。到这儿就会看到其中的区别了。如果在程序中想加载某个函数或者某个在联接时候指定的地址时请使用adr,例如在lds中需要重新定位的地址。当加载32为的立即数或外部地址时请用ldr。

2012-12-23 16:24:37 659

转载 Linux下网络编程入门

什么是Socket   Socket接口是TCP/IP网络的API,Socket接口定义了许多函数或例程,程序员可以用它们来开发TCP/IP网络上的应用程序。要学Internet上的TCP/IP网络编程,必须理解Socket接口。  Socket接口设计者最先是将接口放在Unix操作系统里面的。如果了解Unix系统的输入和输出的话,就很容易了解Socket了。网络的 Socket数据传

2012-12-21 23:01:22 466

转载 Linux内核链表的研究与应用

前言:在Linux内核中使用了大量的链表来组织其数据,其采用了双向链表作为其基本的数据结构。但是与我们传统的数据结构中所学的双向链表又有着本质的一些不同(其不包含数据域)。其主要是Linux内核链表在设计时给出了一种抽象的定义。采用这种定义有以下两种好处:1是可扩展性,2是封装。可扩展性肯定是必须的,内核一直都是在发展中的,所以代码都不能写成死代码,要方便修改和追加。将链表常见的操作都进行

2012-12-19 22:43:53 386

转载 linux驱动模型开发2——linux platfoem总线机制讲解与实例开发

1、概述:通常在Linux中,把SoC系统中集成的独立外设单元(如:I2C、IIS、RTC、看门狗等)都被当作平台设备来处理。从Linux2.6起,引入了一套新的驱动管理和注册机制:Platform_device和Platform_driver,来管理相应设备。Linux中大部分的设备驱动,都可以使用这套机制,设备用platform_device表示,驱动用platform

2012-12-19 22:40:02 367

转载 list_head 内核

list_head 内核本文详细分析了 2.6.x 内核中链表结构的实现,并通过实例对每个链表操作接口进行了详尽的讲解。一、链表数据结构简介链表是一种常用的组织有序数据的数据结构,它通过指针将一系列数据节点连接成一条数据链,是线性表的一种重要实现方式。相对于数组,链表具有更好的动态性,建立链表时无需预先知道数据总量,可以随机分配空间,可以高效地在链表中的任意位置

2012-12-16 22:10:39 447

转载 Linux内核 container_of 宏和 offsetof 宏分析

1、#define offsetof(TYPE, MEMBER) ((size_t) & ((TYPE *)0)->MEMBER )宏功能:获得一个结构体变量成员在此结构体中的偏移量。1. ( (TYPE *)0 ) 将零转型为TYPE类型指针;2. ((TYPE *)0)->MEMBER 访问结构中的数据成员;3. &( ( (TYPE *

2012-12-16 15:44:50 358

转载 字符编码笔记:ASCII,Unicode和UTF-8(转)

今天中午,打印机的中文老打不出来,估计是编码转换不对,于是先上网查了两篇资料,转载在此:Unicode和UTF-8之间的关系:1. ASCII码我们知道,在计算机内部,所有的信息最终都表示为一个二进制的字符串。每一个二进制位(bit)有0和1两种状态,因此八个二进制位就可以组合出256种状态,这被称为一个字节(byte)。也就是说,一个字节一共可以用来表示256种不同的状态,每

2012-12-16 15:32:51 448

转载 typeof在linux中妙用

今天偶然又看到了typeof这个东西,只知道它大概是返回变量的类型,后来上网查了下发现这个关键字在linux中用的非常多, 这里大概叙述了typeof是一个什么东西,怎么用,实际上可以用简单的话来重述。如果你对sizeof很熟悉的话,那么大可进行类推,sizeof(exp.)返回的是exp.的数据类型大小,那么typeof(exp.)返回的就是exp.的数据类型。值得注意的是在上面的话里我们可以看

2012-12-16 15:28:51 419

转载 LED Driver 筆記(翻来的)

想了解 linux kernel 2.6.24.3 中 Driver 的實做,所以先從看起來比較簡單的 LED driver 來開始研究。 S3c2440 LED GPIO: 紅:GPBDAT4 藍:GPBDAT1 綠:GPBDAT10 menuconfig 設定: Device Drivers ---> [*] LED Support ---> LED

2012-12-16 12:23:26 574

转载 linux/compiler.h 内核内一些关键词的定义

所有的内核代码,基本都包含了linux\compile.h这个文件,所以它是基础,打算先分析这个文件里的代码看看,有空再分析分析其它的代码。#ifndef __LINUX_COMPILER_H#define __LINUX_COMPILER_H#ifndef __ASSEMBLY__       首先印入眼帘的是对__ASSEMBLY__这个宏的判断,这个变量实际是在编译汇编代

2012-12-15 21:51:41 622

转载 Linux设备驱动模型——设备

The Basic Device Structure~~~~~~~~~~~~~~~~~~~~~~~~~~struct device {        struct list_head g_list;        struct list_head node;        struct list_head bus_list;        struct list_head

2012-12-15 16:27:12 409

转载 Linux platform驱动模型分析

linux platform 驱动模型分析  一。 概述  platform设备和驱动与linux设备模型密切相关。platform在linux设备模型中,其实就是一种虚拟总线没有对应的硬件结构。它的主要作用就是管理系统的外设资源,比如io内存,中断信号线。现在大多数处理器芯片都是soc,如s3c2440,它包括处理器内核(arm920t)和系统的外设(lcd接口,nandflash接

2012-12-15 15:49:25 435

转载 详解SPI中的极性CPOL和相位CPHA

详解SPI中的极性CPOL和相位CPHA           SPI由于接口相对简单(只需要4根线),用途算是比较广泛,主要应用在 EEPROM,FLASH,实时时钟,AD转换器,还有数字信号处理器和数字信号解码器之间。即一个SPI的Master通过SPI与一个从设备,即上述的那些Flash,ADC等,进行通讯。而主从设备之间通过SPI进行通讯,首先要保证两者之间时钟SCLK要一致,互相要商量

2012-12-15 10:24:29 805 1

转载 linux驱动学习笔记(linux驱动头文件说明)

#include 是在linux-2.6.29/include/linux下面寻找源文件。#include 是在linux-2.6.29/arch/arm/include/asm下面寻找源文件。#include 是在linux-2.6.29/arch/arm/mach-s3c2410/include/mach下面寻找源文件。#include在linux-2.6.31_TX2440

2012-12-13 23:28:04 656

android底层开发流程_从linux驱动到APK调用_图文详解

Android apk 是如何调用Linux底层驱动

2015-08-20

ICC avr 使用教程

ICC 编辑器使用介绍,详细的介绍了AVR下使用C语言的一些规则。

2012-12-02

QT_creator教程

QT_creator开发资料 一些入门的QT_CREATOR开发列子。

2012-04-17

TX2440 UBOOT移植手册

tx2440 uboot的详细移植书册 该手册是整理了一位网友的博客。再次深表感谢!

2011-10-12

空空如也

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

TA关注的人

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