来自QQ群 Linux && 技术分享 311078264,有问题可以入群讨论
打开链接可以加入QQ群:https://jq.qq.com/?_wv=1027&k=5Gr3bAx
MX_SDIO_SD_Init();
void sd_test_thread(void *argument)
{
HAL_StatusTypeDef status;
status = HAL_SD_Init(&hsd);
if(status != HAL_OK)
{
printf("SD card initialize failed!\n");
while(1) osDelay(1000);
}
while(1)
{
HAL_SD_CardStateTypeDef state = HAL_SD_GetCardState(&hsd);
if(state == HAL_SD_CARD_TRANSFER)
{
HAL_SD_GetCardCID(&hsd, &SD_CardCID);
printf("\nInitialize SD card sucessfully!\n");
printf("SD card information\n");
printf("Capacity :%llu\n", ((unsigned long long)hsd.SdCard.BlockSize*hsd.SdCard.BlockNbr));
printf("BlockSize :%d\n", hsd.SdCard.BlockSize);
printf("RCA :%d\n", hsd.SdCard.RelCardAdd);
printf("CardType :%d\n", hsd.SdCard.CardType);
printf("ManufacturerID :%d\n", SD_CardCID.ManufacturerID);
}
else
{
printf("SD card initialize failed.\n");
}
osDelay(1000);
}
}