Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Arm 通过M0和x2B上的SWD进行芯片擦除;_Arm_Cortex M_Swd - Fatal编程技术网

Arm 通过M0和x2B上的SWD进行芯片擦除;

Arm 通过M0和x2B上的SWD进行芯片擦除;,arm,cortex-m,swd,Arm,Cortex M,Swd,我想通过SWD闪存M0+设备。 这是由主机处理器而不是程序员实现的 我已经能够写入和验证RAM,但不能写入闪存 它似乎与M3/4核稍有不同,因此不适用于M0+ 也许你们中有人能帮我用兼容的序列在M0+上通过SWD执行芯片擦除和写入命令吗 谢谢 Daniel闪存擦除是特定于设备的。您通常不能只将值写入闪存,您需要使用闪存控制器先擦除一个块,然后重复执行写入/验证访问,直到值稳定。该写入阶段通常也由控制器自动完成 由于flash通常是运行代码的地方,所以您还需要首先将代码下载例程复制到ram中,并在

我想通过SWD闪存M0+设备。 这是由主机处理器而不是程序员实现的

我已经能够写入和验证RAM,但不能写入闪存

它似乎与M3/4核稍有不同,因此不适用于M0+

也许你们中有人能帮我用兼容的序列在M0+上通过SWD执行芯片擦除和写入命令吗

谢谢
Daniel闪存擦除是特定于设备的。您通常不能只将值写入闪存,您需要使用闪存控制器先擦除一个块,然后重复执行写入/验证访问,直到值稳定。该写入阶段通常也由控制器自动完成

由于flash通常是运行代码的地方,所以您还需要首先将代码下载例程复制到ram中,并在flash繁忙时从ram执行

所有访问都可以通过处理器或外部调试器执行。如果您想通过SWD执行访问,您的调试软件需要知道确切的目标设备、它的内存映射以及闪存控制器的要求。所有这些信息都应该在您正在使用的设备的数据表中(制造商的工具链将在某处提供支持)


如果您编写自己的flash例程,请务必遵守规范。闪存相当于一个模拟组件,即使不破坏芯片,也很容易进入难以恢复的状态。

闪存擦除是特定于设备的。您通常不能只将值写入闪存,您需要使用闪存控制器先擦除一个块,然后重复执行写入/验证访问,直到值稳定。该写入阶段通常也由控制器自动完成

由于flash通常是运行代码的地方,所以您还需要首先将代码下载例程复制到ram中,并在flash繁忙时从ram执行

所有访问都可以通过处理器或外部调试器执行。如果您想通过SWD执行访问,您的调试软件需要知道确切的目标设备、它的内存映射以及闪存控制器的要求。所有这些信息都应该在您正在使用的设备的数据表中(制造商的工具链将在某处提供支持)


如果您编写自己的flash例程,请务必遵守规范。闪存相当于一个模拟组件,即使你不销毁芯片,你也可能很容易进入难以恢复的状态。

swd与cortex-m对话,arm和cortex-m不是芯片,它们只是芯片供应商购买的ip的一部分。ahb/axi总线以外的任何设备都是芯片供应商的领地,尤其是闪存和闪存控制器。您使用的是什么芯片,以及您尝试现有工具时发生了什么?社署与cortex-m对话,arm和cortex-m不是芯片,它们只是芯片供应商使用的购买ip的一部分。ahb/axi总线之外的任何东西都是芯片供应商的领地,尤其是闪存和闪存控制器。您使用的是什么芯片,以及在尝试现有工具时发生了什么?