在线时间206 小时
UID3328169
注册时间2016-11-13
NXP金币131
TA的每日心情 | 开心 2020-1-31 22:07 |
---|
签到天数: 29 天 [LV.4]偶尔看看III
版主
- 积分
- 1703
- 最后登录
- 2020-7-1
|
上个帖子提到的,segger官方的jlink配置是针对hyper-flash下载的,官方的EVKB开发板上面也有qspi-flash启动的硬件支持,这里就说说怎么修改板子以及segger配置以启用qspi-flash下载。
首先,下载并解压官方的SDK包,到EVKB-IMXRT1050\boards\evkbimxrt1050\driver_examples\flexspi\nor\polling_transfer目录中,这是一个针对qspi-flash的例程,查看readme,hyper-flash与qspi-flash在硬件上是冲突的,所以需要对板子进行rework:
Board settings
==============
The board enables hyper flash (U19) by default. To enable QSPI flash (U33), some hardware rework is needed:
Mount R153,R154,R155,R156,R157,R158 and DNP R356,R361,R362,R363,R364,R365,R366. 之后再将boot拨码拨到0001的模式(下下下上),硬件准备就到这里,接下来是segger软件的修改:
1,进入segger安装目录,打开JLinkDevices.xml文件,搜索"MIMXRT1052xxxxB"字符串,可以找到相对应的device配置:
- <Device>
- <ChipInfo Vendor="NXP" Name="MIMXRT1052xxxxB" WorkRAMAddr="0x20000000" WorkRAMSize="0x00080000" Core="JLINK_CORE_CORTEX_M7" Aliases="MIMXRT1052xxx5B; MIMXRT1052CVL5B; MIMXRT1052xxx6B; MIMXRT1052DVL6B" />
- <FlashBankInfo Name="HyperFlash" BaseAddr="0x60000000" MaxSize="0x04000000" Loader="Devices/NXP/iMXRT105x/NXP_iMXRT105x_HyperFlash.elf" LoaderType="FLASH_ALGO_TYPE_OPEN" />
- </Device>
复制代码 2,复制一份,粘贴在此device的下方,原device配置注释掉,接下来修改新的device配置,针对qspi-flash的,主要是修改FlashBankInfo,包括Name,MaxSize和Loader,修改后如下:
- <FlashBankInfo Name="QSPI Flash" BaseAddr="0x60000000" MaxSize="0x0800000" Loader="Devices/NXP/iMXRT105x/NXP_iMXRT105x_QSPI.elf" LoaderType="FLASH_ALGO_TYPE_OPEN" />
复制代码 3,保存,退出,修改结束,这样就可以利用Jlink下载qspi-flash的工程了。
其实修改方法可以参考RT1020的,因为RT1020的官方开发板上,只有qspi-flash,所以segger软件默认的就是qspi-flash的下载配置。
RT1060的板子大,基本是RT1050的板子换颗芯片而已,默认也是Hyper-flash启动,修改方式参照RT1050的。
RT1064因为是芯片封装内置了一片4M的qspi-flash,所以他的默认启动方式是从qspi-flash启动,和RT1060不一样。不过目前Segger似乎还没做针对RT1064的支持。有需要的话,貌似可以自己根据RT1060的配置来自己添加RT1064的device,需要注意的是,RT1064的flash启动地址改为0x70000000了。
|
|