使用Jlink 烧写SPI Flash存储芯片
使用Jlink 烧写SPI Flash存储芯片
参考:
https://www.segger.com/products/debug-probes/j-link/tools/j-flash-spi/
硬件连接
SPI & Single
QSPI & Quad
注意:
这里要注意的一点,正版的Jlink仿真器1脚是输入引脚,是外部提供参考电平的,但由于现在大部分的JLink仿真器都是学习(dao)版的,1脚不是输入,而是3.3v的输出(并不确定也有可能是5V的, 盗版的Jlink真的是什么乱七八糟的都有),所以正常情况下可以直接用这个管教来给SPI Flash供电。
关于 nRESET 的注意事项:如果有另一个设备/外围设备也控制 SPI 闪存(例如闪存连接到的 CPU),则 J-Link 的 nRESET 应连接到目标系统的复位或 CPU 的复位引脚确保 J-Link 可以在对 SPI 闪存进行编程时保持 CPU 处于复位状态。
一开始没注意到这个功能, 现在回过头来再看, 有这个功能之后烧芯片简直不要太简单, 根本不需要拆芯片了, 直接用芯片夹就可以烧录了.
软件
安装Jlink套件的时候会自带JFlashSPI.exe
在开始菜单名称应该类似J-Flash SPI
, 这是J-Flash的GUI程序,还有一个命令行的不多做介绍.
如果没有找到自带的, 请更新Jlink套件, 旧版确实不带这个东西.
Segger Jlink套件下载链接 https://www.segger.com/downloads/jlink/
点击target -> connet
连接到Jlink, 它会自动检测大部分SPI闪存,
有时候识别的具体型号并不准确, 但是这不重要他们参数类似, 可以正常完成编程的工作.
Jlink支持的SPI Flash型号可以在点击这里找到.
点击file -> open data file
我们打开要烧录的文件.
bin 文件需要设定起始地址
hex文件自带了位置信息
点击target -> auto
可以自动将文件烧录进去 还会进行读回校验.
至此烧录完成.
Tips:
点击
target -> read back
可以将SPI Flash内的数据读取出来
点击options -> settings -> setup -> interface speed
可以修改时钟速度.
Other:
Jlink真的是超级牛的工具, J-Scope, RTT这些都很好用, 还有很多高级功能我还没用上.
我前面有写过RTT的笔记, 在调试一个项目的时候没法使用串口, 当时就是用RTT搭建了一个log平台.