1、首先安装好JFLASH软件
2、要用JFLASH软件烧录对应的芯片,首先要在软件下,有对应的芯片安装包和芯片说明。如果已经有了,那直接跳到第5步,如果没有,那就继续。
例如这里需要,烧录的是一款CLM32L003芯片。
在使用Keil编写软件时,就已经安装过对应的安装包了,在Keil下可以找到它。
KEIL5\ARM\PACK\(ChipNexus\CLM32L003_DFP\1.0.0\Flash)。括号里是之前自动生成的文件夹,每个芯片都不一样,找到对应的HC32F003.FLM。
3、找到JFLASH软件安装的位置,一般情况把CLM32L003F6.FLM复制到..\Devices目录下,一般新建一个文件夹,如果有相应的芯片,也可以直接该文件夹下面,
记下路径,这里是..\Devices\(HDSC\CLM32L003F6.FLM)。
4、也是在JFLASH软件安装的位置,找到JLinkDevices.xml文件,可以用记事本打开,加上这个芯片的说明。
<Device>
<ChipInfo Vendor="HDSC" Name="CLM32L003F6" WorkRAMAddr="0x20000000" WorkRAMSize="0x1000" Core="JLINK_CORE_CORTEX_M0"/>
<FlashBankInfo Name="Flash_64K" BaseAddr="0x0" MaxSize="0x10000" Loader="Devices/HDSC/CLM32L003F6.FLM"
LoaderType="FLASH_ALGO_TYPE_OPEN" AlwaysPresent="1"/>
</Device>
内容描述:
<Device> *** </Device> :Device必须成对出现,Device标签中包含对芯片信号的描述;
Vendor :芯片厂家的名字;
Name :芯片的具体型号;
Core :芯片的内核,这个必须是JLink支持的内核之一,这里是JLINK_CORE_CORTEX_M0;
WorkRAMAddr :芯片RAM的起始地址;
WorkRAMSize :芯片RAM的大小;
Aliases :同系列的相同RAM和FLASH的型号;这里没写
JLinkScriptFile :高级用法,有些芯片操作比较特殊,可以通过脚本去实现;这里没写
FlashBankInfo :描述芯片的Flash信息,有多块flash的话,每块对应一个FlashBankInfo;这里没写
Nameflash :Nameflash的名字,名字可以随便起;
BaseAddr :flash的起始地址,可以在用户手册里找到
MaxSize :flash的大小,可以在用户手册里找到
Loader :flash烧录的算法,segger官方的是.elf格式,.flm是ARM的格式。这个路径可以是绝对地址也可以是相对地址,相对地址的话是从JLinkDevices.xml所在的路径为起始地址。
LoaderType :必须是12.5.4.1 Attribute values - LoaderType中列出的类型之一,目前只有FLASH_ALGO_TYPE_OPEN一个类型,而*.flm是支持这个类型的
AlwaysPresent :指示这个块flash是不是一直存在,本文是内部flash,当然一直存在
想RAM或者Flash等还要去查找,可以直接在Keil里面看到
最后结果,配置就完成了。
5、打开JFLASH软件,左上角File->New Project,再选择Target Device,选中需要的芯片。
6、连接JLINK烧录器,接好烧录线
点击Target->connect,提示连接成功。
再点击Target->Production programming,烧录成功。
标签:烧录,RAM,芯片,flash,JFLASH,软件 From: https://www.cnblogs.com/mrsong1210/p/17159302.html