【ART-Pi测评】二:板载存储之QSPI_FLASH
[复制链接]
本帖最后由 数码小叶 于 2021-6-17 22:00 编辑
本来是要写SPI_FLASH读写操作的,可是发现,还是要先写QSPI_FLASH,因为使用RT-Thread Studio建完默认工程后发现不一样的地方
安装好H7的芯片支持包以及ART-Pi的板级支持包后就可以新建一个工程了
主函数main.c里居然发现了中断向量表重映射,这个按理在最基本的模板工程里不应该出现啊
找到QSPI_BASE的定义,查看其地址是多少
0x90000000,对于这个0x90000000地址怎么来的,不确定就要打开参考手册了找找了,在Memory and bus architecture章节,找到了STM32H740的地址分布
刚好就是从0x90000000地址开始的。
继续看下去,在Quad-SPI interface (QUADSPI)章节,介绍了外扩QSPI_FLASH的单、双两种方式,
结合ART-Pi的原理图,可以验证这一点,完全是按照这个接口来的
编译完工程后,打开map文件,查看里面的中断向量以及函数地址
可以确定程序是运行在外部Flash的,因此在片内0x08000000的位置,应该是存在bootloader来完成跳转。
还有一点,关于RT-Thread Studio的编译链接设置,有一个脚本文件link.lds,习惯了keil和IAR的设置,找这个找了很长的时间
最后把模板工程下载到板子上,修改了闪烁频率,可以看到led开始闪烁,并且整个过程中,没有破坏bootloader。
因此,对于SPI_FLASH的读写可以正常进行,对于QSPI_FLASH就分为两种了,一种是不破坏bootloader,那就要注意读写范围了,二是不用担心范围,全片自由读写,那就要覆盖bootloader了。
|