SmartSnippets工具箱SPI Flash编程失败了

了解更多FAQsTutorials

10个职位/0个新职位
Last post
阿齐明
离线
Last seen:2个月1周前
Joined:2018-12-12 12:11
SmartSnippets工具箱SPI Flash编程失败了

你好,我正试图通过JTAG烧录内部闪存。但是得到一个错误:
[ERROR SPI Flash@19-02-28 17:51:23]JTAG地址0x7FC7C0C处的附加错误信息(MSB优先):FF F8。
[错误SPI闪存@19-02-28 17:51:23]内存刻录失败。

我尝试了两种配置:
SPI_CLK: P2_0
SPI\ U EN:第2\ U 3页
SPI\ U DI:P2\ U 4
SPI\ U DO:第9页

SPI_CLK: P2_0
SPI\ U EN:第2\ U 3页
SPI\ U DI:P2\ U 9
SPI\u DO:第2\u 4页

设备:
PM_Dialog
离线
Last seen:2天9小时前
Staff
Joined:2018-02-08 11:03
嗨,阿齐明,

嗨,阿齐明,

Do you mean that you have the configurations you have mentioned in the Configuration window of SmartSnippets toolbox? Also, do you have a custom board, or you are using any of our development boards? If you try to connect over UART, could you please let me know if you are able to connect/burn successfully? Also, are you able to connect/erase the SPI flash over JTAG or your only issue is that you can not burn it?

Thanks, PM_Dialog

阿齐明
离线
Last seen:2个月1周前
Joined:2018-12-12 12:11
>Do you mean that you have

>您的意思是您拥有SmartSnippets工具箱的配置窗口中提到的配置吗?
是的

>另外,您是否有定制板,或者您正在使用我们的任何开发板?
我有一个定制板

> If you try to connect over UART, could you please let me know if you are able to connect/burn successfully?
第一次我成功地通过UART连接,但无法烧录或擦除固件。在这个错误后,我无法再次连接,工具箱正在等待按复位按钮,但我没有它。
[INFO SPI Flash@19-03-01 11:53:51]固件文件C:\DiaSemi\DA14585\u SDK\6.0.10.511\config\toolbox\u resources/common/Flash_程序员.bin已选择下载。
[INFO SPI Flash@19-03-01 11:53:51]已成功打开到COM16端口的连接。
[INFO SPI Flash @19-03-01 11:53:51] Started download procedure...
[INFO Booter @19-03-01 11:53:53] Successfully disconnected from port COM16.
[INFO SPI Flash@19-03-01 11:53:53]已成功打开到COM16端口的连接。
[INFO Booter @19-03-01 11:53:53] Successfully disconnected from port COM16.
[INFO SPI Flash@19-03-01 11:53:53]已成功将固件文件下载到主板。
[INFO SPI Flash@19-03-01 11:53:53]已成功配置SPI闪存端口和引脚。
[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]已成功从端口COM16断开连接。
[INFO SPI Flash@19-03-01 11:54:05]读取已完成。读取32768字节。
[INFO SPI Flash @19-03-01 11:55:08] Header records have been removed from hex file prox_reporter_586.hex.
[INFO SPI Flash@19-03-01 11:55:08]从prox\u reporter\u 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] Received error message while checking whether burning was successful: FFFFFFF8.
[INFO Booter@19-03-01 11:55:18]已成功从端口COM16断开连接。
[错误SPI闪存@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]已成功打开到COM16端口的连接。
[ERROR SPI Flash@19-03-01 11:55:37]检查刻录是否成功时收到错误消息:fffffffff 8。
[INFO Booter@19-03-01 11:55:37]已成功从端口COM16断开连接。
[错误SPI闪存@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擦除是否成功时收到错误消息:ffffffe。
[INFO Booter@19-03-01 11:55:49]已成功从端口COM16断开连接。
[错误SPI闪存@19-03-01 11:55:49]SPI内存擦除失败。
[INFO SPI Flash @19-03-01 11:56:07] Firmware File C:\DiaSemi\DA14585_SDK\6.0.10.511\config\toolbox_resources/common/flash_programmer.bin has been selected for downloading.
[INFO SPI Flash@19-03-01 11:56:08]已成功打开到COM16端口的连接。
[INFO SPI Flash @19-03-01 11:56:08] Started download procedure...
[INFO Booter @19-03-01 11:56:09] Successfully disconnected from port COM16.
[INFO SPI Flash@19-03-01 11:56:10]已成功打开到COM16端口的连接。
[INFO Booter@19-03-01 11:56:10]已成功从端口COM16断开连接。
[INFO SPI Flash @19-03-01 11:56:10] Successfully downloaded firmware file to the board.
[INFO SPI Flash@19-03-01 11:56:10]已成功配置SPI闪存端口和引脚。
[INFO SPI Flash@19-03-01 11:56:13]已成功打开到COM16端口的连接。
[INFO Booter@19-03-01 11:56:13]已成功从端口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]从板读取时收到错误消息:ffffffffffc。
[INFO Booter@19-03-01 11:56:14]已成功从端口COM16断开连接。
[错误SPI闪存@19-03-01 11:56:14]读取内存失败。
[INFO SPI Flash @19-03-01 11:56:14] Reading memory to refresh its contents....
[INFO SPI Flash@19-03-01 11:56:14]已成功打开到COM16端口的连接。
[ERROR SPI Flash @19-03-01 11:56:14] Received error message while reading from the board: FFFFFFFC.
[INFO Booter@19-03-01 11:56:14]已成功从端口COM16断开连接。
[错误SPI闪存@19-03-01 11:56:14]读取内存失败。
[INFO SPI Flash @19-03-01 11:58:03] Started reading 32768 bytes from memory.
[INFO SPI Flash @19-03-01 11:58:03] Connection to COM16 port has successfully opened.
[ERROR SPI Flash@19-03-01 11:58:03]从板读取时收到错误消息:ffffffffffc。
[INFO Booter@19-03-01 11:58:03]已成功从端口COM16断开连接。
[ERROR SPI Flash @19-03-01 11:58:03] Failed reading memory.
[INFO SPI Flash@19-03-01 11:58:06]固件文件C:\DiaSemi\DA14585\u SDK\6.0.10.511\config\toolbox\u resources/common/Flash_程序员.bin已选择下载。
[INFO SPI Flash@19-03-01 11:58:06]已成功打开到COM16端口的连接。
[INFO SPI Flash @19-03-01 11:58:06] Started download procedure...
[操作SPI Flash@19-03-01 11:58:07]请按主板上的硬件重置按钮开始下载过程。
[错误SPI闪烁@19-03-01 11:58:22]超时:超过16000毫秒未检测到复位信号。
[INFO Booter @19-03-01 11:58:22] Successfully disconnected from port COM16.
[INFO Booter @19-03-01 11:58:22] Successfully disconnected from port COM16.
[ERROR SPI Flash @19-03-01 11:58:22] Failed downloading firmware file to the board.
[错误SPI闪存@19-03-01 11:58:22]配置SPI闪存端口和引脚失败。
[INFO SPI Flash@19-03-01 11:58:30]固件文件C:\DiaSemi\DA14585\u SDK\6.0.10.511\config\toolbox\u resources/common/Flash_程序员.bin已选择下载。
[INFO SPI Flash@19-03-01 11:58:30]已成功打开到COM16端口的连接。
[INFO SPI Flash@19-03-01 11:58:30]已开始下载过程。。。
[操作SPI Flash@19-03-01 11:58:31]请按主板上的硬件重置按钮开始下载过程。
[错误SPI闪烁@19-03-01 11:58:46]超时:超过16000毫秒未检测到复位信号。
[INFO Booter @19-03-01 11:58:46] Successfully disconnected from port COM16.
[错误SPI Flash@19-03-01 11:58:46]无法将固件文件下载到主板。
[错误SPI闪存@19-03-01 11:58:46]配置SPI闪存端口和引脚失败。
[INFO SPI Flash@19-03-01 12:08:13]固件文件C:\DiaSemi\DA14585\u SDK\6.0.10.511\config\toolbox\u resources/common/Flash_程序员.bin已选择下载。
[INFO SPI Flash@19-03-01 12:08:13]已成功打开到COM16端口的连接。
[INFO SPI Flash@19-03-01 12:08:13]已开始下载过程。。。
[操作SPI Flash@19-03-01 12:08:14]请按主板上的硬件重置按钮开始下载过程。
[错误SPI闪烁@19-03-01 12:08:29]超时:超过16000毫秒未检测到重置信号。

>另外,您是否能够通过JTAG连接/擦除SPI闪存,或者您唯一的问题是无法刻录它?
No, I cant to erase, but connection seems okay

PM_Dialog
离线
Last seen:2天9小时前
Staff
Joined:2018-02-08 11:03
嗨,阿齐明,

嗨,阿齐明,

In case you have a custom board, could you please try to download firmware into the SystemRAM through Keil IDE? The reason that I suggest you that is to make sure that your board is fully functional, so I would suggest you to use the ble_app_bearbone example of the SDK, compile it for DA14586 and the download the firmware into SysRAM? Are you able to detect your device from a BLE mobile application? Also you could use the power profiler of SmartSnnippets toolbox to make sure that your device is advertising.

Thanks, PM_Dialog

阿齐明
离线
Last seen:2个月1周前
Joined:2018-12-12 12:11
是的,我的董事会正在与

是的,我的董事会是与基尔IDE和代码是从RAM运行。我可以通过移动应用程序查看我的设备

PM_Dialog
离线
Last seen:2天9小时前
Staff
Joined:2018-02-08 11:03
嗨,阿齐明,

嗨,阿齐明,

The most possible reason why you are not able to connect and burn the SPI flash is why you are not have a reset circuit to your custom board. The SPI flash configuration from the SmartSnippets toolbox are correct and according to DA14586 datasheet. In all reference designs we have a reset button, when trying to connect the user can reset the board in order to download the flas_programmer in case of UART or the jtag_programmer in case of jtag. The smart snippets does not support flash functionalities, so the SDK includes the flash programmer project which is under 6.0.10.511\utilities\flash_programmer. If you check there are 2 output on from uart and one from jtag. When you are connected to smart snippets and press reset, you download one of the two binaries. Let me ask you something. Which version of JTAG are you using?

Thanks, PM_Dialog

阿齐明
离线
Last seen:2个月1周前
Joined:2018-12-12 12:11
你好,

你好,

最后我做了一块带复位电路的电路板。我重置芯片,然后按下连接按钮。

In case of J-link I got this log:

[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
[信息SPI闪存@19-03-12 14:47:16]AHB-AP ROM:0xE00FF000(基本地址。(第一个ROM表)
[信息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]核心瞄准具组件:
[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\u SDK\6.0.10.511\config\toolbox\u resources/common/jtag_程序员.bin已选择下载。
[INFO SPI Flash@19-03-12 14:47:16]已成功将固件文件下载到主板。
[INFO SPI Flash @19-03-12 14:47:16] Successfully configured SPI Flash ports and pins.
[INFO SPI Flash @19-03-12 14:47:19] Started burning memory with 31016 bytes of data at address 0x00000.
[错误SPI闪存@19-03-12 14:47:29]内存刻录失败。

在UART的情况下,我得到:

[INFO SPI Flash@19-03-12 14:44:25]固件文件C:\DiaSemi\DA14585\u SDK\6.0.10.511\config\toolbox\u resources/common/Flash_程序员.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 disconnected from port COM16.
[INFO SPI Flash @19-03-12 14:44:28] Connection to COM16 port has successfully opened.
[INFO Booter@19-03-12 14:44:28]已成功从端口COM16断开连接。
[INFO SPI Flash@19-03-12 14:44:28]已成功将固件文件下载到主板。
[INFO SPI Flash@19-03-12 14:44:28]已成功配置SPI闪存端口和引脚。
[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] Timeout while waiting to receive the most significant byte of packet length (10000 msecs)
[INFO Booter@19-03-12 14:44:53]已成功断开与端口COM16的连接。
[错误SPI闪存@19-03-12 14:44:53]内存刻录失败。

或者这个:

[INFO SPI Flash@19-03-12 15:26:28]固件文件C:\DiaSemi\DA14585\u SDK\6.0.10.511\config\toolbox\u resources/common/Flash_程序员.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 disconnected from port COM16.
[INFO SPI Flash@19-03-12 15:26:31]已成功打开到COM16端口的连接。
[INFO Booter @19-03-12 15:26:31] Successfully disconnected from port COM16.
[INFO SPI Flash@19-03-12 15:26:31]已成功将固件文件下载到主板。
[INFO SPI Flash@19-03-12 15:26:31]已成功配置SPI闪存端口和引脚。
[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] Successfully disconnected from port 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]检查刻录是否成功时收到错误消息:fffffffff 8。
[INFO Booter@19-03-12 15:27:41]已成功从端口COM16断开连接。
[ERROR SPI Flash @19-03-12 15:27:41] Memory burning failed.

我使用的是J-linkv6.42c

通过Keil运行时调试,电路板可以正常工作

PM_Dialog
离线
Last seen:2天9小时前
Staff
Joined:2018-02-08 11:03
嗨,阿齐明,

嗨,阿齐明,

如果我理解正确,你可以连接从闪存编程,但你不能烧SPI闪存?你用哪种SPI闪存来定制电路板?还有,是空的吗?如果没有,你能删除它吗?

Thanks, PM_Dialog

阿齐明
离线
Last seen:2个月1周前
Joined:2018-12-12 12:11
你好,I'm using internal

你好,我用的是内部闪存。最后我发现了问题-我忘了连接VCU闪存。不,它有效。谢谢你的努力。

PM_Dialog
离线
Last seen:2天9小时前
Staff
Joined:2018-02-08 11:03
嗨,阿齐明,

嗨,阿齐明,

由于没有连接VCC\ U闪存,因此无法访问内部SPI闪存。很高兴你解决了问题。干杯!

Thanks, PM_Dialog