高级会员

- 积分
- 591
- 金钱
- 591
- 注册时间
- 2013-11-13
- 在线时间
- 61 小时
|

楼主 |
发表于 2014-5-8 19:54:07
|
显示全部楼层
回复【7楼】正点原子:
---------------------------------
不知为啥还是不行
/* High Capacity Card */
else if(CardType==SDIO_HIGH_CAPACITY_SD_CARD) //高容量卡
{
tmp=(u8)(CSD_Tab[1]&0x000000FF); //第7个字节
cardinfo->SD_csd.DeviceSize=(tmp&0x3F)<<16;//C_SIZE
tmp=(u8)((CSD_Tab[2]&0xFF000000)>>24); //第8个字节
cardinfo->SD_csd.DeviceSize|=(tmp<<8);
tmp=(u8)((CSD_Tab[2]&0x00FF0000)>>16); //第9个字节
cardinfo->SD_csd.DeviceSize|=(tmp);
tmp=(u8)((CSD_Tab[2]&0x0000FF00)>>8); //第10个字节
cardinfo->CardCapacity=(long long)(cardinfo->SD_csd.DeviceSize+1)*512*1024;//计算卡容量
cardinfo->CardBlockSize=512; //块大小固定为512字节
cardinfo->CardCapacity = cardinfo->CardCapacity >> 20;
}
显示:
  OINT_COLOR=BLUE;
LCD_ShowString(30,144,200,16,16,"SD Size is: MB"); //显示卡容量到TFT
POINT_COLOR = BLACK;
LCD_ShowNum(126, 144, SDCardInfo.CardCapacity/1024, 10, 16);
有问题吗? |
|