相关文章
DediProg SPI NOR FLASH INSTALL
前言
本文章CMD LINE命令基于DediProg Emulator - 4.4.3
参考文档
EM100Pro帮助文档.pdf-WindowsServer文档类资源-CSDN下载
概述
DediProg Emulator提高了CMD LINE 命令行工具,可以在用户不打开GUI窗口时仍然可以实现GUI的相关功能,并且可以利用这个CMD LINE编写自动化脚本。
环境配置
DediProg提供的CMD LINE命令程序存放在DediProg的安装目录下:DediProg\Emulator\smucmd.exe,默认是不添加到系统环境变量里的,所以我们需要将它先添加到系统环境变量里:
如果想临时生效一次,可以在你的CMD窗口中输入如下命令:
1 | Set path=%path%;“c:\program files(x86)\DediProg\Emulator” |
然后在CMD窗口中输入:
可以看到如下输出则代表配置成功:
?
基础命令
-h [ --help ] | 用示例显示帮助消息 | -set | 设置芯片类型 | -stop | 停止模拟模式 | -start | 启动仿真模式 | -c [ --check ] | 检查仿真器状态和仿真器固件 | -b [ --blank ] | 空白检查EM100Pro/G2内容 | -r [ --read ] arg | 读取EM100Pro/G2内容并保存到bin/hex/s19或向控制台发送STDOUT | -d [ --download] arg | 将文件下载到EM100Pro/G2 | -s [ -- sum ] arg | 显示下载的内容校验 | -f [ -- fsum ] arg | 显示文件校验(需要使用文件) | --device arg | 使用所有基本开关 -1:仅激活连接到USB1的编程器 -n:只激活连接到USBn的程序员 注意:如果未使用\“--device \”,将执行该命令 在所有连接的编程器上使用相同的芯片类型和文件。 | -- list-device-id arg | -0:列出从USB1到USBn的所有程序员ID(默认值)” 注:顺序由操作系统在USB插件期间指定“ -1:提示连接到USB1的编程器的设备ID。" -n:提示连接到USBn的程序员的设备ID。 |
?
选项开关
-v [--verify ] | 验证文件和EM100Pro/G2内容 -仅适用于-d | -a [--addr] arg | 起始地址(例如-d x:\file.bin-a 0x000) -仅适用于-d-r | -l [ --length ] arg | 读取/下载的长度(字节)(例如-r x:\file.bin-l 0x10000) -仅适用于-d,-r | -x [ -- fill ] arg | 用[byte]数据填充其余区域(例如-d x:\file.bin-x 0xAA -仅适用于-d | -t [ --truncate ] | 如果文件大小大于芯片大小,则按芯片大小截断文件 -仅适用于-d |
其他选项
-g [ -- target ] arg | 目标选项 可用值: -1,芯片1(默认) -2,芯片2 | --hold | 模拟时保持Pin状态“ -1、默认值低(默认值)” -2、默认输入“ -3、默认浮动 注意:保持引脚状态将保持上次设置 | --reset arg | 重置目标系统 -1、禁用重置功能(默认) -2、启用复位功能 |
示例
1、模拟一个FLASH芯片
1 | smucmd --stop -- set ?MX25L3205 -d c:\ file .bin - v ?--start |
--stop代表如果当前EM100在工作的情况下则立即停止工作
--set代表设置要模拟的Flash类型
-d是要Download到Flash里的文件
-v是Download之后验证文件的正确性
-start是启动模拟
当开始模拟之后你可以打开GUI软件,GUI软件会显示出当前模拟状态:
你可以在GUI运行的阶段通过命令来改变EM100状态,同时GUI也会实时改变状态
执行之后可以看到GUI实时发生了变换
?
需要值得注意的是命令行与GUI的Config File使用的是共同的文件
每次我们执行命令配置好了之后,下一次执行命令就不需要加上相关配置命令了,只需要直接--start就可以了
支持的QSPI FLASH命令
SPI command | Instruction code | Description | Page Program | 0x02 | 页面程序(1至256字节) | Read | 0x03 | 读取命令 | WRDI | 0x04 | 写禁用 | RDSR | 0x05 | 读取状态寄存器 | RDFSR | 0x70 | 读取标志状态寄存器 | WREN | 0x06 | 写启用 | RDSFDP | 0x5A | 读取串行闪存参数 | Fast Read | 0x0B | 读取虚拟字节 | Fast Read Dual Output | 0x3B | 快速读取双输出,数据在两个引脚IO0和IO1上输出。 | Fast Read Dual IO | 0xBB | 快速读取双IO指令,在保持两个引脚IO0和IO1的同时进行访问。 | Fast Read Quad Output | 0x6B | 快速读取四路输出,数据输出在四个引脚IO0、IO1、IO2和IO3上。 | Fast Read Quad IO | 0xEB | 快速读取四路IO指令,维护四个引脚:IO0、IO1、IO2和IO3。哪一个访问 | Sector Erase | 0x20 | 不同粒度的扇区擦除 | Chip Erase | 0x60 | 芯片擦除 | Chip Erase | 0xC7 | 芯片擦除 | Block Erase | 0xD8 | 根据不同的块擦除粒度 | Read Jedec ID | 0x9F | 读取标识 | Read ID | 0x90 | 读取标识 |
?
|