自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 Android编译系统详解(一)——build/envsetup.sh

Android编译系统详解(一)——build/envsetup.shhttp://www.cloudchou.com/android/post-134.html准备好编译环境后,编译Rom的第一步是 source build/envsetup.sh,该步骤把envsetup.sh里的函数声明为当前会话终端可用的命令。这些命令能让我们切换目录,提交代码,编译Ro

2016-07-22 09:21:00 1506

转载 用于HDMI接口的ESD保护技术

用于HDMI接口的ESD保护技术   用于HDMI接口的ESD保护技术最新的HDMI I.3(高清晰度多媒体接口1.3)标准把以前的HDMI 1.0 - 1.2标准所规定的数据传送速度提高了一倍,每对差动信号线的速度达到3.4 Gbps。由于数据传送速度这么高,要求电路板的电容小,确保信号的素质很好,这给电路板

2016-07-20 09:23:57 3166

转载 高清晰度多媒体接口, HDMI 1.4介绍

高清晰度多媒体接口, HDMI 1.4介绍FOLLO高清晰度多媒体接口(High Definition Multimedia Interface,简称HDMI)是一种全数字化视频和音频传送接口技术,采用同一条电缆就能同时传送无压缩的音频信号及视频信号,大大简化了系统的安装。 HDMI可用于DVD播放器、机顶盒、个人计算机、电视游戏机、蓝光、音响设备与数字电视。H

2016-07-19 09:28:15 6665

转载 MIPI video mode 和 command mode 的区别

MIPI video mode 和 command mode 的区别何为LCD RAM?LCD 是指字面意思是液晶显示屏(Liquid Crystal Display), 而RAM: 随机存取存储器(Random-Access Memory),两者完全是风马牛不相及的东西。下图是一个标准的LCD的爆炸图(不含TP),请注意图中红色mark的地方:控制IC-- LCD的大脑。

2016-07-14 09:38:12 851

转载 Sensor信号输出YUV、RGB、RAW DATA、JPEG 4种方式区别

简单来说,YUV: luma (Y) + chroma (UV) 格式, 一般情况下sensor支持YUV422格式,即数据格式是按Y-U-Y-V次序输出的RGB: 传统的红绿蓝格式,比如RGB565,其16-bit数据格式为5-bit R + 6-bit G + 5-bit B。G多一位,原因是人眼对绿色比较敏感。RAW RGB: sensor的每一像素对应一个彩色滤光片,滤光片按B

2016-07-14 09:22:02 3393

转载 linux makefile 教程

最近在学习Linux下的C编程,买了一本叫《Linux环境下的C编程指南》读到makefile就越看越迷糊,可能是我的理解能不行。            于是google到了以下这篇文章。通俗易懂。然后把它贴出来,方便学习。           后记,看完发现这篇文章和《Linux环境下的C编程指南》的makefile一章所讲述的惊人的相似,只是这篇文章从一个实例切入,在有些地方比

2016-07-08 17:49:51 415

转载 I/O空间-----I/O端口和I/O内存

首先上图,如下:外设中的寄存器被称为I/O端口,外设中的内存被称为I/O内存。二者合起来统称为I/O空间。    设备驱动程序要直接访问外设或其接口卡上的物理电路,这部分通常都是以寄存器的形式出现。外设寄存器称为I/O端口,通常包括:控制寄存器、状态寄存器和数据寄存器三大类。根据访问外设寄存器的不同方式,可以把 CPU分成两大类。  一类CPU(如M68K,Power PC

2016-07-05 17:57:46 1987

原创 critical sections 临界区(危险区)

解决竞态问题的途径是保证对共享资源的互斥访问,所谓互斥访问是指一个执行单元在访问共享资源的时候,其他的执行单元被禁止访问。访问共享资源的代码区域称为临界区(critical sections),临界区需要以某种互斥机制加以保护。中断屏蔽、原子操作、自旋锁和信号量等是Linux 设备驱动中可采用的互斥途径.1.中断屏蔽在单 CPU范围内避免竞态的一种简单方法是在进入临界区

2016-07-05 15:37:57 1104

原创 字符设备操作

file_operations 结构体中成员函数是字符设备驱动与内核的接口,是用户空间对Linux 进行系统调用最终的落实者。大多数字符设备驱动会实现read()、write()和ioctl()函数.字符设备驱动读、写、I/O控制函数模板1 /* 读设备*/2 ssize_t xxx_read(struct file *filp, char _ _user *buf, size_t

2016-07-05 14:44:32 427

转载 Linux文件系统

进入Linux 根目录(即“/”,Linux 文件系统的入口,也是处于最高一级的目录),运行“ls –l”命1./bin包含基本命令,如ls、cp、mkdir 等,这个目录中的文件都是可执行的。2./bootLinux 系统的内核及引导系统程序所需要的文件,如vmlinuz、initrd.img 文件都位于这个目录中。3./dev设备文件存储

2016-07-05 14:03:52 195

转载 linux 模块编译

模板编写一个简单的Makefile,如下所示:obj-m := hello.o并使用如下命令编译Hello World模块,如下所示:make -C /usr/src/linux-2.6.15.5/ M=/driver_study/ modules如果当前处于模块所在的目录,则以下命令与上述命令同等:make –C /usr/src/linux-2.6.

2016-07-05 11:44:18 274

转载 设备文件系统

一.devfs 设备文件系统(过时的系统).主要特点如下:1.可以通过程序在设备初始化时在/dev目录下创建设备文件,卸载设备时将它删除。2. 设备驱动程序可以指定设备名、所有者和权限位,用户空间程序仍可以修改所有者和权限位。3. 不再需要为设备驱动程序分配主设备号以及处理次设备号,在程序中可以直接给register_chrdev()传递0 主设备号以动态获得可用的

2016-07-03 17:23:28 273

原创 Linux 内核模块主要组成部分

一个Linux 内核模块主要由以下几个部分组成。1.模块加载函数(必须)。当通过 insmod或modprobe命令加载内核模块时,模块的加载函数会自动被内核     insert module insmod执行,完成本模块的相关初始化工作。2.模块卸载函数(必须)。当通过 rmmod命令卸载某模块时,模块的卸载函数会自动被内核执行,完成与模     rem

2016-07-01 21:07:05 2032

转载 C++ 怎么自己创建头文件

方法一:#includestdio.h>这种带了引号的通常是编译系统自带的头文件,而用户也可以自己定义头文件#include "abc.h"这种带了引号的就是你自己定义的头文件如何建立头文件:以microsoft visual c++ 6.0为例,打开工作间后依次选择“文件”、“新建”在弹出的窗口选择“文件”选项卡之下的“C/C++ Header Fil

2016-07-01 16:20:18 26154

原创 linux设备驱动

操作系统通过给设备驱动制造麻烦来达到给上层应用提供便利的目的。如果设备驱动都按照操作系统给出的独立于设备的接口而设计,应用程序将可使用统一的系统调用接口来访问各种设备。驱动针对的对象是存储器和外设(包括CPU内部集成的存储器和外设),而不是针对CPU核。Linux 将存储器和外设分为3 个基础大类: 1.字符设备; 2. 块设备; 3. 网络设备。字

2016-07-01 15:35:50 248

转载 ARM中.c文件和.h文件区别

其实要理解C文件与头文件有什么不同之处,首先需要弄明白编译器的工作过程,一般说来编译器会做以下几个过程: 1.预处理阶段 2.词法与语法分析阶段 3.编译阶段,首先编译成纯汇编语句,再将之汇编成跟CPU相关的二进制码,生成各个目标文件 4.连接阶段,将各个目标文件中的各段代码进行绝对地址定位,生成跟特定平台相关的可执行文件,当然,最后还可以用objcopy生成纯二进制码,也就是去掉了文件格

2016-07-01 15:11:04 842

原创 设备驱动程序作用

对设备驱动最通俗的解释就是“驱使硬件设备行动”。设备驱动与底层硬件直接打交道,按照硬件设备的具体工作方式读写设备寄存器,完成设备的轮询、中断处理、DMA 通信,进行物理内存向虚拟内存的映射,最终使通信设备能够收发数据,使显示设备能够显示文字和画面,使存储设备能够记录文件和数据设备驱动充当了硬件和应用软件之间的纽带,它使得应用软件只需要调用系统软件的应用编程接口(API)就可让硬件去完成要求

2016-07-01 15:05:34 6036

转载 套接字socket

套接字(socket)一组进程间交换数据的协议,侧重于函数的定义形式,而不是具体的实现方式或者数据格式,主要是为了让C的代码可以在不同的系统上保持源代码级的兼容性。最初用在Unix系统中。套接字也有很多不同的实现版本,稍有差异,不过对于我们在windows平台上工作的人来说,Unix各种平台间的差异我们并不关心。我们现在经常把套接字用于网络通讯编程,并且通常构造在Tcp/IP协议上。在wi

2016-07-01 14:52:01 908

转载 串行设备驱动程序

1. 关注UART或其他底层串行硬件特征的底层驱动程序2. 与底层驱动程序接口的TTY驱动程序层,TTY驱动程序将上层驱动程序与各色的硬件进行隔离3. 加工用于和TTY(Teletype)驱动程序交换数据的线路规程。线路规程勾勒串行层的行为。有助于复用底层的代码来支持不同的技术。TTY(IO核心)  n_tty(/dev/ttySX(串行子系统终端) n_irda(/dev/i

2016-07-01 10:48:40 1645

转载 UDEV规则参数详细解释使用

Udev 的使用--linux系统创建设备节点 Linux 里都是以设备文件的形式存在。在早期的 Linux 版本中,/dev目录包含了所有可能出现的设备的设备文件。但因为这样 Linux 用户很难在这些大量的设备文件中找到匹配条件的设备文件。现在 udev 只为那些连接到 Linux 操作系统的设备产生设备文件。并且 udev 能通过定义一个 udev 规则 (rule) 来产生匹配设备

2016-07-01 10:01:10 8582 1

空空如也

空空如也

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

TA关注的人

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