DA14681如何支持SPI Flash MX25R1635F

⚠️
Hi there.. thanks for coming to the forums. Exciting news! we’re now in the process of moving to our new forum platform that will offer better functionality and is contained within the main Dialog website. All posts and accounts have been migrated. We’re now accepting traffic on the new forum only - please POST any new threads at//www.wsdof.com/support. We’ll be fixing bugs / optimising the searching and tagging over the coming days.
10个帖子/ 0新
Last post
guxiang
Offline
最后一次露面:3周5天前
加入:2017-05-12 04:18
DA14681如何支持SPI Flash MX25R1635F

Hi, dialog
We want to run application code in MX25R1635F with DA14681 basic devkit. We had replaced the board default flash W25Q08EW with MX25R1635F in hardware. Now it can download the code to MX25R1635F with SmartSnippets , but it couldn't work well. Is that we should modify something in config file or change something on bootloader? Please give us some guidance.

设备:
PM_DIALOG.
Offline
最后一次露面:15 hours 15 min ago
工作人员
加入:2018-02-08 11:03
Hi guxiang,

Hi guxiang,

DA1468X SDK驱动程序子系统当前支持特定的QSPI闪存设备,不支持MX25R1635F。但是,它提供了为其他闪存设备添加支持的功能。我会强烈建议你看看10.2.1.7为新的闪存设备添加支持section ofUM-B-044 User Manual: DA1468x Software Platform Reference (HTML)用户手册。您可以下载此用户手册表单我们的DA1468X支持门户。您是否遵循本文档中描述的过程?另外,你能澄清它正在运作良好吗?设备是否正确启动?如果您读取了闪存的第一个地址0x08000000然后你必须提取qQvalue. To do that just run a debug session and pause the code execution. Then at Memory Browser displayed window (if not displayed go to menu tools Window->ShowView->MemoryBrowser) write the aforementioned address. This is a way to check the correct functionality of the flash.

谢谢,PM_DIALOG.

guxiang
Offline
最后一次露面:3周5天前
加入:2017-05-12 04:18
hi , PM_Dialog

hi , PM_Dialog
I think we have done the necessary procedure described in the document "UM-B-044 User Manual: DA1468x Software Platform Reference --10.2.1.7 Adding support for a new flash device section" . What we have done is as follow:
1.准备“qspi_mx25r1635f.h”,并添加了几个宏,如“#define dg_configflash_manufacturer_id macronix_header_file”qspi_mx25r1635.h“...”在“custom_config_qspi.h”中,并在“custom_config”中添加了它们.h“的。相对配置文件请检查附件文件。

2.构建“UartBoot”项目

3.构建“CLI_PRIGHIMMAR”项目,“Libprogrammer”项目

4.构建应用程序项目并执行“program_qspi_jtag_win”,但控制台打印遵循信息:
“////// ///////////////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////////
Configuration saved to C:\Users\ADMINI~1\AppData\Local\Temp\cfg_2779.ini file.
E:\DebugProject\DA1468x_SDK_BTLE_v_1.0.8_prj\utilities\scripts\qspi>"..\..\..\binaries\cli_programmer.exe" --cfg "C:\Users\ADMINI~1\AppData\Local\Temp\cfg_2779.ini" --prod-id DA14681-01 gdbserver write_qspi_exec "E:\DebugProject\DA1468x_SDK_BTLE_v_1.0.8_prj\projects\dk_apps\templates\freertos_retarget\DA14681-01-Release_QSPI\freertos_retarget.bin"
cli_programmer 1.23
版权所有(c)2016年对话半导体雷竞技电竞平台

使用Internal UartBoot.bin未指定引导加载程序文件

写作到地址:0x00000000偏移:0x00000000块大小:0x00000000
验证写入QSPI地址0x0失败。重试......
写作到地址:0x00000000偏移:0x00000000块大小:0x00000000
验证写入QSPI地址0x0失败。重试......
写作到地址:0x00000000偏移:0x00000000块大小:0x00000000
验证写入QSPI地址0x0失败。重试......
写作到地址:0x00000000偏移:0x00000000块大小:0x00000000
验证写入QSPI地址0x0失败。重试......
写作到地址:0x00000000偏移:0x00000000块大小:0x00000000
验证写入QSPI地址0x0失败。重试......
写作到地址:0x00000000偏移:0x00000000块大小:0x00000000
验证写入QSPI地址0x0失败。重试......
写作到地址:0x00000000偏移:0x00000000块大小:0x00000000
验证写入QSPI地址0x0失败。重试......
写作到地址:0x00000000偏移:0x00000000块大小:0x00000000
验证写入QSPI地址0x0失败。重试......
写作到地址:0x00000000偏移:0x00000000块大小:0x00000000
验证写入QSPI地址0x0失败。重试......
写作到地址:0x00000000偏移:0x00000000块大小:0x00000000
验证写入QSPI地址0x0失败。重试......
写作到地址:0x00000000偏移:0x00000000块大小:0x00000000
验证写入QSPI地址0x0失败。重试......
Write to qspi failed. Abort.
编写可执行失败:未知错误(1)
""///////////////////////////////////////////////////////////////////////////////////////////////////////////////////

我们上面做的test on sdk1.0.12 .
但我们可以在没有更改驱动子子系统(使用W25Q08E默认驱动程序)的情况下成功下载SDK1.0.6上的图像,SDK1.0.6上的控制台信息:
//////// //////////////////////////////////////////////////////////////////////////////////////////////////////////////
脚本文件已成功读取。
处理脚本文件...
J-Link connection not established yet but required for command.
通过USB ... o.k连接到J-Link。
固件:J-Link V9编译2017年4月21日11:08:06
硬件版本:v9.40
S / N:59410355
许可证:RDI,GDB,FlashDL,FlashBP,JFlash
VTref = 3.332V

Sleep(1000)

选择4000 kHz作为目标接口速度

Selecting SWD as current target interface.

Target connection not established yet but required for command.
设备“Cortex-M0”选择。

找到带ID 0x0BB11477的SW-DP
没有预选的ap。假设AP [0]是AHB-AP
AP-IDR:0x04770021,类型:AHB-AP
AHB-AP ROM: 0xE00FF000 (Base addr. of first ROM table)
发现Cortex-M0 R0P0,小endian。
FPUnit: 4 code (BP) slots and 0 literal slots
Coresight组件:
romtbl [0] @ E00FF000
ROMTbl[0][0]: E000E000, CID: B105E00D, PID: 000BB008 SCS
Romtbl [0] [1]:E0001000,CID:B105E00D,PID:000BB00A DWT
ROMTbl[0][2]: E0002000, CID: B105E00D, PID: 000BB00B FPB
Cortex-M0 identified.
Writing DEADBEEF -> 07FD0000

Writing DEADBEEF -> 07FD0004

Writing DEADBEEF -> 07FD0008

写DED10CC - > 07FD000C

写作00000001 - > 400C3050

Sleep(1000)

Reset delay: 0 ms
重置类型正常:通过SysResetReq和VectReset位重置核心和外围设备。

PC = 07F01E8A,Cyclecnt = 00000000
R0 = 00000008, R1 = 50003300, R2 = 00000001, R3 = E000E1FF
R4 = 00000002, R5 = 00000000, R6 = 00000004, R7 = 00000000
r8 = ffffffff,r9 = ffffffff,r10 = ffffffff,r11 = fffffffff
R12= FFFFFFFF
SP(R13)= 07FE0410, MSP= 07FE0410, PSP= FFFFFFFC, R14(LR) = 07F00443
XPSR = 01000000:APSR = NZCVQ,EPSR = 01000000,IPSR = 000(NoException)
CFBP = 00000000,Control = 00,FaultMask = 00,BasePri = 00,PrimAsk = 00

脚本处理完成。

cli_programmer 1.22
版权所有(c)2016年对话半导体雷竞技电竞平台

使用Internal UartBoot.bin未指定引导加载程序文件

写作到地址:0x00000000偏移量:0x00000000块大小:0x00001000
写作到地址:0x00000000偏移:0x00001000块大小:0x00001000
写作到地址:0x00000000偏移:0x00002000块大小:0x00001000
Writing to address: 0x00000000 offset: 0x00003000 chunk size: 0x00001000
......
Writing to address: 0x00000000 offset: 0x00018000 chunk size: 0x00001000
写作到地址:0x00000000偏移:0x00019000块大小:0x00000A70
写作到地址:0x00000000偏移:0x00000000块大小:0x0000000002
完毕。

.................................................................................................................................
..
.. 完成的
..
................................................................................................
//////// //////////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////////////////////
但是,它无法正确启动,唤起Printf“DA14681-01 ... DA14681-01 ...”。我认为这是SDK1.0.6不能支持添加新闪存。

Waiting for you answer ,thanks!

guxiang
Offline
最后一次露面:3周5天前
加入:2017-05-12 04:18
顺便说一下,为什么sdk1.0.12

顺便说一下,为什么SDK1.0.12下载块大小为0x2000,但SDK1.0.6块大小为0x1000。
并根据“AN-B-045_QSPI_LOADER_SUPPORTINGFILES”,DA14681支持的MX25RXX35F系列QSPI闪存设备,为什么我们仍然应该添加配置文件来支持它?

PM_DIALOG.
Offline
最后一次露面:15 hours 15 min ago
工作人员
加入:2018-02-08 11:03
Hi guxiang,

Hi guxiang,

Sorry but I am a little bit confused from your description. When you are using the SDK1.0.12, you are able to program the MX25R1635F SPI flash, but the DA14680 does not boot? But when you are using the SDK SDK1.0.6 you are not able to program the SPI Flash? Be aware that the current version of the SDK is version 1.0.14. The SDK versions that you are working on are quite old versions o SDK and you do not support them anymore. So, I would highly recommend you to move into the latest version od SDD and download it from our support portal. Can you please clarify where your code gets stuck? Didi you follow the procedure which was described in my previous post in order to make sure that the SPI flash is working well? Also, can you please read/write the SPI flash using Smart snippets toolbox?

谢谢,PM_DIALOG.

guxiang
Offline
最后一次露面:3周5天前
加入:2017-05-12 04:18
Hi, dialog

Hi, dialog
Could you please give us some advice on how to use MX25R1635F on DA14681?

guxiang
Offline
最后一次露面:3周5天前
加入:2017-05-12 04:18
hi , PM_Dialog

hi , PM_Dialog
1. SDK1.0.6 : Download successfully , but boot unsuccessfully .
SDK1.012:下载不成功,无法启动。
2.使用SDK1.0.6时,在烧毁图像后,运行调试会话时无法定位CPU。所以我们无法找到代码卡的位置。并返回读取闪存0x08000000的第一个地址。
3. We can't read/write the MX25R1635F using Smart snippets toolbox.
thanks!

PM_DIALOG.
Offline
最后一次露面:15 hours 15 min ago
工作人员
加入:2018-02-08 11:03
Hi guxiang,

Hi guxiang,

如果您对SPI闪存驱动程序仍有任何问题,请您告诉我们吗?

谢谢,PM_DIALOG.

guxiang
Offline
最后一次露面:3周5天前
加入:2017-05-12 04:18
嗨,对话

嗨,对话
The problem still remains. When using SmartSinppets , SDK1.0.6 can burn mx25r1635f , but fail in SDK1.0.12 . When using toolbox which its software version is 4.4.3.1420 , it can read or write the flash , but fail in a newer version 4.8.3.1804 . It seems that only old sdk or toolbox can support mx25r1635f .

PM_DIALOG.
Offline
最后一次露面:15 hours 15 min ago
工作人员
加入:2018-02-08 11:03
Hi guxiang,

Hi guxiang,

我们从未测试过MX25R1635F Flash,我已经提到过。但是,如果最新版本的SK和工具箱有任何问题,我会询问团队,我会尽快回复您。

谢谢,PM_DIALOG.