你好,我正在尝试燃烧内部闪存通过JTAG。但是得到一个错误:
[ERROR SPI Flash @19-02-28 17:51:23]附加的错误信息在JTAG地址0x7FC7C0C。(MSB第一):FF FF FF F8。
[ERROR SPI Flash @19-02-28 17:51:23]内存烧录失败。
我尝试了两种配置:
SPI_CLK: P2_0
SPI_EN: P2_3
SPI_DI: P2_4
SPI_DO: P2_9
而且
SPI_CLK: P2_0
SPI_EN: P2_3
SPI_DI: P2_9
SPI_DO: P2_4
设备:
嗨azimin,
您的意思是您在SmartSnippets工具箱的配置窗口中有您提到的配置吗?另外,你有定制板吗,或者你正在使用我们的开发板?如果您尝试通过UART连接,请让我知道您是否能够成功连接/刻录?另外,你是否能够通过JTAG连接/擦除SPI闪存,或者你唯一的问题是你不能烧毁它?
谢谢,PM_Dialog
>您的意思是您在SmartSnippets工具箱的配置窗口中有您提到的配置吗?
是的
还有,你有定制板吗,或者你正在使用我们的开发板?
我有一个定制板
>如果您尝试通过UART连接,请让我知道您是否能够成功连接/刻录?
第一次我成功地通过UART连接,但不能烧毁或删除固件。在此故障后,我无法再次连接,工具箱正在等待按复位按钮,但我没有它。
[INFO SPI Flash @19-03-01 11:53:51]固件文件C:\DiaSemi\DA14585_SDK\6.0.10.511\config\toolbox_resources/common/flash_program .bin已被选择下载。
[INFO SPI Flash @19-03-01 11:53:51]连接到COM16端口已成功打开。
[INFO SPI Flash @19-03-01 11:53:51]开始下载程序…
[INFO Booter @19-03-01 11:53:53] Successfully disconnect from port COM16。
[INFO SPI Flash @19-03-01 11:53:53]连接到COM16端口已成功打开。
[INFO Booter @19-03-01 11:53:53] Successfully disconnect from port COM16。
[INFO SPI Flash @19-03-01 11:53:53]成功下载固件文件到板。
[INFO SPI Flash @19-03-01 11:53:53]成功配置SPI Flash端口和引脚。
[INFO SPI Flash @19-03-01 11:53:58]开始从内存中读取32768字节。
[INFO SPI Flash @19-03-01 11:53:58]连接到COM16端口已成功打开。
[INFO Booter @19-03-01 11:54:05] Successfully disconnect from port COM16。
[INFO SPI Flash @19-03-01 11:54:05]读取已完成。读取32768字节。
[INFO SPI Flash @19-03-01 11:55:08]头记录已从hex文件prox_reporter_586.hex中删除。
[INFO SPI Flash @19-03-01 11:55:08]从文件prox_reporter_586.hex读取29872字节。
[INFO SPI Flash @19-03-01 11:55:13]开始在地址0x00000上刻录31016字节的数据。
[INFO SPI Flash @19-03-01 11:55:13]连接到COM16端口已成功打开。
[ERROR SPI Flash @19-03-01 11:55:18]在检查是否刻录成功时收到错误消息:FFFFFFF8。
[INFO Booter @19-03-01 11:55:18] Successfully disconnect from port COM16。
[ERROR SPI Flash @19-03-01 11:55:18]内存烧录失败。
[INFO SPI Flash @19-03-01 11:55:32]开始在地址0x00000上刻录31016字节的数据。
[INFO SPI Flash @19-03-01 11:55:32] Connection to COM16 port has successfully open。
[ERROR SPI Flash @19-03-01 11:55:37]在检查是否刻录成功时收到错误消息:FFFFFFF8。
[INFO Booter @19-03-01 11:55:37] Successfully disconnect from port COM16。
[ERROR SPI Flash @19-03-01 11:55:37]内存烧录失败。
[INFO SPI Flash @19-03-01 11:55:49]连接到COM16端口已成功打开。
[ERROR SPI Flash @19-03-01 11:55:49]在检查SPI擦除是否成功时收到错误消息:FFFFFFFE。
[INFO Booter @19-03-01 11:55:49] Successfully disconnect from port COM16。
[ERROR SPI Flash @19-03-01 11:55:49] SPI内存擦除失败。
[INFO SPI Flash @19-03-01 11:56:07]固件文件C:\DiaSemi\DA14585_SDK\6.0.10.511\config\toolbox_resources/common/flash_program .bin已被选择下载。
[INFO SPI Flash @19-03-01 11:56:08]连接到COM16端口已成功打开。
[INFO SPI Flash @19-03-01 11:56:08]开始下载程序…
[INFO Booter @19-03-01 11:56:09] Successfully disconnect from port COM16。
[INFO SPI Flash @19-03-01 11:56:10]连接到COM16端口已成功打开。
[INFO Booter @19-03-01 11:56:10] Successfully disconnect from port COM16。
[INFO SPI Flash @19-03-01 11:56:10]成功下载固件文件到板。
[INFO SPI Flash @19-03-01 11:56:10]成功配置SPI Flash端口和引脚。
[INFO SPI Flash @19-03-01 11:56:13]连接到COM16端口已成功打开。
[INFO Booter @19-03-01 11:56:13] Successfully disconnect from port COM16。
[INFO SPI Flash @19-03-01 11:56:13] SPI内存擦除完成成功。
[INFO SPI Flash @19-03-01 11:56:13]读取内存以验证其内容后擦除…
[INFO SPI Flash @19-03-01 11:56:13]连接到COM16端口已成功打开。
[ERROR SPI Flash @19-03-01 11:56:13]读取板时收到错误消息:FFFFFFFC。
[INFO Booter @19-03-01 11:56:14]成功从COM16端口断开连接。
[ERROR SPI Flash @19-03-01 11:56:14]读取内存失败。
[INFO SPI Flash @19-03-01 11:56:14]读取内存刷新其内容....
[INFO SPI Flash @19-03-01 11:56:14]连接到COM16端口已成功打开。
[ERROR SPI Flash @19-03-01 11:56:14]读取板时收到错误消息:FFFFFFFC。
[INFO Booter @19-03-01 11:56:14]成功从COM16端口断开连接。
[ERROR SPI Flash @19-03-01 11:56:14]读取内存失败。
[INFO SPI Flash @19-03-01 11:58:03]开始从内存中读取32768字节。
[INFO SPI Flash @19-03-01 11:58:03] Connection to COM16 port has successfully open。
[ERROR SPI Flash @19-03-01 11:58:03]读取单板时收到错误消息:FFFFFFFC。
[INFO Booter @19-03-01 11:58:03] Successfully disconnect from port COM16。
[ERROR SPI Flash @19-03-01 11:58:03]读取内存失败。
[INFO SPI Flash @19-03-01 11:58:06]固件文件C:\DiaSemi\DA14585_SDK\6.0.10.511\config\toolbox_resources/common/flash_program .bin已被选择下载。
[INFO SPI Flash @19-03-01 11:58:06]连接到COM16端口已成功打开。
[INFO SPI Flash @19-03-01 11:58:06]开始下载程序…
[ACTION SPI Flash @19-03-01 11:58:07]请按下单板上的硬件复位按钮开始下载过程。
[ERROR SPI Flash @19-03-01 11:58:22] Timeout:重置信号未检测到超过16000 msecs。
[INFO Booter @19-03-01 11:58:22] Successfully disconnect from port COM16。
[INFO Booter @19-03-01 11:58:22] Successfully disconnect from port COM16。
[ERROR SPI Flash @19-03-01 11:58:22]下载固件文件到单板失败。
[ERROR SPI Flash @19-03-01 11:58:22]配置SPI Flash端口和引脚失败。
[INFO SPI Flash @19-03-01 11:58:30]固件文件C:\DiaSemi\DA14585_SDK\6.0.10.511\config\toolbox_resources/common/flash_program .bin已被选择下载。
[INFO SPI Flash @19-03-01 11:58:30] Connection to COM16 port has successfully open。
[INFO SPI Flash @19-03-01 11:58:30]开始下载程序…
[ACTION SPI Flash @19-03-01 11:58:31]请按下单板上的硬件复位按钮开始下载过程。
[ERROR SPI Flash @19-03-01 11:58:46] Timeout:重置信号未检测到超过16000 msecs。
[INFO Booter @19-03-01 11:58:46] Successfully disconnect from port COM16。
[ERROR SPI Flash @19-03-01 11:58:46]下载固件文件到单板失败。
[ERROR SPI Flash @19-03-01 11:58:46]配置SPI Flash端口和引脚失败。
[INFO SPI Flash @19-03-01 12:08:13]固件文件C:\DiaSemi\DA14585_SDK\6.0.10.511\config\toolbox_resources/common/flash_program .bin已被选择下载。
[INFO SPI Flash @19-03-01 12:08:13]连接到COM16端口已成功打开。
[INFO SPI Flash @19-03-01 12:08:13]开始下载程序…
[ACTION SPI Flash @19-03-01 12:08:14]请按下单板上的硬件复位按钮开始下载过程。
[ERROR SPI Flash @19-03-01 12:08:29] Timeout:重置信号未检测到超过16000 msecs。
>此外,你是否能够连接/擦除SPI闪存在JTAG或你唯一的问题是,你不能烧毁它?
不,我不能删除,但连接似乎没问题
嗨azimin,
如果你有一个自定义板,你可以尝试通过Keil IDE下载固件到SystemRAM吗?我建议你这样做的原因是为了确保你的电路板功能齐全,所以我建议你使用SDK的ble_app_bearbone示例,为DA14586编译它,并将固件下载到SysRAM?你能从BLE移动应用程序中检测到你的设备吗?你也可以使用SmartSnnippets工具箱的功能分析器来确保你的设备在做广告。
谢谢,PM_Dialog
是的,我的电路板正在使用Keil IDE,代码正在从RAM中运行。我可以通过手机应用看到我的设备
嗨azimin,
你不能连接和刻录SPI闪存的最可能的原因是为什么你没有一个复位电路到你的自定义板。SmartSnippets工具箱中的SPI flash配置是正确的,根据DA14586数据表。在所有的参考设计中,我们都有一个重置按钮,当尝试连接时,用户可以重置电路板,以便下载UART的flas_programmer或jtag的jtag_programmer。智能代码片段不支持flash功能,因此SDK包含了flash程序员项目,该项目位于6.0.10.511\utilities\flash_programmer之下。如果你检查有两个输出从uart和一个从jtag。当您连接到智能代码段并按下重置键时,您将下载两个二进制文件中的一个。我问你个问题。您使用的是哪个版本的JTAG ?
谢谢,PM_Dialog
你好,
最后我做了一个复位电路板。我重置了芯片,然后按下连接按钮。
在J-link的情况下,我得到了这个日志:
[INFO SPI Flash @19-03-12 14:47:16]找到ID为0x0BB11477的SW-DP
[INFO SPI Flash @19-03-12 14:47:16]使用预配置的AP[0]作为AHB-AP与核心通信
[INFO SPI Flash @19-03-12 14:47:16] AP-IDR: 0x04770021, Type: AHB-AP
[INFO SPI Flash @19-03-12 14:47:16] AHB-AP ROM: 0xE00FF000(基本地址。第一个ROM表)
[INFO SPI Flash @19-03-12 14:47:16]发现Cortex-M0 r0p0, Little endian。
[INFO SPI Flash @19-03-12 14:47:16] FPUnit: 4个代码(BP)插槽和0个文字插槽
[INFO SPI Flash @19-03-12 14:47:16] CoreSight组件:
[INFO SPI Flash @19-03-12 14:47:16] ROMTbl[0] @ E00FF000
[INFO SPI Flash @19-03-12 14:47:16] ROMTbl[0][0]: E000E000, CID: B105E00D, PID: 000BB008 SCS
[INFO SPI Flash @19-03-12 14:47:16] ROMTbl[0][1]: E0001000, CID: B105E00D, PID: 000BB00A DWT
[INFO SPI Flash @19-03-12 14:47:16] ROMTbl[0][2]: E0002000, CID: B105E00D, PID: 000BB00B FPB
[INFO SPI Flash @19-03-12 14:47:16]固件文件C:\DiaSemi\DA14585_SDK\6.0.10.511\config\toolbox_resources/common/jtag_programmer.bin已被选择下载。
[INFO SPI Flash @19-03-12 14:47:16]成功下载固件文件到板。
[INFO SPI Flash @19-03-12 14:47:16]成功配置SPI Flash端口和引脚。
[INFO SPI Flash @19-03-12 14:47:19]开始在地址0x00000上刻录31016字节数据的内存。
[ERROR SPI Flash @19-03-12 14:47:29]内存烧录失败。
在UART的情况下,我得到了这个:
[INFO SPI Flash @19-03-12 14:44:25]固件文件C:\DiaSemi\DA14585_SDK\6.0.10.511\config\toolbox_resources/common/flash_programmer.bin已被选择下载。
[INFO SPI Flash @19-03-12 14:44:26]连接到COM16端口已成功打开。
[INFO SPI Flash @19-03-12 14:44:26]开始下载程序…
[INFO Booter @19-03-12 14:44:27] Successfully disconnect from port COM16。
[INFO SPI Flash @19-03-12 14:44:28]连接到COM16端口已成功打开。
[INFO Booter @19-03-12 14:44:28] Successfully disconnect from port COM16。
[INFO SPI Flash @19-03-12 14:44:28]成功下载固件文件到板。
[INFO SPI Flash @19-03-12 14:44:28]成功配置SPI Flash端口和引脚。
[INFO SPI Flash @19-03-12 14:44:37]开始在地址0x00000上刻录31016字节数据的内存。
[INFO SPI Flash @19-03-12 14:44:37]连接到COM16端口已成功打开。
[ERROR SPI Flash @19-03-12 14:44:53]在等待接收数据包长度的最大有效字节时超时(10000 msecs)
[INFO Booter @19-03-12 14:44:53] Successfully disconnect from port COM16。
[ERROR SPI Flash @19-03-12 14:44:53]内存烧录失败。
或:
[INFO SPI Flash @19-03-12 15:26:28]固件文件C:\DiaSemi\DA14585_SDK\6.0.10.511\config\toolbox_resources/common/flash_programmer.bin已被选择下载。
[INFO SPI Flash @19-03-12 15:26:29]连接到COM16端口已成功打开。
[INFO SPI Flash @19-03-12 15:26:29]开始下载程序…
[INFO Booter @19-03-12 15:26:30] Successfully disconnect from port COM16。
[INFO SPI Flash @19-03-12 15:26:31] Connection to COM16 port has successfully open。
[INFO Booter @19-03-12 15:26:31] Successfully disconnect from port COM16。
[INFO SPI Flash @19-03-12 15:26:31] Successfully download firmware file to the board.日志含义
[INFO SPI Flash @19-03-12 15:26:31]成功配置SPI Flash端口和引脚。
[INFO SPI Flash @19-03-12 15:27:24]开始从内存中读取32768字节。
[INFO SPI Flash @19-03-12 15:27:24]连接到COM16端口已成功打开。
[INFO Booter @19-03-12 15:27:31]成功从COM16端口断开连接。
[INFO SPI Flash @19-03-12 15:27:31]阅读已完成。读取32768字节。
[INFO SPI Flash @19-03-12 15:27:35]开始在地址0x00000上刻录31016字节数据的内存。
[INFO SPI Flash @19-03-12 15:27:35]连接到COM16端口已成功打开。
[ERROR SPI Flash @19-03-12 15:27:41]在检查是否烧录成功时收到错误消息:FFFFFFF8。
[INFO Booter @19-03-12 15:27:41]成功从COM16端口断开连接。
[ERROR SPI Flash @19-03-12 15:27:41]内存烧录失败。
我使用的是J-Link v6.42 2c
使用Keil运行时调试板的工作
嗨azimin,
如果我理解正确的话,你可以从flash程序员连接,但你不能刻录SPI flash?你使用哪个SPI flash到你的自定义板?还有,它是空的吗?如果没有,你能把它擦掉吗?
谢谢,PM_Dialog
你好,我用的是内置闪存。最后我发现了问题-我忘记连接VCC_FLASH。不,有用。谢谢你的努力。
嗨azimin,
因为你没有VCC_FLASH连接,你将无法访问内部SPI Flash。很高兴你把问题解决了。干杯!
谢谢,PM_Dialog