lovehebut 发表于 2007-12-30 12:23:03

先占个位置,以后研究一下

elefan 发表于 2007-12-30 14:35:46

void MMC_get_data_LBA(unsigned long lba, unsigned int Bytes,unsigned char *buffer)

函数先打开LBA地址,然后取数据,之后记得关闭LBA地址,否则很可能出问题。

elefan 发表于 2007-12-30 14:36:46

硬件SPI的更简单,你把两个软件SPI的程序使用硬件SPI的替换就可以了。

zqljg 发表于 2007-12-31 10:35:02

谢谢elefan的回复,不过没弄懂这句话的意思:
硬件SPI的更简单,你把两个软件SPI的程序使用硬件SPI的替换就可以了。
也祝你新年快乐!

xieqianli690 发表于 2008-1-7 20:22:58

函数很多,各位能否解释一下这些函数在main函数里怎么操作的?
这样不行啊:
main()
{
    MMC_Port_Init();
    MMC_Init();
    MMC_write_sector(0x000012,data1); //data1,data2都是512字节的数组
    MMC_read_sector(0x000012,data2);
}
读出来的全是0.
是了,我的是micro SD卡,它的读写时序与SD卡是不是相同的?

saiou3000 发表于 2008-1-24 16:51:36

谢谢!分享是一种快乐!

thriller 发表于 2008-3-12 20:52:02

1 ,奇怪,SD的datasheet上说CSD的最后一位常为1,可我手上的3张SD卡读出来的CSD最后一个字节都是0x00h,但是用这些数据算出来的卡的容量都对,想不通啊。

2 ,还有怎样判定sd卡有没有MBR?我看了datasheet后想到的是通过CSD的FILE_FORMAT 和 FILE_FIRMAT_GRP 来判定,不知道有没有更好的办法。

3 ,我用WINHEX看sd卡、u盘、我的电脑的硬盘时,发现u盘和硬盘的第一个sector 前439个字节的有很多数据,但sd卡的对应位置却全0x00,这怎么解释?

elefan、bozai两位高手指点下,谢谢。

thriller 发表于 2008-3-12 21:29:36

我读到的CSD是 00 2D 00 32 1B 59 83 D6 7E FB 80 16 40 00 E5 00


下面是WINHEX的截图,请看看这组数据对不对?


1http://cache.amobbs.com/bbs_upload782111/files_9/ourdev_229377.JPG

icertt 发表于 2008-4-1 10:46:42

楼主太好了!

xingzhang 发表于 2008-4-6 02:54:26

帖子虽久也收藏

elefan 发表于 2008-4-6 12:10:34

引用:
#start
1 ,奇怪,SD的datasheet上说CSD的最后一位常为1,可我手上的3张SD卡读出来的CSD最后一个字节都是0x00h,但是用这些数据算出来的卡的容量都对,想不通啊。

2 ,还有怎样判定sd卡有没有MBR?我看了datasheet后想到的是通过CSD的FILE_FORMAT 和 FILE_FIRMAT_GRP 来判定,不知道有没有更好的办法。

3 ,我用WINHEX看sd卡、u盘、我的电脑的硬盘时,发现u盘和硬盘的第一个sector 前439个字节的有很多数据,但sd卡的对应位置却全0x00,这怎么解释?

elefan、bozai两位高手指点下,谢谢。
#end

我是这样判断DPT的:看第一个字节是否是0xEB
         //---------------------------------------------       
        //Start to Read MBR sector
        //---------------------------------------------
        readPos=0; sectorPos=0;
        MMC_set_blocklen(128);
        MMC_Read_Sector_Bytes(0,0,128,sectorBuffer.data); //try to read 128 bytes of MBR
        if(sectorBuffer.data == 0xeb)
        { //If first byte is a instruction of JMP,no DPT.
          //---------------------------------------------
          //debug info here
          //---------------------------------------------
        }       
        else
        { MMC_set_blocklen(64);
          //skipping boot code in first 445 bytes. Read 64 bytes partition table record
          MMC_Read_Sector_Bytes(0,446,64,sectorBuffer.data);
          pr = (struct partRec *) sectorBuffer.data;
          startSector = pr->startLBA;
          readPos=0; sectorPos=0;
          MMC_set_blocklen(128);
          MMC_Read_Sector_Bytes(startSector,0,128,sectorBuffer.data); //read boot record
        }

elefan 发表于 2008-4-6 12:15:25

2. 另外你说的CSD最后一个字节是0还是1,我没有太关注。

3. 第三个问题你用WINHEX看注意看物理的第一个扇区,而不是逻辑的,否则会判断错误。硬盘有分区表,所以前面不是0。U盘一般也没有超过一个分区,除非强制分区。

elefan 发表于 2008-4-6 12:28:40

107楼的截图,应该是没有错误的,其他数据基本都对。SD新的协议我没仔细看,或许已经更新了。

capron 发表于 2008-4-10 19:11:30

留个记号,收藏,谢谢!

lionliu 发表于 2008-5-15 09:46:41

@

fxnh_yinyi 发表于 2008-5-29 21:19:33

参考楼主的程序,用bascom 模拟spi 来操作sd,现在能正确往扇区里写数据,但是读不出数据,都读不到&HFE!郁闷!

sunbody1986 发表于 2008-5-30 12:22:37

谢谢!

fxnh_yinyi 发表于 2008-5-30 21:36:01

搞定了,SD卡座接线长导致数据传输错误,早应该怀疑了,害得调了好几个晚上!谢谢楼主的共享!

chris21st 发表于 2008-7-18 15:49:35

我在用actel FPGA实现microSD卡读写的时候发现初始化时发出的命令根本没有回应,但是我用sd卡却是可行的,困惑中啊???希望大虾帮忙指点一下

fu2008 发表于 2008-7-19 11:54:46

收.

knight_avr 发表于 2008-7-19 14:29:44

mark

wswh2o 发表于 2008-8-5 17:19:14

sd卡和mmc的操作时序兼容吗

Chris_Lee 发表于 2008-8-5 19:56:59

做个记号!

pcwinner 发表于 2008-8-12 20:47:03

MARK

wangwenjia 发表于 2008-8-13 11:36:58

mark

wangwenjia 发表于 2008-8-13 11:37:07

mark

avr_appli 发表于 2008-8-13 13:33:50

mark

ahong 发表于 2008-8-31 21:54:17

学习了,一定要顶

zjsycjj 发表于 2008-9-14 23:19:26

大哥,都这么多年了,硬件SPI的呢?谢了

liqisen6 发表于 2008-11-4 15:20:00

mark

yanrz 发表于 2009-2-19 23:13:25

一群牛人!!!
佩服!!!
可惜本人没有硬件和时间!
不然也弄个玩玩!!
呵呵!

markloveyou 发表于 2009-7-14 19:10:27

收藏 谢谢了

wanghengzhi 发表于 2009-7-14 21:25:43

记号!

xczxwy 发表于 2009-7-14 21:45:53

好贴,顶一下楼主~~

liangbmw 发表于 2009-7-24 17:17:25

mark

aviator 发表于 2009-7-24 17:29:55

hao

djl310 发表于 2009-7-24 22:31:36

收藏~~~~~~~~~~~~~~~~~~~~~~

haitaoloveyou 发表于 2009-8-11 16:08:02

我都疯了 我的晶振频率都降到6M了 还是不能初始化我的2G的SD卡 但用朋友256M的卡就是上16M晶振也可顺利读写!
这是问什么啊 我用的金士顿的SD卡 是不是它的特别啊!

sinbord 发表于 2009-8-11 16:18:14

mark!

mengyubianyuan 发表于 2009-8-13 08:44:56

mark

Offer 发表于 2009-8-14 23:55:18

谢谢共享

liuweiele 发表于 2009-8-15 01:13:05

支持

liuweiele 发表于 2009-8-15 01:13:19

支持

xinjie1023 发表于 2009-8-22 17:10:25

mark

158611069 发表于 2009-12-8 23:41:18

05年就做出来啦!!牛人!

foxsports 发表于 2009-12-9 08:49:57

有机会自己玩个!!

yan_jian 发表于 2009-12-20 21:44:10

好资料,我也做个记号

DIDADI 发表于 2009-12-20 23:38:32

大家都MARK,我也MARK一个。

i387DX 发表于 2009-12-21 00:23:02

呵呵,好资料。

zenboys 发表于 2009-12-21 08:23:39

感谢楼主的奉献精神,先收藏了

czxf 发表于 2009-12-21 09:36:04

mark

halin88 发表于 2009-12-21 21:40:02

mark

Excellence 发表于 2009-12-22 09:21:34

谢谢。

whhc51 发表于 2010-3-9 10:19:43

mark.学习一下。

youz 发表于 2010-3-27 22:34:20

mark

hsztc 发表于 2010-3-27 23:08:19

记号

sino_design 发表于 2010-3-28 00:10:16

good

thinki 发表于 2010-4-1 16:27:47

顶一下

XQGG 发表于 2010-4-1 17:20:49

记号

chahu1227 发表于 2010-4-8 23:04:13

mark

zlj2008 发表于 2010-4-9 08:12:24

记号

122402902 发表于 2010-4-13 17:03:26

take a seat

dugutianma 发表于 2010-5-5 15:51:27

MARK

flyinthesky 发表于 2010-5-18 22:13:58

顶!学习!

hpdell 发表于 2010-6-5 16:53:46

不错哟!!!!!!!!!!!!!!!!!

getix 发表于 2010-6-11 00:28:30

mark

ostrich12 发表于 2010-6-11 01:15:23

hongyancl 发表于 2010-6-11 09:15:13

回复【楼主位】elefan
-----------------------------------------------------------------------

ddddddddddddddddd

dianzifanfan 发表于 2010-7-25 00:33:25

好贴

witnessiz 发表于 2010-7-25 18:16:39

好贴留名

xiaohaigui 发表于 2010-8-26 10:46:51

是呀,软件的SPI太慢了,但是硬件的好像老出问题!

moon0213 发表于 2010-9-8 18:24:55

收藏了

hongyancl 发表于 2010-9-8 18:35:25

mark

cunlingwang 发表于 2010-9-20 13:59:57

强帖留名!!!

poet_lee 发表于 2010-9-20 21:50:39

支持一下 谢谢分享

jwc_210 发表于 2010-11-13 15:09:36

mark

anning 发表于 2010-11-14 16:34:35

mark

peterlink 发表于 2010-11-14 20:31:25

Mark

sunicecream 发表于 2010-11-16 00:45:27

MARK

luojiyin 发表于 2010-11-16 08:36:05

mark

steven_sd 发表于 2010-11-16 10:13:25

顶你...

zxs2000 发表于 2010-11-16 15:20:02

学习

wdh2152 发表于 2010-11-20 16:24:33

回复【15楼】ljd166
-----------------------------------------------------------------------

大侠是用用什么调试的

wdh2152 发表于 2010-11-20 16:41:38

收藏

QQ373466062 发表于 2010-11-25 14:58:12

看看

zhouting928 发表于 2010-12-10 21:25:30

mark

Errrrrrrrr 发表于 2010-12-14 16:08:34

mark

zengyi703 发表于 2010-12-14 19:45:10

mark

tyqhaha 发表于 2010-12-15 01:55:18

谢谢

fengtao612 发表于 2010-12-15 19:38:29

MARK

ycwjl728 发表于 2010-12-18 00:35:20

Mark!

passjordan 发表于 2010-12-22 16:38:05

Mark!

hubaixdl 发表于 2011-11-7 15:57:00

MARK

201130 发表于 2011-11-18 21:04:55

mark!

AttTiv 发表于 2012-1-20 02:59:42

mark

kingboy100 发表于 2012-1-20 09:38:22

mark

yusufu 发表于 2012-1-20 10:26:05

mark~~学习学习~~

lv123123123 发表于 2012-1-30 13:38:23

mark

chenguanghua 发表于 2012-1-30 14:52:38

收藏 谢谢共享

redwolf310 发表于 2013-7-16 10:59:53

正在查找相关资料
谢谢
页: 1 [2] 3
查看完整版本: [原创]资源共享:开放我的mmc/sd操作原代码