CN / EN
文档反馈
感谢关注汇顶文档,期待您的宝贵建议!
感谢您的反馈,祝您愉快!

命令行

GProgrammer提供2类命令行程序:GR5xxx_console.exeGR5xxx_encrypt_signature.exe

说明:

GR5xxx表示芯片系列名称。

  • GR5xxx_console.exe可方便用户直接使用命令行完成固件下载和Flash擦除等基本功能操作。
  • GR5xxx_encrypt_signature.exe可方便用户直接使用命令行完成固件的加密加签或仅加签操作。

GR5xxx_console.exe

命令行程序GR5xxx_console.exe的使用步骤如下:

  1. 选择开始菜单 > 命令提示符,或者在运行对话框中输入cmd再回车,打开命令提示符窗口。
  2. 使用cd命令进入GProgrammer安装目录。
  3. 输入GR5xxx_console.exe command命令行完成相应操作。关于command具体描述,参见表 9
表 9 GR5xxx_console.exe支持的命令
command 功能描述 命令格式及参数说明 备注
program 下载固件文件至芯片内部Flash

program <firmware file path> <run immediately:y | n> <flash start address(hex)> <flash size> <product type> <S/N(optional)>

参数说明:

  • <firmware file path>:待下载固件文件路径
  • <run immediately:y | n>:下载完成后是否立即运行固件
​​​命令中相同的参数,说明如下:
  • <flash start address(hex)>:Flash起始地址,可输入值及含义如下:
    • 0x01000000:GR551x Flash起始地址
    • 0x00200000:GR5526/GR533x/GR5525 Flash起始地址
  • <flash size>:Flash大小(单位KB),即使用的芯片型号Flash大小,可查看图 6Flash列。

    说明:

    若使用的芯片Flash为0 KB,则写入使用的外挂Flash大小。

  • <product type>:芯片系列,可输入值及含义如下:
    • 0:GR551x系列芯片
    • 1:GR5526系列芯片
    • 2:GR533x系列芯片
    • 4:GR5525系列芯片
  • <S/N(optional)>:S/N号为可选参数,若PC端仅连接一个设备可不指定S/N号,若PC端连接多个设备,可使用S/N号指定需操作的设备。
erase 擦除指定地址范围内的芯片内部Flash数据

erase <start address<hex>> <end address<hex>><force erase when conflict with firmware/bootinfo:y | n> <flash start address(hex)> <flash size> <product type> <S/N(optional)>

参数说明:

  • <start address<hex>>:擦除区域的起始地址(16进制)
  • <end address<hex>>:擦除区域的结束地址(16进制)
  • <force erase when conflict with firmware/bootinfo:y | n>:当和固件、bootinfo区域冲突之后,是否强制擦除
eraseall 擦除全部芯片内部Flash数据 eraseall <product type> <S/N(optional)>
download 下载数据文件至芯片内部Flash

download <data file path> <start address<hex>><force download when conflict with firmware/bootinfo:y | n> <flash start address(hex)> <flash size> <product type> <S/N(optional)>

参数说明:

  • <data file path>:待下载数据文件路径
  • <start address<hex>>:下载区域的起始地址(16进制)
  • <force download when conflict with firmware/bootinfo:y | n>:当和固件、bootinfo区域冲突之后,是否强制下载
writeefuse 将Encrypt Key Info和Mode Control文件写入eFuse

writeefuse <Encrypt Key Info file Path> <Mode Control file Path> <product type> <S/N(optional)>

参数说明:

  • <Encrypt Key Info file Path>:Encrypt Key Info文件路径
  • <Mode Control file Path>:Mode Control文件路径
readefuse 读取eFuse Layout信息 readefuse <S/N(optional)>
reset 复位芯片系统 reset <product type> <S/N(optional)>
generate 转换固件文件为芯片可用.bin格式文件 generate <input firmware file path> <output firmware file path> <flash start address(hex)> <flash size> <product type>

参数说明:

  • <input firmware file path>:输入文件路径(IDE工具编译所生成的.hex/.bin文件)
  • <output firmware file path>:输出文件路径
device 获取J-Link设备信息(输出设备名称,S/N号)

device <display count(optional)>

参数说明:

  • <display count(optional)>:显示设备信息数量(可选参数)
load 下载固件(支持Flash固件、RAM固件)

load <firmware file path> <erase type> <run immediately:y | n> <S/N(optional)>

参数说明:

  • <firmware file path>:待下载固件文件路径
  • <erase type>:擦除类型
    • sector:擦除bootinfo区域、固件所用Flash区域
    • chip:全片擦除
    • none:无额外擦除,仅擦除固件所用Flash区域
  • <run immediately:y | n>:下载完成后是否立即运行固件
dump 从内部Flash导出数据 dump <start address(hex)> <size(hex)> <file path> <S/N(optional)>
help 查看所有命令帮助信息 help

例如,使用program命令下载一个固件文件到GR551x系列芯片,并设置下载完成后立即运行该固件,输入的命令为:

GR5xxx_console.exe program "D:/test/test_fw.bin" y "0x01000000" 1024 0
示例命令,重点参数内容说明如下:
  • "D:/test/test_fw.bin":待下载的目标固件.bin所在路径。
  • "0x01000000" 1024 0:依次为待烧录目标固件的Flash起始地址为0x01000000、Flash大小为1024 KB、芯片系列为GR551x。

program命令执行过程中会实时显示下载进度。

说明:

GProgrammer命令行程序GR5xxx_console.exe和界面程序无法同时使用。

GR5xxx_encrypt_signature.exe

命令行程序GR5xxx_encrypt_signature.exe的使用步骤如下:

  1. 选择开始菜单 > 命令提示符,或者在运行对话框中输入cmd后回车,打开命令提示符窗口。
  2. 使用cd命令进入GProgrammer安装目录。
  3. 输入GR5xxx_encrypt_signature.exe --parameter完成操作。

    常用参数及对应描述,详见表 10,全部参数可使用GR5xxx_encrypt_signature.exe --help命令进行查看。

表 10 GR5xxx_encrypt_signature.exe的常用参数列表
参数 描述 备注
operation 操作类型,可输入值及含义如下:
  • encryptandsign:加密加签
  • sign:仅加签
firmware_key 用于加密加签/仅加签的firmware.key文件所在路径 文件所在路径,对应eFuse设置章节,点击Generate eFuse File按钮后选择的文件保存路径。
signature_key 用于加密加签/仅加签的sign.key文件所在路径
signature_pub_key 用于加密加签/仅加签的sign_pub.key文件所在路径
product_json_path 用于加密加签/仅加签的product.json文件所在路径
rand_number 用于加密加签/仅加签的random.bin文件所在路径
ori_firmware 待加密加签/仅加签的原始固件路径
output 加密加签/仅加签后的固件保存路径
random_output 加密加签/仅加签使用的随机数的保存路径
base_addr Flash起始地址,可输入值及含义如下:
  • 0x01000000:GR551x Flash起始地址
  • 0x00200000:GR5526/GR533x/GR5525 Flash起始地址
flash_size Flash大小(单位KB),即使用的芯片型号Flash大小,可查看图 6Flash列。

说明

若使用的芯片Flash为0 KB,则写入使用的外挂Flash大小。

product_type 芯片类型, 可输入值及含义如下:
  • 0:GR551x系列芯片
  • 1:GR5526系列芯片
  • 2:GR533x系列芯片
  • 4:GR5525系列芯片
help 显示帮助信息

例如,在GR551x系列芯片上执行固件加密加签,输入的命令示例如下:

GR5xxx_encrypt_signature.exe --operation="encryptandsign" --firmware_key="D:/test/eFuse/firmware.key" --signature_key="D:/test/eFuse/sign.key" --signature_pub_key="D:/test/eFuse/sign_pub.key" --product_json_path="D:/test/eFuse/product.json" --rand_number="D:/test/eFuse/random.bin" --ori_firmware="D:/test/firmware/test_fw.bin" --output="D:/test/firmware_encryptAndSign/test_fw_encryptAndSign.bin" --random_output="D:/test/firmware_encryptAndSign/random.bin" --base_addr="0x01000000" --flash_size="1024" --product_type="0"

其中参数值路径D:/test/eFuse/eFuse设置章节,点击Generate eFuse File按钮后用户选择的文件保存路径。更多参数介绍,请查看表 10

  • --ori_firmware="D:/test/firmware/test_fw.bin":原始固件的路径。
  • --output="D:/test/firmware_encryptAndSign/test_fw_encryptAndSign.bin":保存加密加签后固件的路径。
  • --base_addr="0x01000000" --flash_size="1024" --product_type="0":依次表示待烧录目标固件的Flash起始地址为0x01000000、Flash大小为1024 KB、芯片系列为GR551x。
  • --rand_number 参数使用请参见固件加密加签章节Random Number说明。

运行命令后,开始执行加密加签操作。

用户自定义Windows脚本

用户可自定义编写Windows脚本文件,来调用命令行程序。在GProgrammer的安装目录下的GR5xxx_script目录中,存放了2个示例脚本文件。
说明:

GR5xxx表示芯片系列名称。

encryptAndSignatureFirmware.bat脚本使用同级目录中firmware_origin.bin文件和eFuse目录,生成加密加签的固件保存到firmware_encryptAndSign\firmware_encryptAndSign.bin路径中。

program_Firmware_EncryptAndSign.bat脚本先擦除全部内部Flash,然后下载firmware_encryptAndSign\firmware_encryptAndSign.bin路径中的固件到内部Flash中。

扫描关注

打开微信,使用“扫一扫”即可关注。