本帖最后由 gg270 于 2013-12-17 20:17 编辑
GD32 Jlink在线编程
一、 功能 实现GD32/STM32与JLINK连接时编程,且可对GD32/STM32唯一ID号进行加密。 二、 准备工作 安装JLINK驱动包。如电脑已安装使用过JLINK可跳过此步骤。 三、 软件使用
1、 在“下载文件”打开需要烧写的hex文件,在“J-FlahsARM”中选择安装好的JLINK文件夹里的JFlashARM.exe 2、 如需要进行UID加密,则把“UID加密勾选上”,且配置12个字节UID的存放位置,如D[0]=ID[10],表示把UID号中的第10个字节存放到算法的D[0]处,此处的D数组是算法需要使用到的,这样在相同公式下,也会产生2^32*12^12种结果。 3、 “存放地址”指的是UID经过算法后产生的结果存放在芯片FLASH的地址,十六进制表示,占用4个字节(GD32/STM32以8000000为起始地址)。“输入常数”指的是在一些算法中需要使用到的常数,可为任意十六进制数。“使用的公式”指的是当前UID加密需要使用的公式,一共120个公式可选择。 4、 选择“设置”如下图(这里以烧写GD32F103RB为例):
进入Options->;Project settings a、在TargetInterface界面下选择烧写接口,这里以SW接口为例。
b、在CPU界面,在Device中选择当前要烧写的芯片型号 c、在Production界面下,选择编程执行的流程。配置完成后确定,再关闭JFlashARM.exe。 d、回到GD32-JlinkProgram界面,如果需要UID加密,则按第2步,把“UID加密”勾选上并配置好ID存放编号及选择算法公式,配置好后选择“生成算法”,即会生成算法源文件uidsecure.c和uidsecure.h,把这两个文件复制到项目中,在main函数文件中添加uidsecure.h头文件,并在main函数开始后调用CheckUid();即可。生成的hex文件再通过第1个步骤调入进来。
e、所有配置完成后,点击编程即可对芯片进行编程及加密。
===================================
GD32-JlinkProgram-V2.4.rar
(936.26 KB)
V2.2:修复GD32-JlinkProgram软件存放在含有空格文件夹中不能生成加密源文件的问题。
V2.3:修复使用UID加密出错问题。
V2.3.1:修复部分电脑使用时出现软件异常问题。 V2.4:修复加密部分出错问题
|