自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

menuconfig的专栏

进军移动互联网,专注游戏开发。

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

转载 sd卡简介

SD卡在24mm×32mm×2.1mm的体积内结合了SanDisk快闪记忆卡控制与MLC(Multilevel Cell)技术和Toshiba(东芝)0.16u及0.13u的NAND技术,通过9针的接口界面与专门的驱动器相连接,不需要额外的电源来保持其上记忆的信息。而且它是一体化固体介质,没有任何移动部分,所以不用担心机械运动的损坏。

2011-05-23 14:51:00 2184

转载 linux内核定时器的用法

今天参考linux驱动开发详解,照抄了一份second的程序,用到了timer。总的来说,timer的用法还是很简单的。主要需要定义一个timer_list变量timer、先初始化timerinit_timer(&timer);

2011-05-20 10:47:00 1000

转载 SD/MMC SPI模式下命令集

1) class1,class3,class9:SPI模式不支持!2) 继SD1.1之后又推出了SD2.0,主要特性是支持更大容量。SD1.1中卡容量存放于CSD寄存器中, 而由于其规范中相关域的值较小,固最大只能表示2G地址。随着Nand容量的大大提高, SD1.1已经不适合潮流,因而推出了SD2.0。

2011-05-19 17:46:00 1667

转载 嵌入式Linux知识:S3C2440上 MMC/SD卡驱动实例开发讲解(2)

从电路原理图上可以看出,SD分别使用S3C2440的复用IO端口GPE7-10作为4根数据信号线、使用 GPE6作命令信号线、使用GPE5作时钟信号线,使用复用端口GPG8的外部中断功能来作SD卡的插拔检测,使用GPH8端口来判断SD卡是否写有保 护。

2011-05-19 10:03:00 1569

转载 嵌入式Linux知识:S3C2440上 MMC/SD卡驱动实例开发讲解(1)

二、MMC/SD介绍及SDI主机控制器 首先我们来理清几个概念: 1. MMC:(Multi Media Card)由西门子公司和首推CF的SanDisk于1997年推出的多媒体记忆卡标准。 2. SD:(Secure Digital Memory Card)由日本松下、东芝及美国SanDisk公司于1999年8月共同开发研制的新一代记忆卡标准,已完全兼容MMC标准。

2011-05-19 09:53:00 1383

转载 S3C2440上 MMC/SD卡驱动实例开发讲解

首先我们来理清几个概念: 1. MMC:(Multi Media Card)由西门子公司和首推CF的SanDisk于1997年推出的多媒体记忆卡标准。 2. SD:(Secure Digital Memory Card)由日本松下、东芝及美国SanDisk公司于1999年8月共同开发研制的新一代记忆卡标准,已完全兼容MMC标准。 3. SDIO:(Secure Digital Input and Output Card)安全数字输入输出卡。SDIO是在SD标 准上定义了一种外设接

2011-05-18 16:03:00 2205 3

转载 linux2.6.20 sd/mmc卡驱动学习日记4(基于s3c2440)

发现了两篇讲SD/MMC卡驱动的文章,觉得不错,转了过来,谢谢原作者文一:FROM:http://blog.chinaunix.net/u2/69999/showart_734099.html 关于linux 2.6 mmc/sd驱动 linux 2.6 中的mmc/sd驱动分为以下几方面的内容 1. sysfs 层的总线类型处理: 注册一组 mmc 类型处理函数, 标志为 "mmc"

2011-05-18 12:01:00 1180

转载 linux2.6.20 sd/mmc卡驱动学习日记3(基于s3c2440)

可见,这里也会调用mmc_detect_change。。。我们跟着前面的分析来到mmc_setup这里,此时mmc_setup调用 mmc_discover_cards。Create a mmc_card entry for each discovered card,add new card to list.同时还会调用mmc_read_switch_caps或者mmc_process_ext_csds来实现对大容量卡的支持(>4G)跟着程序的流程我们来到

2011-05-18 11:57:00 1247

转载 linux2.6.20 sd/mmc卡驱动学习日记2(基于s3c2440)

我们接着来到s3cmci.c文件s3cmci_init----->platform_driver_register(&s3cmci_driver_2440)------------>s3cmci_probe_2440----->s3cmci_probe在s3cmci_probe中主要是分配及初始化 struct mmc_host *mmc; struct s3cmci_host *host;这两个结构体。分配DMA通道,注册irq中断。以下对个别函数的

2011-05-18 10:24:00 1378

转载 linux2.6.20 sd/mmc卡驱动学习日记1(基于s3c2440)

首先,我们来看Makefile文件吧,Makefile中文件的目标文件的顺序是很重要的,因为这个会涉及到模块的依赖关系,比如说,如果这些源文件中有module_init(),则这些module_init就按在Makefile中的顺序链接进内核,之后也按照链接的顺序进行调用。根据我们的内核配置选项,将要编译进内核的文件就只有mmc.c,mmc_sysfs.c,mmc_block.c,mmc_queue.c,s3cmci.c这几个文件。其中mmc.c与mmc_queue.c主要是定义了一些其他文件中将要使用的函

2011-05-18 09:30:00 1148

转载 基于S3C2410的SD卡linux驱动工作原理

想了解SD卡的工作原理,首先需要了解的就是SD卡协议了,这个在网上可以轻松的下载到。在了解协议后,就可以看看下面的一些开发思路了。    首先看下脱离操作系统如何在S3C2410上实现SD卡的读写。过程可以分为3个大的步骤:初始化sd卡、写sd卡、读sd卡;下面的过程是我通过realview-MDK环境测试过的。

2011-05-16 17:19:00 849

转载 说说subsys_initcall

在linux内核代码里, 到处充满了subsys_initcall,这个调用是用来干吗的呢?有人回答是系统启动时候用来初始化某些系统的,具体怎么初始化的呢,说起来还是有点复杂。在linux/init.h里,有这样一段代码:#define pure_initcall(fn) __define_initcall("0",fn,1)#define core_initcall(fn) __define_initcall("1",fn,1)

2011-05-13 17:05:00 626

转载 SD卡接口的完整规范(三)

直流特性  完全最大值评估  最大值评估指即使在瞬间也不能超出限制电压。当你在归定的最大值评估范围内使用该产品,不会出现永久性损坏。但是这并不能保证正常的逻辑操作。

2011-05-11 14:45:00 1455

转载 SD卡接口的完整规范(二)

回复从该CMD线上串行传输。一个命令是对之前命令的回答。回复可以来自单机或所有卡。  DAT0~3:数据可以从卡传向主机或副versa。数据通过数据线传输。

2011-05-11 14:44:00 1352

转载 SD卡接口的完整规范(一)

  ◎ 兼容规范版本1.01   ◎卡上错误校正    ◎支持CPRM  ◎两个可选的通信协议:SD模式和SPI模式  ◎可变时钟频率0-25MHz  ◎通信电压范围:2.0-3.6V  工作电压范围:2.0-3.6V  ◎低电压消耗:自动断电及自动睡醒,智能电源管理  ◎无需额外编程电压    ◎卡片带电插拔保护  ◎正向兼容MMC卡        ◎高速串行接口带随即存取

2011-05-11 14:43:00 1495

转载 __attribute__ ((packed)) 的作用

近在看我们的代码的时候发现声明类型的时候有 __attribute__ ((packed))的结构体类型声明,不知道是什么意思,查了下知道是如下含义:1. __attribute__ ((packed)) 的作用就是告诉编译器取消结构在编译过程中的优化对齐,按照实际占用字节数进行对齐,是GCC特有的语法。这个功能是跟操作系统没关系,跟编译器有关,gcc编译器不是紧凑模式的,我在windows下,用vc的编译器也不是紧凑的,用tc的编译器就是紧凑的。例如:在TC下:struct my{ cha

2011-05-09 14:44:00 708

转载 C语言:内存字节对齐详解

一、什么是对齐,以及为什么要对齐:1. 现代计算机中内存空间都是按照byte划分的,从理论上讲似乎对任何类型的变量的访问可以从任何地址开始,但实际情况是在访问特定变量的时候经常在特定的内存地址访问,这就需要各类型数据按照一定的规则在空间上排列,而不是顺序的一个接一个的排放,这就是对齐。2. 对齐的作用和原因:各个硬件平台对存储空间的处理上有很大的不同。一些平台对某些特定类型的数据只能从某些特定地址开始存取。其他平台可能没有这种情况,但是最常见的是如果不按照适合其平台的要求对数据存放进行对齐,

2011-05-09 14:07:00 662

smartsvn for mac

SmartSVN是一个功能多且易于使用的Subversion 客户端,可运行在Linux、Mac OS X、OS/2、Unix以及Windows。除了标准的SVN指令(例如checkout、update、commit、merge等)之外,其亦提供tag与branch处理(无需要为了转换不同的tag或branch而去处理URL)、内建档案比对与冲突处理器(conflict solver)等。使用者无需安装额外的工具来处理SVN working copies,SmartSVN用起来类似命令列SVN client或档案比对工具

2015-08-26

TexturePacker for mac

TexturePacker for mac

2015-08-26

Linux内核源代码漫游

Linux 内核源代码漫游 创建时间:2001-10-11 21时13 分<br>第 1 页 共 9 页<br>Linux内核源代码漫游<br>Alessandro Rubini 著, rubini@pop.systemy.it<br>赵炯 译,gohigh@sh163.net (www.plinux.org)<br>本章试图以顺序的方式来解释Linux 源代码,以帮助读者对源代码的体系结构以及很多<br>相关的unix 特性的实现有一个很好的理解。目标是帮助对Linux 不甚了解的有经验的C 程<br>序员对整个Linux 的设计有所了解。这也就是为什么内核漫游的入点选择为内核本身的启始<br>点:系统引导(启动)。<br>

2007-08-15

空空如也

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

TA关注的人

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