跳到主要内容
版本:Next

3.2.4:数据读写

PowerWriter支持所有数据段的查空、读取、擦除、写入、校验五种操作,主流的数据段,包括:

  • Program Memory(Main Flash)主程序存储空间
  • EEPROM 用户数据存储区
  • OTP 用户一次可编程存储区(无法擦除,只能写入一次)
提示

部分芯片包含其他区间,如Nuvoton 的SPI 区,APROM 、LDROM、DATA等区块。

在操作数据区时需要建立一个概念,所有的数据区在PowerWriter 上处于同一级别,以及同样的方法处理,所以在操作流程上也是高度相似的,下面以Program Memory 为例说明数据区域的读写方法。

警告

3.2.4.1 代码空间(Program Memory)

image-20220223134717732

如图所示,Program Memory 区域支持:

  • 读取Program Memory。
  • 查空Program Memory。
  • 擦除Program Memory。
  • 编程Program Memory。
  • 校验Program Memory。

3.2.4.1.1 读取Program Memory

点击菜单中的读取Program Memory,即可将数据读取到缓冲区中,如下所示:

image-20220223135048959

提示
  • 可以通过工具栏导出数据按钮导出数据到磁盘文件。
  • 导出数据时可以在缓冲区标记导出的起始地址和结束地址,实现自由导出区段。
  • 读取的数据存储在缓冲区编辑器中。

3.2.4.1.2 查空Program Memory

通过点击菜单中的查空Program Memory按钮来查询芯片是否为空片,如图所示:

image-20220223135732534

警告
  • 如果芯片为空片,则不会有对话框信息,只有日志栏信息,如果不为空片,则会弹出读取到不为空片的第一个扇区。
  • 查空芯片不一定是全为 0xFF,部分芯片特性的原因,0x00,也为空片,取决于芯片擦除后的值为多少。

3.2.4.1.3 擦除Program Memory

通过点击菜单中的擦除Program Memory按钮来擦除芯片,如图所示:

image-20220223140040292

警告
  • 擦除功能默认为片擦除,如需擦除扇区,请选择对应的扇区,使用 擦除选中按钮来擦除扇区。
  • 擦除失败时,请检查是否有读保护或者写保护。

3.2.4.1.4 编程Program Memory

通过点击菜单中的编程 Program Memory按钮来编程对应的数据区,如图所示:

image-20220223140254331

警告
  • 如果有添加文件:则会写入导入的文件到目标芯片中,支持多文件,随机数据等。
  • 如果没有添加文件:则会写入当前的缓冲区到目标芯片中。

3.2.4.1.5 校验Program Memory

通过点击菜单中的校验Program Memory按钮来查询芯片是否为空片,如图所示:

image-20220223140547028

警告
  • 如果有添加文件:则会校验导入的文件,支持多文件。
  • 如果没有添加文件:则会校验当前的缓冲区。
  • 随机数据:随机数据不会参与校验!!

3.2.4.2 数据导出

参考 芯片数据导出 将目标芯片数据保存到磁盘文件。

3.2.4.3 其他区域 (EEPROM、OTP等)

其他数据区,也同样支持类似 Program Memory 的操作方式,支持读取,查空,擦除(OTP 不支持擦除),写入,校验,操作入口见其他数据区操作。

提示

其他数据区操作是 Program Memory的一个子集,暂未做多固件支持,其他功能都提供。

3.2.4.4 工具栏按钮

读写目标芯片数据,常规的方式是使用菜单入口,进阶的方式是使用快捷键,高阶方法使用工具栏快速入口,如下所示:

image-20220223141454586

从左到右分别为:

  • 查空当前页。
  • 擦除当前页。
  • 读取当前页。
  • 编程当前页。
  • 校验当前页。

使用时,将标签页切换到对应的页面,执行如上的五个按钮,即可快速在线操作当前页面。

提示

当前页指PowerWriter 客户端的主标签页,如下所示:

image-20220223141756914

3.2.4.5 其他在线操作

Power Writer 同时提供其他常见的在线功能,比如:

  • 复位目标芯片。
  • 读取CID。
  • 任意地址读数据等操作。

这些操作都可以通过菜单进入,也可以使用工具栏按钮快捷操作。

img

3.2.4.6 编程失败时处理

参考 在线编程(烧写)失败 获取处理方法。