问答

汇集网友智慧,解决技术难题

21ic问答首页 - 关于F403A V1.36版本和V2.06版本SD卡驱动疑问

AT32 SD卡 IO DMA TRANSFER transf

关于F403A V1.36版本和V2.06版本SD卡驱动疑问

5929242702022-01-25
想请教一个问题,就是自己画的板子,芯片AT32F403ACGT7,我使用V1.36的库,使用SDIO2_MMCCARD例程,然后使用DMA模式,和使用POLLING模式,程序都可以正常跑下去,singleblock和mutileblock测试通过;但是使用V2.06版本驱动,SDIO_MMC程序,将SDIO1相关定义时钟引脚等换成SDI02,使用POLLING模式可以正常运行;使用DMA模式,singleblock测试发送数据就会卡死,不知道这个是什么情况,有帮忙分析一下,谢谢了    if(sdio_data_init_t->transfer_direction == SDIO_DATA_TRANSFER_TO_CARD)
    {
      sd_dma_config(buf, length, DMA_DIR_MEMORY_TO_PERIPHERAL);
      SDIOx->inten |= SDIO_INTR_STS_WRITE_MASK;
      transfer_error = SD_OK;
      transfer_end = 0;
      sdio_dma_enable(SDIOx, TRUE);
    }

    while(!(SDIOx->sts & SDIOx->inten) && timeout)
    {
      timeout--;

      if(transfer_end)
      {
        break;
      }
    }
就是在这边卡了,timeout=0xffffff;
求帮忙

回答 +关注 15
5114人浏览 8人回答问题 分享 举报
8 个回答

您需要登录后才可以回复 登录 | 注册