[STM32F1] STM32F103 DMA方式读取spi flash(W25Q64),读一会儿就读不出来了。

[复制链接]
5414|4
 楼主| wyfzgybd 发表于 2018-7-30 20:45 | 显示全部楼层 |阅读模式
本帖最后由 wyfzgybd 于 2018-7-30 21:00 编辑

测试DMA方式读取W25Q64,一次读4K一个扇区字节,读出来什么都不做,单片机也没有其他什么中断的频繁中断的事情在做。专门测试这个。
循环读,DMA中断接收完成后,继续读下一个扇区。1-50扇区反复循环测试读取。读一会儿就发现读不出数据了,没有跳到DMA1 通道2的接收中断里。
不知道为何?有时候读了大概五六个扇区数据就出现这种bug,最长也就读1分钟左右,就出现这种bug。希望有大神帮忙指点指点。
DMA启动读:

DMA启动读

DMA启动读


DMA接收完成中断

DMA中断

DMA中断


DMA初始化

DMA初始化

DMA初始化


SPI初始化

SPI初始化

SPI初始化

 楼主| wyfzgybd 发表于 2018-7-30 21:23 | 显示全部楼层
自顶一下
一周一天班 发表于 2018-7-31 09:18 来自手机 | 显示全部楼层
一次只能读一个block吧?
 楼主| wyfzgybd 发表于 2018-7-31 09:24 | 显示全部楼层
一周一天班 发表于 2018-7-31 09:18
一次只能读一个block吧?

一个block有16个扇区呢,一个扇区4KB,我DMA一次就读一个扇区呀。
marshal234 发表于 2018-7-31 15:18 | 显示全部楼层
SPI norflash还有block的说法吗?我以为只有nandflash才有block的说法。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

5

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部