嗨,对话框我们希望使用DA14681基本devkit在MX25R1635F中运行应用程序代码。我们已经在硬件上用MX25R1635F替换了板默认的flash W25Q08EW。现在,它可以使用SmartSnippets将代码下载到MX25R1635F,但它不能很好地工作。我们是否应该修改配置文件中的内容或修改引导加载程序中的内容?请给我们一些指导。
嗨提到,
DA1468x SDK驱动程序子系统目前支持一组特定的QSPI闪存设备,不支持MX25R1635F。不过,它还提供了为其他闪存设备添加支持的功能。我强烈建议你去看看10.2.1.7增加对新闪存设备的支持的部分UM-B-044用户手册:DA1468x软件平台参考(HTML)用户手册。您可以从我们的DA1468x支持门户下载此用户手册。您是否遵循了本文档中描述的程序?另外,你能不能澄清一下,它工作得很好?设备是否正确引导?如果您读取闪存的第一个地址0 x08000000那么你必须提取qQ价值。要做到这一点,只需运行一个调试会话并暂停代码执行。然后在内存浏览器显示窗口(如果没有显示到菜单工具窗口->ShowView->MemoryBrowser)写入上述地址。这是一种检查flash正确功能的方法。
谢谢,下午好
嗨,PM_Dialog我认为我们已经完成了文档“UM-B-044用户手册:DA1468x软件平台参考—10.2.1.7添加对新flash设备的支持部分”中描述的必要程序。我们所做的工作如下:1.编制了“qspi_mx25r1635f.h”,并添加了几个宏,如“定义dg_configFLASH_制造商_ID MACRONIX_ID…”#在的“custom_config_qspi.h”中定义dg_configFLASH_头文件“qspi_mx25r1635.h”…,并将其添加到的“custom_config.h”中。相关配置文件请检查附件文件。
2.建设“uartboot”项目
3.构建“cli_程序员”项目,“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 Dialog yabo国际娱乐Semiconductor
未指定引导加载程序文件,使用内部uartboot.bin
写入地址:0x00000000偏移量:0x00000000块大小:0x00002000验证写入qspi地址0x0失败。重试。。。写入地址:0x00000000偏移量:0x00000000块大小:0x00002000验证写入qspi地址0x0失败。重试。。。写入地址:0x00000000偏移量:0x00000000块大小:0x00002000验证写入qspi地址0x0失败。重试。。。写入地址:0x00000000偏移量:0x00000000块大小:0x00002000验证写入qspi地址0x0失败。重试。。。写入地址:0x00000000偏移量:0x00000000块大小:0x00002000验证写入qspi地址0x0失败。重试。。。写入地址:0x00000000偏移量:0x00000000块大小:0x00002000验证写入qspi地址0x0失败。重试。。。写入地址:0x00000000偏移量:0x00000000块大小:0x00002000验证写入qspi地址0x0失败。重试。。。写入地址:0x00000000偏移量:0x00000000块大小:0x00002000验证写入qspi地址0x0失败。重试。。。写入地址:0x00000000偏移量:0x00000000块大小:0x00002000验证写入qspi地址0x0失败。重试。。。写入地址:0x00000000偏移量:0x00000000块大小:0x00002000验证写入qspi地址0x0失败。重试。。。写入地址:0x00000000偏移量:0x00000000块大小:0x00002000验证写入qspi地址0x0失败。重试。。。写入qspi失败。中止。写入可执行文件失败:未知错误(1)""///////////////////////////////////////////////////////////////////////////////////////////////////////////////////
我们在sdk1.0.12上做了上面的测试。但我们可以在sdk1.0.6上成功下载映像,而无需更改驱动子系统(使用w25q08e默认驱动程序),sdk1.0.6上的控制台信息:////////////////////////////////////////////////////////////////////////////////////脚本文件读取成功。正在处理脚本文件。。。尚未建立J-Link连接,但需要命令。通过USB连接到J-Link…好的。固件:J-Link V9已编译2017年4月21日11:08:06硬件版本:V9.40序列号: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 (Base addr.)第一个ROM表)发现皮质-M0R0P0,小端部。FPUnit: 4个代码(BP)槽和0个文字槽CoreSight组件:ROMTbl[0]@E00FF000ROMTbl[0][0]: E000E000, CID: B105E00D, PID: 000BB008 SCSROMTbl[0][1]:E0001000,CID:B105E00D,PID:000BB00A载重吨ROMTbl[0][2]: E0002000, CID: B105E00D, PID: 000BB00B FPBCortex-M0确认。写DEADBEEF -> 07FD0000
写DEADBEEF -> 07FD0004
写DEADBEEF -> 07FD0008
写入死区10cc->07FD000C
写入00000001->400C3050
复位延迟:0毫秒复位类型正常:通过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=FFFFFFFFR12 = FFFFFFFFSp (r13)= 07fe0410, msp = 07fe0410, psp = fffffffc, r14 (lr)= 07f00443XPSR=01000000:APSR=nzcvq,EPSR=01000000,IPSR=000(无例外)CFBP=00000000,CONTROL=00,FAULTMASK=00,BASEPRI=00,PRIMASK=00
脚本处理已完成。
cli_programmer 1.22版权所有(c)2016 Dialog yabo国际娱乐Semiconductor
写入地址:0x00000000偏移量:0x00000000块大小:0x000011000写入地址:0x00000000偏移量:0x000011000块大小:0x000011000写入地址:0x00000000偏移量:0x00002000块大小:0x000011000写入地址:0x00000000偏移:0x00003000块大小:0x00001000...写入地址:0x00000000偏移:0x00018000块大小:0x00001000写入地址:0x00000000偏移量:0x00019000块大小:0x00000a70写入地址:0x00000000偏移量:0x00000000块大小:0x00000002完成。
........................................................................................................................... 完成..................................................................................................../////////////////////////////////////////////////////////////////////////////////////////////////////////////////////但是,它无法正确引导,在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.我们不能使用Smart snippets工具箱读写MX25R1635F。谢谢!
如果您对SPI闪存驱动程序仍有任何问题,请告知我们?
嗨,dialog问题仍然存在。当使用smartsinpppets时,SDK1.0.6可以燃烧mx25r1635f,但在SDK1.0.12失败。当使用其软件版本为4.4.3.1420的工具箱时,可以读写flash,但在较新的版本4.8.3.1804时失败。似乎只有旧的sdk或工具箱可以支持mx25r1635f。
我已经提到,我们从未测试过mx25r1635f闪存。但是,我会问团队最新版本的SKS和工具箱是否有任何问题,我会在得到正确答案后尽快回复您。
嗨提到,
DA1468x SDK驱动程序子系统目前支持一组特定的QSPI闪存设备,不支持MX25R1635F。不过,它还提供了为其他闪存设备添加支持的功能。我强烈建议你去看看10.2.1.7增加对新闪存设备的支持的部分UM-B-044用户手册:DA1468x软件平台参考(HTML)用户手册。您可以从我们的DA1468x支持门户下载此用户手册。您是否遵循了本文档中描述的程序?另外,你能不能澄清一下,它工作得很好?设备是否正确引导?如果您读取闪存的第一个地址0 x08000000那么你必须提取qQ价值。要做到这一点,只需运行一个调试会话并暂停代码执行。然后在内存浏览器显示窗口(如果没有显示到菜单工具窗口->ShowView->MemoryBrowser)写入上述地址。这是一种检查flash正确功能的方法。
谢谢,下午好
嗨,PM_Dialog
我认为我们已经完成了文档“UM-B-044用户手册:DA1468x软件平台参考—10.2.1.7添加对新flash设备的支持部分”中描述的必要程序。我们所做的工作如下:
1.编制了“qspi_mx25r1635f.h”,并添加了几个宏,如“定义dg_configFLASH_制造商_ID MACRONIX_ID…”#在的“custom_config_qspi.h”中定义dg_configFLASH_头文件“qspi_mx25r1635.h”…,并将其添加到的“custom_config.h”中。相关配置文件请检查附件文件。
2.建设“uartboot”项目
3.构建“cli_程序员”项目,“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 Dialog yabo国际娱乐Semiconductor
未指定引导加载程序文件,使用内部uartboot.bin
写入地址:0x00000000偏移量:0x00000000块大小:0x00002000
验证写入qspi地址0x0失败。重试。。。
写入地址:0x00000000偏移量:0x00000000块大小:0x00002000
验证写入qspi地址0x0失败。重试。。。
写入地址:0x00000000偏移量:0x00000000块大小:0x00002000
验证写入qspi地址0x0失败。重试。。。
写入地址:0x00000000偏移量:0x00000000块大小:0x00002000
验证写入qspi地址0x0失败。重试。。。
写入地址:0x00000000偏移量:0x00000000块大小:0x00002000
验证写入qspi地址0x0失败。重试。。。
写入地址:0x00000000偏移量:0x00000000块大小:0x00002000
验证写入qspi地址0x0失败。重试。。。
写入地址:0x00000000偏移量:0x00000000块大小:0x00002000
验证写入qspi地址0x0失败。重试。。。
写入地址:0x00000000偏移量:0x00000000块大小:0x00002000
验证写入qspi地址0x0失败。重试。。。
写入地址:0x00000000偏移量:0x00000000块大小:0x00002000
验证写入qspi地址0x0失败。重试。。。
写入地址:0x00000000偏移量:0x00000000块大小:0x00002000
验证写入qspi地址0x0失败。重试。。。
写入地址:0x00000000偏移量:0x00000000块大小:0x00002000
验证写入qspi地址0x0失败。重试。。。
写入qspi失败。中止。
写入可执行文件失败:未知错误(1)
""///////////////////////////////////////////////////////////////////////////////////////////////////////////////////
我们在sdk1.0.12上做了上面的测试。
但我们可以在sdk1.0.6上成功下载映像,而无需更改驱动子系统(使用w25q08e默认驱动程序),sdk1.0.6上的控制台信息:
////////////////////////////////////////////////////////////////////////////////////
脚本文件读取成功。
正在处理脚本文件。。。
尚未建立J-Link连接,但需要命令。
通过USB连接到J-Link…好的。
固件:J-Link V9已编译2017年4月21日11:08:06
硬件版本:V9.40
序列号: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 (Base addr.)第一个ROM表)
发现皮质-M0R0P0,小端部。
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载重吨
ROMTbl[0][2]: E0002000, CID: B105E00D, PID: 000BB00B FPB
Cortex-M0确认。
写DEADBEEF -> 07FD0000
写DEADBEEF -> 07FD0004
写DEADBEEF -> 07FD0008
写入死区10cc->07FD000C
写入00000001->400C3050
睡眠(1000)
复位延迟:0毫秒
复位类型正常:通过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=FFFFFFFF
R12 = FFFFFFFF
Sp (r13)= 07fe0410, msp = 07fe0410, psp = fffffffc, r14 (lr)= 07f00443
XPSR=01000000:APSR=nzcvq,EPSR=01000000,IPSR=000(无例外)
CFBP=00000000,CONTROL=00,FAULTMASK=00,BASEPRI=00,PRIMASK=00
脚本处理已完成。
cli_programmer 1.22
版权所有(c)2016 Dialog yabo国际娱乐Semiconductor
未指定引导加载程序文件,使用内部uartboot.bin
写入地址:0x00000000偏移量:0x00000000块大小:0x000011000
写入地址:0x00000000偏移量:0x000011000块大小:0x000011000
写入地址:0x00000000偏移量:0x00002000块大小:0x000011000
写入地址:0x00000000偏移:0x00003000块大小:0x00001000
...
写入地址:0x00000000偏移:0x00018000块大小:0x00001000
写入地址:0x00000000偏移量:0x00019000块大小:0x00000a70
写入地址:0x00000000偏移量:0x00000000块大小:0x00000002
完成。
.......................................................................................................................
..
.. 完成
..
..................................................................................................
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
但是,它无法正确引导,在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_Dialog
1.SDK1.0.6:下载成功,但启动失败。
SDK1.012:下载失败,无法启动。
2.在使用SDK1.0.6时,在刻录映像后,在运行调试会话时,它不能以cpu为目标。所以我们找不到代码被卡住的地方。无法读取闪存的第一个地址0x08000000。
3.我们不能使用Smart snippets工具箱读写MX25R1635F。
谢谢!
嗨提到,
如果您对SPI闪存驱动程序仍有任何问题,请告知我们?
谢谢,下午好
嗨,dialog
问题仍然存在。当使用smartsinpppets时,SDK1.0.6可以燃烧mx25r1635f,但在SDK1.0.12失败。当使用其软件版本为4.4.3.1420的工具箱时,可以读写flash,但在较新的版本4.8.3.1804时失败。似乎只有旧的sdk或工具箱可以支持mx25r1635f。
嗨提到,
我已经提到,我们从未测试过mx25r1635f闪存。但是,我会问团队最新版本的SKS和工具箱是否有任何问题,我会在得到正确答案后尽快回复您。
谢谢,下午好