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
正在查找相关资料
谢谢