嗨,对话框我们想在MX25R1635F运行应用程序代码与DA14681基本devkit。我们已经在硬件上用MX25R1635F替换了主板默认的flash W25Q08EW。现在它可以下载代码到MX25R1635F与SmartSnippets,但它不能很好地工作。我们应该修改一些配置文件或改变一些bootloader?请给我们一些指导。
嗨提到,
DA1468X SDK驱动程序子系统当前支持特定的QSPI闪存设备,不支持MX25R1635F。但是,它提供了为其他闪存设备添加支持的功能。我会强烈建议你看看10.2.1.7为新的闪存设备添加支持的部分UM-B-044用户手册:DA1468x软件平台参考(HTML)用户手册。您可以下载此用户手册表单我们的DA1468X支持门户。您是否遵循本文档中描述的过程?另外,你能澄清它正在运作良好吗?设备是否正确启动?如果您读取了闪存的第一个地址0 x08000000然后你必须提取qQ价值。要做到这一点,只需运行一个调试会话并暂停代码执行。然后在内存浏览器显示窗口(如果没有显示到菜单工具窗口->ShowView->MemoryBrowser)写上述地址。这是一种检查flash正确功能的方法。
谢谢,PM_DIALOG.
嗨,PM_Dialog我认为我们已经完成了文件“UM-B-044用户手册:DA1468x软件平台参考—10.2.1.7添加对新flash设备章节的支持”中描述的必要程序。我们做了如下工作: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”,但控制台打印遵循信息:“////// ///////////////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////////配置保存到C:\Users\ADMINI~1\AppData\Local\Temp\cfg_2779.ini文件。E: \ DebugProject \ \ qspi DA1468x_SDK_BTLE_v_1.0.8_prj \工具\脚本 >"..\..\..\ 二进制文件\ cli_programmer.exe”——cfg " C: \ \高级用户~ 1 \ AppData \当地\ Temp \ cfg_2779.ini”——prod-id DA14681-01 gdbserver write_qspi_exec“E: \ DebugProject \ DA1468x_SDK_BTLE_v_1.0.8_prj \ \项目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失败。重试......写入qspi失败。中止。编写可执行失败:未知错误(1)""///////////////////////////////////////////////////////////////////////////////////////////////////////////////////
我们在sdk1.0.12上做了上述测试。但我们可以在没有更改驱动子子系统(使用W25Q08E默认驱动程序)的情况下成功下载SDK1.0.6上的图像,SDK1.0.6上的控制台信息://////// //////////////////////////////////////////////////////////////////////////////////////////////////////////////脚本文件已成功读取。处理脚本文件...J-Link连接尚未建立,但需要命令。通过USB ... o.k连接到J-Link。固件:J-Link V9编译2017年4月21日11:08:06硬件版本:v9.40S / N:59410355许可证:RDI,GDB,FlashDL,FlashBP,JFlashVTref = 3.332 v
睡眠(1000)
选择4000 kHz作为目标接口速度
选择SWD作为当前目标接口。
目标连接尚未建立,但命令需要。设备“Cortex-M0”选择。
找到带ID 0x0BB11477的SW-DP没有预选的ap。假设AP [0]是AHB-APAP-IDR:0x04770021,类型:AHB-APAHB-AP ROM: 0xE00FF000(基地地址。第一个ROM表)发现Cortex-M0 R0P0,小endian。FPUnit: 4个编码(BP)槽和0个字面值槽Coresight组件:romtbl [0] @ E00FF000ROMTbl[0][0]: E000E000, CID: B105E00D, PID: 000BB008 SCSRomtbl [0] [1]:E0001000,CID:B105E00D,PID:000BB00A DWTROMTbl[0][2]: E0002000, CID: B105E00D, PID: 000BB00B fbbCortex-M0确认。写死牛肉-> 07FD0000
写DEADBEEF -> 07FD0004
写DEADBEEF -> 07FD0008
写DED10CC - > 07FD000C
写作00000001 - > 400C3050
复位延迟:0ms重置类型正常:通过SysResetReq和VectReset位重置核心和外围设备。
PC = 07F01E8A,Cyclecnt = 00000000R0 = 00000008, r1 = 50003300, r2 = 00000001, r3 = e000e1ffR4 = 00000002, r5 = 00000000, r6 = 00000004, r7 = 00000000r8 = ffffffff,r9 = ffffffff,r10 = ffffffff,r11 = fffffffffR12 = FFFFFFFFSp (r13)= 07fe0410, msp = 07fe0410, psp = fffffffc, r14 (lr)= 07f00443XPSR = 01000000:APSR = NZCVQ,EPSR = 01000000,IPSR = 000(NoException)CFBP = 00000000,Control = 00,FaultMask = 00,BasePri = 00,PrimAsk = 00
脚本处理完成。
cli_programmer 1.22版权所有(c)2016年对话半导体雷竞技电竞平台
写作到地址:0x00000000偏移量:0x00000000块大小:0x00001000写作到地址:0x00000000偏移:0x00001000块大小:0x00001000写作到地址:0x00000000偏移:0x00002000块大小:0x00001000写地址:0x00000000偏移量:0x00003000 chunk大小:0x00001000......写地址:0x00000000偏移量:0x00018000块大小:0x00001000写作到地址:0x00000000偏移:0x00019000块大小:0x00000A70写作到地址:0x00000000偏移:0x00000000块大小:0x0000000002完毕。
........................................................................................................................... 完成的................................................................................................../////////////////////////////////////////////////////////////////////////////////////////////////////////////////////但是,它无法正确启动,唤起Printf“DA14681-01 ... DA14681-01 ...”。我认为这是SDK1.0.6不能支持添加新闪存。
等待你的回答,谢谢!
顺便说一下,为什么SDK1.0.12下载块大小为0x2000,但SDK1.0.6块大小为0x1000。并根据“AN-B-045_QSPI_LOADER_SUPPORTINGFILES”,DA14681支持的MX25RXX35F系列QSPI闪存设备,为什么我们仍然应该添加配置文件来支持它?
对不起,你的描述让我有点困惑。当您使用SDK1.0.12时,您能够编程MX25R1635F SPI flash,但DA14680不引导?但是当你使用SDK SDK1.0.6时,你不能编程SPI Flash?注意,SDK的当前版本是版本1.0.14。你正在工作的SDK版本是相当老的版本的SDK,你不再支持他们了。因此,我强烈建议您使用最新版本的od SDD,并从我们的支持门户下载它。你能解释一下你的代码在哪里卡住了吗?滴滴,你按照我之前文章中描述的程序来确保SPI flash工作良好吗?另外,你可以使用智能片段工具箱读/写SPI flash吗?
嗨,对话框你能给我们一些关于MX25R1635F在DA14681上如何使用的建议吗?
嗨,PM_Dialog1.SDK1.0.6:下载成功,但启动不成功。SDK1.012:下载不成功,无法启动。2.使用SDK1.0.6时,在烧毁图像后,运行调试会话时无法定位CPU。所以我们无法找到代码卡的位置。并返回读取闪存0x08000000的第一个地址。3.我们不能读取/写入MX25R1635F使用智能片段工具箱。谢谢!
如果您对SPI闪存驱动程序仍有任何问题,请您告诉我们吗?
嗨,对话问题依然存在。使用SmartSinppets时,SDK1.0.6可以烧坏mx25r1635f,但SDK1.0.12失败。当使用其软件版本为4.4.3.1420的工具箱时,它可以读写flash,但在较新的版本4.8.3.1804中失败。似乎只有旧的sdk或工具箱可以支持mx25r1635f。
我们从未测试过MX25R1635F Flash,我已经提到过。但是,如果最新版本的SK和工具箱有任何问题,我会询问团队,我会尽快回复您。
嗨提到,
DA1468X SDK驱动程序子系统当前支持特定的QSPI闪存设备,不支持MX25R1635F。但是,它提供了为其他闪存设备添加支持的功能。我会强烈建议你看看10.2.1.7为新的闪存设备添加支持的部分UM-B-044用户手册:DA1468x软件平台参考(HTML)用户手册。您可以下载此用户手册表单我们的DA1468X支持门户。您是否遵循本文档中描述的过程?另外,你能澄清它正在运作良好吗?设备是否正确启动?如果您读取了闪存的第一个地址0 x08000000然后你必须提取qQ价值。要做到这一点,只需运行一个调试会话并暂停代码执行。然后在内存浏览器显示窗口(如果没有显示到菜单工具窗口->ShowView->MemoryBrowser)写上述地址。这是一种检查flash正确功能的方法。
谢谢,PM_DIALOG.
嗨,PM_Dialog
我认为我们已经完成了文件“UM-B-044用户手册:DA1468x软件平台参考—10.2.1.7添加对新flash设备章节的支持”中描述的必要程序。我们做了如下工作:
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”,但控制台打印遵循信息:
“////// ///////////////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////////
配置保存到C:\Users\ADMINI~1\AppData\Local\Temp\cfg_2779.ini文件。
E: \ DebugProject \ \ qspi DA1468x_SDK_BTLE_v_1.0.8_prj \工具\脚本 >"..\..\..\ 二进制文件\ cli_programmer.exe”——cfg " C: \ \高级用户~ 1 \ AppData \当地\ Temp \ cfg_2779.ini”——prod-id DA14681-01 gdbserver write_qspi_exec“E: \ DebugProject \ DA1468x_SDK_BTLE_v_1.0.8_prj \ \项目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失败。重试......
写入qspi失败。中止。
编写可执行失败:未知错误(1)
""///////////////////////////////////////////////////////////////////////////////////////////////////////////////////
我们在sdk1.0.12上做了上述测试。
但我们可以在没有更改驱动子子系统(使用W25Q08E默认驱动程序)的情况下成功下载SDK1.0.6上的图像,SDK1.0.6上的控制台信息:
//////// //////////////////////////////////////////////////////////////////////////////////////////////////////////////
脚本文件已成功读取。
处理脚本文件...
J-Link连接尚未建立,但需要命令。
通过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.332 v
睡眠(1000)
选择4000 kHz作为目标接口速度
选择SWD作为当前目标接口。
目标连接尚未建立,但命令需要。
设备“Cortex-M0”选择。
找到带ID 0x0BB11477的SW-DP
没有预选的ap。假设AP [0]是AHB-AP
AP-IDR:0x04770021,类型:AHB-AP
AHB-AP ROM: 0xE00FF000(基地地址。第一个ROM表)
发现Cortex-M0 R0P0,小endian。
FPUnit: 4个编码(BP)槽和0个字面值槽
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 fbb
Cortex-M0确认。
写死牛肉-> 07FD0000
写DEADBEEF -> 07FD0004
写DEADBEEF -> 07FD0008
写DED10CC - > 07FD000C
写作00000001 - > 400C3050
睡眠(1000)
复位延迟:0ms
重置类型正常:通过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
写地址:0x00000000偏移量:0x00003000 chunk大小:0x00001000
......
写地址:0x00000000偏移量:0x00018000块大小:0x00001000
写作到地址:0x00000000偏移:0x00019000块大小:0x00000A70
写作到地址:0x00000000偏移:0x00000000块大小:0x0000000002
完毕。
.......................................................................................................................
..
.. 完成的
..
................................................................................................
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
但是,它无法正确启动,唤起Printf“DA14681-01 ... DA14681-01 ...”。我认为这是SDK1.0.6不能支持添加新闪存。
等待你的回答,谢谢!
顺便说一下,为什么SDK1.0.12下载块大小为0x2000,但SDK1.0.6块大小为0x1000。
并根据“AN-B-045_QSPI_LOADER_SUPPORTINGFILES”,DA14681支持的MX25RXX35F系列QSPI闪存设备,为什么我们仍然应该添加配置文件来支持它?
嗨提到,
对不起,你的描述让我有点困惑。当您使用SDK1.0.12时,您能够编程MX25R1635F SPI flash,但DA14680不引导?但是当你使用SDK SDK1.0.6时,你不能编程SPI Flash?注意,SDK的当前版本是版本1.0.14。你正在工作的SDK版本是相当老的版本的SDK,你不再支持他们了。因此,我强烈建议您使用最新版本的od SDD,并从我们的支持门户下载它。你能解释一下你的代码在哪里卡住了吗?滴滴,你按照我之前文章中描述的程序来确保SPI flash工作良好吗?另外,你可以使用智能片段工具箱读/写SPI flash吗?
谢谢,PM_DIALOG.
嗨,对话框
你能给我们一些关于MX25R1635F在DA14681上如何使用的建议吗?
嗨,PM_Dialog
1.SDK1.0.6:下载成功,但启动不成功。
SDK1.012:下载不成功,无法启动。
2.使用SDK1.0.6时,在烧毁图像后,运行调试会话时无法定位CPU。所以我们无法找到代码卡的位置。并返回读取闪存0x08000000的第一个地址。
3.我们不能读取/写入MX25R1635F使用智能片段工具箱。
谢谢!
嗨提到,
如果您对SPI闪存驱动程序仍有任何问题,请您告诉我们吗?
谢谢,PM_DIALOG.
嗨,对话
问题依然存在。使用SmartSinppets时,SDK1.0.6可以烧坏mx25r1635f,但SDK1.0.12失败。当使用其软件版本为4.4.3.1420的工具箱时,它可以读写flash,但在较新的版本4.8.3.1804中失败。似乎只有旧的sdk或工具箱可以支持mx25r1635f。
嗨提到,
我们从未测试过MX25R1635F Flash,我已经提到过。但是,如果最新版本的SK和工具箱有任何问题,我会询问团队,我会尽快回复您。
谢谢,PM_DIALOG.