你的浏览器版本过低,可能导致网站不能正常访问!为了你能正常使用网站功能,请使用这些浏览器。
比如,要读一个字节数据,用SPI操作,则需要通过SPI发送地址、发送直接、读取数据等操作。 如将QSPI映射到0x90000000,那么程序中可以直接读,比如定义一个指针P,赋值0x90000000给P,然后 *p就能读出数据。执行代码同理,只不过代码是内核自动取指令。
Flash支持SPI和QPI两种模式,其中我们常说的SPI/DSPI/QSPI都是SPI。 芯片上电后,默认都是SPI模式,注意,是上电,也就是掉电再上电。 先置位状态寄存器2的QE位,然后发送0x38命令,就可以从SPI模式切换到QPI模式。 在QPI模式发送0XFF指令,就可以返回SPI模式。
不同模式有不同的指令。 不同的指令时序不一样:指令用几个IO发送,地址用几根IO发送,地址多少位,数据用几根IO发送。 其中SPI/DSPI/QSPI 由使用的指令决定。 但是QPI就需要配置FLASH进入QPI模式。所以呢,QPI有些指令的值和SPI是一样的,但是时序不一样。
InstructionMode: 用几根IO发送命令 Instruction:命令 AddressMode:用几根IO发送地址 AddressSize:地址有多少位 Address:地址 DataMode:数据用几根IO DummyCycles:等待周期 。。。
上面只说了流程,至于很多原理,请大家自行学习。 比如外什么外部地址是0X90000000,分散加载文件是什么,,,
先将STM32H750_W25Q64_WJQ.FLM文件拷贝到keil安装目录,比如D:\Keil_v5\ARM\Flash\ 修改工程调试配置,将外部FLASH算法添加到工程。
举报
意法半导体微控制器和微处理器拥有广泛的产品线,包含低成本的8位单片机和基于ARM® Cortex®-M0、M0+、M3、M4、M33、M7及A7内核并具备丰富外设选择的32位微控制器及微处理器