
本帖最后由 hpdell 于 2017-6-5 23:42 编辑 不知道为什么,qspi 使用dma模式,一次读取数据量大于128KB 就出错, 如果把 大于 128KB 的数据量 分包读取,完全没有任何问题; 大于128KB的数据量,跟踪发现是 dma 的接收数据长度赋值为0,不知是为何赋值失败 ?? 跟踪发现最终是没有给dam的数据长度赋值 ??? 具体如下: 128KB 数据长度赋值跟踪,结果正常, 128KB 的数据量赋值成功 ![]() 512KB dma的数据长度赋值为 0 ??? ![]() ![]() 512KB 的数据量赋值失败 ??? ![]() 不知道为何 > 128KB 的数据值怎么就赋值不成功 ??????????? dma的数据长度的数据类型是 __IO uint32_t ,数据量也没有超过这个数量类型,怎么会不成功 ?? 使用的库版本: * @file stm32f7xx_hal.c * @author MCD Application Team * @version V1.2.2 * @date 14-April-2017 * @brief HAL module driver. * This is the common part of the HAL initialization ********************************************************************************************* ********************************************************************************************* 从下图的 128KB 与 512KB 的数据看寄存器,发现出 数据量的变化外,其他寄存器的值都是完全一致的, 为神马会出现这样的情况 ????????????????????????????????????????? ![]() |
发布的帖子如何删除啊 ???
评分
查看全部评分