背景 当你想使用J-Link BASE烧写多个芯片时,使用命令行一步一步的烧写太麻烦了,我们可以采用一种批命令的模式来烧写,这样可以大大提高烧写多个芯片的效率,下面我们STM32F107为例,介绍如何用批命令方式烧写片内Flash。 实验环境l 仿真器:J-Link BASE 一台 l 目标板:STM32F107VC 一块 解决方案一、编写一个用于烧写的批处理文件STM32F107.bat内容为:"D:\Program Files (x86)\SEGGER\JLink\Jlink.exe" stm32f107.txt 二、编写批量执行命令文件stm32f107.txt1. si 1 // #选择swd接口 2. speed 12000 //设置速度 3. device STM32F107VC //选择芯片类型 4. r //重新复位目标 5. h //挂起目标 6. erase //擦除flash的内容 7. loadfile g:\uCOS-III-Startup.bin 0x08000000 //选择你要下载的文件,烧录到的地址 8. q //退出 三、烧写步骤1. 将J-link仿真器的USB电缆连接到PC机USB端口上, 2. 将JTAG电缆连接到STM32F107VC的板子上JTAG端口上, 3. 给目标板上电, 4. 可以先用J-Flash将STN32F107VC芯片商的内置Flash的内容擦掉,使之变成全0xff,LED灯不亮。 5. 运行STM32F107.bat文件,执行批命令烧写。 6. 运行完成后,拔掉板子上的电源,再重新插上,既可以看到板子上的LED灯闪烁,说明烧写成功了。 小结 1. 批文件中需要设置jlink.exe的路径,你也可以使用环境变量来设置,以便可以找到jlink.exe程序。 2. loadfile命令后面要烧写的文件必须存在,或者通过设置环境变量指定我们使用的工程目录也可以。 3. 批命令文件中,一行一条命令,不能有其它内容,序号也不能有。 通过批命令的方式,可以使用J-Link快速实现多个芯片的烧写。
|