PEmicro CPROGCFZ PROG 闪存编程软件 

PEmicro CPROGCFZ PROG 闪存编程软件

介绍

CPROGCFZ 是 PROGCFZ 软件的 Windows 命令行版本,它通过 PEmicro 硬件接口将闪存、EEPROM、EPROM 等编程到受支持的 NXP Cold Fire V2/3/4 处理器。 硬件接口可从 PEmicro 获得。

一旦您的接口硬件在您的 PC 和目标设备之间正确连接,您就可以从命令行启动 CPROGCFZ 可执行文件。 除了可执行文件之外,还必须传递多个命令行参数,以配置 CPROGCFZ 应尝试连接到哪个 PEmicro 硬件接口,以及配置该硬件接口将如何连接到目标设备。 这些参数包括配置名称 (.CFG) file,以及启动命令,例如硬件接口的名称或接口连接到的端口。

.CFG file 指定如何按照您的意愿对目标进行编程,它包括标准编程命令和可选的配置命令。 以下章节将对这些命令和参数进行详细说明。

启动

a. 通过调试带状电缆连接 PC 和目标 MCU 之间的硬件接口。
b. 通过从 Windows 命令提示符运行它或通过使用正确的命令行参数调用 CPROGCFZ 可执行文件来启动编程软件。 允许的命令行参数是:

CPROGCFZ [?/!] [filename] [/PARAM=s] [v] [reset delay n] [bam_speed n] [heap] [frown] [Interface=x] [port=y] [showboats] [naps] [/logfile 日志 file姓名]

在哪里:

[?/!] 使用 '?' 或者' '!' 字符选项使命令行程序员等待并在 PROGCFZ 窗口中显示编程结果。 “?” 将始终显示结果,'!' 只有在发生错误时才会显示结果。 如果用户不使用批处理 file 测试错误级别,这提供了一种显示编程结果的方法。 此选项应该是第一个命令行选项。

[file姓名] A file 包含编程命令和注释,默认 = prog。 CFG。 参见第 7 节 – Examp文件编程脚本 File 对于前任amp勒。

[/PARAMN=s]
一个命令行参数,可以通过替换特殊的方式来修改正在执行的脚本 tags (/PARA MN)。 这可用于替换脚本的任何部分,包括编程命令, file名称和参数。 n 的有效值为 0 .. 9。这是一个字符串,它将替换脚本中出现的任何 /PARAMN file. 第 8 节——在脚本中使用命令行参数有一个例子amp乐供使用。

[接口=x] 其中 x 是以下之一:(参见 examp章节)
USBMULTILINK(此设置也支持 OSBDM)
旋风追踪链接
PARALLEL(并行端口或 BDM Lightning [Legacy])

[端口=y]

其中 y 的值为以下之一(有关已连接硬件的列表,请参阅 show ports 命令行参数;始终指定“接口”类型):

USBX
其中 x = 1,2,3、4、1 或 1。表示从 XNUMX 开始的每个硬件的枚举编号。在尝试连接到 Cyclone、Trace 链接或 Multilink 产品时很有用。 如果只连接了一个硬件,它将始终枚举为 USBXNUMX 。
前任amp选择找到的第一个 Multilink 的文件是:INTERFACE=USBMULTILINK PORT=USB1

#.#.#.#
以太网 IP 地址#.#.#.#。 每个 # 符号代表一个介于 O 和 255 之间的十进制数。适用于 Cyclone 和 Trace 链路接口。
通过以太网连接。
接口=旋风端口=10.0.1.223

姓名
一些产品,例如 Cyclone 和 Trace 链接,支持为设备指定一个名称,例如“Joe's Max”。 Cyclone 可以用它的指定名称来指代。 如果名称中有任何空格,整个参数应该用双引号括起来(这是 Windows 要求,而不是 Pemako 要求)。
Examp莱斯:
INTERFACE=CYCLONE PORT=MyCyclone99 INTERFACE=CYCLONE “PORT=Joe's Cyclone”

唯一身份
USB Multilink 产品都有分配给它们的唯一序列号,例如 PE5650030。 Multilink 可以参考这个号码。 这在多个单元连接到同一台 PC 的情况下很有用。
Examp莱斯:
接口=USBMULTILINK 端口=PE5650030

康克斯
其中 x = 1,2,3、4、XNUMX 或 XNUMX。代表 COM 端口号。 对 Cyclone 接口有效。
要连接到 COM1 上的 Cyclone:INTERFACE=CYCLONE PORT=COM1

X
其中 x = 1,2,3、4、XNUMX 或 XNUMX。表示并行端口号
要在并行端口 #1 上选择并行接口:INTERFACE=PARALLEL PORT=1

氯化钾
其中 x = 1,2,3、4、XNUMX 或 XNUMX。代表 BDM Lightning 卡号。 (注意:这是旧产品)
要在 BDM Lightning #1 上选择并行电缆:
接口=并行端口=PCI 1

[显示端口]
命令行程序员将所有可用端口输出到文本 file 然后终止(无论其他命令参数如何)。 此信息输出到文本 file 包括联系附加编程硬件所需的参数以及硬件接口的描述。 默认输出 file名称为 ports.txt 并在与 CPROG 相同的文件夹中创建。
输出也可以被定向到不同的 file.
Examp乐: SHOWPORTS=C:\我的端口.TXT
此列表未显示同样可用的并行端口或 COM 端口选项。 下面是前任amp连接到 PC 的各种硬件接口的输出文件(请注意,有不同的方法来寻址同一单元;每个接口的数据后面可能跟一个 [DUPLICATE] 行,它显示同一接口的不同标签)。

显示端口输出 Examp乐:

接口=USBMULTILINK 端口=PE5650030 ; USB1:Multilink Universal FX Rev A (PE5650030)[端口号=21] 接口=USBMULTILINK 端口=USB1; USB1:Multilink Universal FX Rev A (PE5650030)[Port Num=21][DUPLICATE] 接口=旋风端口=10.0.9.197; 10.0.9.197:公共旋风 [端口号 = 61] 接口=旋风“端口=公共旋风”; 10.0.9.197:公共旋风[端口号=61][重复] INTERFACE=CYCLONE “PORT=乔的旋风分离器” ; USB1:旋风分离器(乔的)[端口号=101] 接口=CYCLONE端口=USB1; USB1:旋风分离器(乔的)[端口号=101][重复] 接口=TRACELINK 端口=10.1.5.2 ; 10.1.5.2:MCF52259_TRACE[端口号=123] 接口=TRACELINK 端口=MCF52259 跟踪; 10.1.5.2:MCF52259_TRACE[端口号=123][重复]

[五]
导致程序员在编程或验证之前不检查S-record地址的范围。 这加快了编程过程。 应谨慎使用该选项,因为所有超出范围的记录都将被忽略。

[reset_delay n]
指定程序员重置目标后的延迟,我们检查该延迟是否已正确进入后台调试模式。 如果目标有一个复位驱动程序,在程序员释放复位线后保持 MCU 处于复位状态,这将很有用。 n 值是以毫秒为单位的延迟。

[bdm_speed n]
该选项允许用户设置 Pemako 调试接口的 BDM 移位时钟速度。 该整数值可用于根据以下等式确定通信速度:

USB 多链路(包括通用):(1 000000/(N+1)) Hz USB 多链路通用 FX:(25000000/(N+1)) Hz Cyclone 或 Trace 链路:(50000000/(2*N+5)) Hz BDM Lightning : (33000000/(2*N+5)) Hz – 传统产品

n 的值应介于 0 和 31 之间。此移位时钟在执行编程算法顶部的命令后生效,以便这些命令可以提高目标频率并允许更快的移位时钟。 该时钟通常不能超过处理器总线频率的四分之一。

[隐藏应用] 这将导致命令行程序员在运行时不显示视觉存在,但出现在任务栏上除外。 仅限 32 位应用程序!

[频率] 默认情况下,PROGCFZ 软件会尝试通过在处理器中加载延迟例程并计算执行所需的时间来自动确定目标运行的速度。 在某些机器上,这可能会产生不一致的结果,这可能会影响对 MCU 内部闪存进行编程的算法。 Pemicro 提供了一种命令行机制,允许用户准确地通知 PROGCFZ 软件目标处理器的运行速度。 这样,算法中的时间将是精确的。 在命令行上,您可以在“FREQ”标识符后面以赫兹为单位指定内部时钟频率。 请注意,通常如果您使用 MCU 外部的闪存设备,则不需要此时序参数,因为闪存会自行处理时序。

[立即] 默认情况下,PROG 软件将使用 3 针后台模式连接器上的 PST[0:26] 信号来确定编程期间的设备状态。 为了减少物理足迹,某些设置可能不会将 PST[3:0] 信号连接到 26 针连接器。 'nopst' 参数指示命令行程序员它必须使用替代方法来确定设备状态,因为 PST[3:0] 信号不存在。 缺点tag使用这种替代方法的好处是编程速度较慢。

[/日志file 日志 file姓名]
此选项打开一个日志file 名称“日志 filename”,这将导致写入状态窗口的任何信息也被写入此 file. “日志 filename”应该是完整的路径名,例如 c:\mydir\mysubdir\mylog .log。

命令行执行器amp莱斯:
CPROGCFZ C:\ENGINE.CFG 接口=USBMULTILINK 端口=PE5650030

使用以下选项打开 CPROGCFZ:

  • 运行 C:\ENGINE.CFG 脚本
  • 接口是第一个USB Multilink Universal,序列号为PE5650030
  • 自动检测通信频率(io_delay_cnt 未设置)

CPROGCFZ C:\ENGINE.CFG 接口=CYCLONE 端口=209.61 .110.251

使用以下选项打开 CPROGCFZ:

  • 运行 C:\ENGINE.CFG 脚本
  • 接口是通过以太网端口的 Cyclone Max,IP 地址为 209.61 .110.251

CPROGCFZ C:\ENGINE.CFG 接口=USBMULTILINK 端口=USB1

使用以下选项打开 CPROGCFZ:

  • 运行 C:\ENGINE.CFG 脚本
  • 接口是 USB Multilink Universal,检测到第一个接口。

编程命令

空格(空格或制表符)。 以不是命令的字符开头的行被列为 REM 方块。 期限 filename 表示一个完整的 DOS 路径 file. 命令使用与交互式编程器 PROGCFZ 中使用的相同的两个字母代码。 相同的.CFP filePROGCFZ 使用的 s 用于设置要编程的特定设备。 如果为特定设备指定了用户函数,则其双字符命令和含义或 user_par 在 .CFP 中指定 file.

笔记:
命令参数 starting_Addr、ending_Addr、base_Addr、byte、word 和 user_par 使用默认的十六进制格式。

BM
BR 起始_地址 结束_地址
CHANGEV n.nn

  • 空白支票模块。
  • 空白检查范围。
  • (仅限 Cyclone)更改音量tage 提供给目标,其中 n.nn 表示介于 0.00 和 5.00 之间的值,包括端值。 当命令执行时,Cyclone 将立即更改为该卷tage. 如果在调用此命令之前 Cyclone 继电器关闭,则继电器将打开并设置新的音量tag执行此命令时的 e 值。 请注意,vol 太低tage 值可能会使设备进入低功耗模式,这可能会完全失去调试通信。 确保 Cyclone 的跳线设置设置正确,以将电源发送到正确的端口。

EB 启动
_ Addr ending_Addr——擦除字节范围。

电子战开始
_Addr ending _Addr——擦除字范围。

EM
– 擦除模块。

PB首发
_Addr 字节... byte——程序字节。

私服开始
_Addr word … word 程序字。

PM
– 程序模块。

CM file名称基地址
– 选择模块.CFP file. 注意:某些模块可能需要指定基址。

VM
– 验证模块。

VR启动
_addr ending _addr 验证范围。

UM file姓名
– 上传模块。

你开始
_addr 结束 _addr file名称 - 上传范围。

SS file姓名
– 指定 S 记录。

SM 开始
_addr ending _addr – 显示模块。

继电器关闭
–(仅限 Multilnk FX 和 Cyclone)关闭为目标供电的继电器,包括断电延迟(如果指定)。 对于希望在运行测试之前重启电路板、允许其引导加载程序运行或在编程后运行应用程序代码的用户特别有用。

继电器 
(仅限 Multilink FX 和 Cyclone)打开继电器为目标供电,如果指定,包括加电延迟。 卷tag提供的 e 将基于最后一卷tage 指定的设置。 对于 Cyclone 用户,CHANGEV 命令可以改变 voltage值。 对于希望在运行测试之前重启电路板、允许其引导加载程序运行或在编程后运行应用程序代码的用户特别有用。

HE
– 帮助(查看 cprog.doc file).

QU
- 辞职。

RE
复位芯片。

GO
– 启动设备运行。 可以作为final
如果您希望设备运行以进行测试,请使用命令。 应该紧接在“RE”命令之后。

DE 时间(单位:ms)
延迟“timeinms”毫秒

xx用户_par
– 仅适用于 .CFP 中指定的用户功能 file.

启动配置命令

配置命令全部在程序员尝试联系目标之前处理。 整体配置 file 在尝试通信之前针对这些命令进行解析。 本节给出一个结束view 使用这些配置命令进行不同类型的配置。

笔记: 配置命令参数的默认基数是十进制。

超过view 配置命令如下:

CUSTOMTRIMREF nnnnnnnn.nn 文件

“PT”所需的内部参考时钟频率; 程序修剪”命令。 该频率覆盖默认的内部参考时钟频率。 “n”的有效值取决于正在编程的特定设备。 有关有效的内部参考频率时钟范围,请参阅设备的电气规格。 在哪里:

nnnnnnnn.nn:以赫兹为单位的频率,保留两位小数

设备电源 n

对于 Cyclone(不包括 Cyclone MAX)。 此设置定义目标卷tag如果 vol 的来源,将提供给目标的 etage 源自 Cyclone 的内部电源。 n 的有效值为:

0: 5 伏,由旋风分离器产生/切换
2: 3 伏,由旋风分离器产生/切换
4: 2 伏,由旋风分离器产生/切换

提供电源 n

确定接口是否应为目标供电。 注意:并非所有硬件接口都支持此命令。 n 的有效值为:

0: 接口不为目标供电。 (默认)
1: 启用接口为目标供电。
(笔记: 与传统选项相同:使用继电器 n)

掉电延迟 n

为使目标电源降至 0.1v 以下而关闭目标电源时延迟的时间量。 n 是以毫秒为单位的时间。

上电延时 n

从目标电源打开或目标重置到软件尝试与目标对话之前的延迟时间。 该时间可以是加电时间和复位时间的组合(尤其是在使用复位驱动器的情况下)。 n 是以毫秒为单位的时间。

关闭电源 退出 n

确定在 CPROGCFZ 应用程序终止时是否应关闭提供给目标的电源。 笔记: 并非所有硬件接口都支持此命令。 n 的有效值为:

0: 退出时关闭电源(默认)
1: 退出时保持电源打开

验证结束view

有几个可用的命令可用于在编程后验证设备上闪存的内容。 最广泛使用的命令是“VC ;Verify CRC of Object File 到模块”。 “VC”命令将指示 CPROGCFZ 首先从所选对象计算一个 16 位 CRC 值 file. 然后 CPROGCFZ 会将代码加载到设备的 RAM 中,并指示设备根据设备 FLASH 中的内容计算一个 16 位 CRC 值。 只有对象中的有效地址范围 file 在设备上计算。 一旦来自对象的 16 位 CRC 值 file 并且设备可用,CPROGCFZ 将它们进行比较。 如果两个值不匹配,则会抛出错误。

或者,“VM ;Verify Module”命令可用于在所选对象之间执行逐字节验证 file 和设备。 通常,VM 命令比 VC 命令执行时间更长,因为 CPROGCFZ 必须逐字节读取设备 FLASH 的内容。 还有另外两个命令可用于验证。 “SC ;Show Module CRC”指示 CPROGCFZ 将代码加载到设备的 RAM 中,并指示设备根据设备整个 FLASH 的内容(包括空白区域)计算 16 位 CRC 值。 一旦计算出 16 位 CRC 值,CPROGCFZ 将在状态窗口中显示该值。 “VV ;Verify Module CRC to Value”命令类似于“SC”命令。 不同之处在于,CPROGCFZ 不会显示计算出的 16 位 CRC 值,而是将计算出的值与用户给出的 16 位 CRC 值进行比较。

DOS 错误返回

提供 DOS 错误返回,因此可以在 .BAT 中测试它们 file秒。 使用的错误代码是:

  1. 程序完成,没有错误。
  2. 被用户取消。
  3. 读取S记录出错 file.
  4. 验证错误。
  5. 验证被用户取消。
  6. S记录 file 未选定。
  7. 起始地址不在模块中。
  8. 结束地址不在模块中或小于起始地址。
  9. 无法开启 file 用于上传。
  10. File 上传时写入错误。
  11. 上传被用户取消。
  12. 打开 .CFP 时出错 file.
  13. 读取 .CFP 时出错 file.
  14. 设备未初始化。
  15. 加载 .CFP 时出错 file.
  16. 启用刚刚选择的模块时出错。
  17. 指定的S记录 file 未找到。
  18. .CFP 指定的缓冲区空间不足,无法容纳 file S-记录。
  19. 编程时出错。
  20. 起始地址不指向模块。
  21. 最后一个字节编程时出错。
  22. 模块中不再有编程地址。
  23. 起始地址不在对齐的字边界上。
  24. 最后一个字编程时出错。
  25. 无法擦除模块。
  26. 模块字未擦除。
  27. 精选.CFP file 不执行字节检查。
  28. 模块字节未擦除。
  29. 字擦除起始地址必须是偶数。
  30. 字擦除结束地址必须是偶数。
  31. 用户参数不在范围内。
  32. .CFP 指定函数期间出错。
  33. 指定的端口不可用或打开端口时出错。
  34. 命令对此 .CFP 无效 file.
  35. 无法进入后台模式。 检查连接。
  36. 无法访问处理器。 尝试软件重置。
  37. 无效的.CFP file.
  38. 无法访问处理器 RAM。 尝试软件重置。
  39. 初始化被用户取消。
  40. 转换十六进制命令编号时出错。
  41. 配置 file 未指定和 file 编。 cfg 不存在。
  42. .CFP file 不存在。
  43. 命令行上的 io_delay number 错误。
  44. 命令行参数无效。
  45. 指定以毫秒为单位的十进制延迟时出错。
  46. 脚本错误 file.
  47. 未检测到电缆
  48. S-唱片 file 不包含有效数据。
  49. Checksum Verification failure – S-record 数据与 MCU 内存不匹配。
  50. 必须启用排序以验证闪存校验和。
  51. S-Records 并非都在模块范围内。 (见“v”命令行参数)
  52. 在端口/接口的命令行设置中检测到错误
  53. 计算设备 CRC 值时出错
  54. 错误——设备 CRC 与给定的值不匹配
  55. 错误——CPROG 已经在运行
  56. 错误 – 必须在命令行上同时指定 INTERFACE 和 PORT
  57. 当前硬件接口不支持所选的目标处理器。

Examp文件编程脚本 File

编程脚本 file 应该是纯 ASCII file 每行一个命令。 这是CFG file 在前任amp莱斯。

前任amp是: 

厘米飞思卡尔_52211_1x32x32k.CFP ;选择闪存模块
EM ;擦除模块
BM ;空白检查模块
SS C:\PEMICRO\TEST.S19 ;指定要使用的S19
PM ;用 S19 给模块编程
VM ;再次验证模块

笔记: 的路径名称 file也可以使用与 CPROG 可执行文件相关的文件。

在脚本中使用命令行参数

/PARAMN=s 形式的命令行参数可用于将文本插入脚本 file 代替特殊 tags. 这可用于替换脚本的任何部分,包括编程命令, file名称和参数。 n 的有效值为 0..9。 s 是一个字符串,它将替换脚本中出现的任何 /PARAMN file.

作为前任ample,以下通用脚本可用于与 ex 具有完全相同功能的编程amp中的脚本 第 7 节 – Examp文件编程脚本 File:

CM /参数1 ;选择闪存模块
EM ;擦除模块
 BM ;空白检查模块
 SS /参数 2 ;指定要使用的S19
PM ;用 S19 给模块编程
/参数3 ;再次验证模块

以下参数将添加到 CPROG 命令行:

“/PARAM1=C:\PEMICRO\Freescale_52211_1x32x32k.CFP 4000″ /PARAM2=C:\PEMICRO\TEST.S19 /PARAM3=VM

笔记: 由于 /PARAM1 参数的值中有空格,因此需要将整个参数括在双引号中。 这向 Windows 表明它是单个参数。 在这种情况下,基地址 0x4000 包含在脚本的选择模块行中,因此必须在命令行中指定 /PARAM1,如下所示:

“/PARAM1=C:\PEMICRO\Freescale_52211_1x32x32k.CFP 4000″

所以完整的前任amp命令行将是(注意这是连续的;没有换行符):

C:\PROJECT\CPROGCFZ 接口=CYCLONE 端口=USB1 BDM_SPEED 1
C:\PROJECT\GENERIC.CFG
“/PARAM1=C:\PEMICRO\Freescale_52211_1x32x32k.CFP 4000” /PARAM2=C:\PEMICRO\TEST.S19 /PARAM3=VM

Samp批次 File

这是一个前任amp调用命令行编程器并测试其错误代码的文件以简单的批处理方式返回 file. 史amp乐批次 files 适用于 Windows 95/98/XP 和 Windows 2000/NT/XP/Vista/7/8/10。

Windows NT/2000/Vista/7/8/10: 

C:\PROJECT\CPROGCFZ C:\PROJECT\ENGINE.CFG 接口=USBMULTILINK 端口=USB1

如果错误级别 1 变坏

:坏的
ECHO 坏坏坏坏坏坏坏坏坏
: 好的
回声完成

视窗 95/98/ME/XP: 

开始 /WC:\PROJECT\CPROGCFZ C:\PROJECT\ENGINE.CFG
接口=USBMULTILINK 端口=USB1

如果错误级别 1 变坏

:坏的
ECHO 坏坏坏坏坏坏坏坏坏
: 好的
回声完成

笔记: 的路径名称 file也可以使用与 CPROG 可执行文件相关的 s

信息

有关 CPROGCFZ 和 PROGCFZ 的更多信息,请联系我们:

P&E 微型计算机系统公司 语音: 617-923-0053
98 盖伦街传真: 617-923-0808
马萨诸塞州沃特敦 02472-4502 WEB: http://www.pemicro.com
美国

到 view 我们的整个图书馆。 CFP 模块,转到 Pemako 的支持页面 web网站 www.pemicro.com/support.

文件/资源

PEmicro CPROGCFZ PROG 闪存编程软件 [pdf] 用户指南
CPROGCFZ PROG 闪存编程软件,CPROGCFZ,PROG 闪存编程软件,编程软件,软件

参考

发表评论

您的电子邮件地址不会被公开。 必填字段已标记 *