Hi, support!
I use DA14695 chip + SDK_10.0.8.105.
前一段时间我试图将不受支持的内存芯片添加到SDK,现在我对你有夫妻问题。
我为我的Flash芯片(W25Q64FWXGIG)写了正确的标题,然后成功构建了UartBoot固件。我使用SmartSnippets Toolbox进行了一些测试,所有似乎都很好。
But further I faced with problems when I tried to upload firmware to target processor (flash chip). Earlier, I used DA1468x processors, and I decide that problem is in missing cli_programmer.ini file. I copied it to sdk/binary catalogue, then tried again - firmware was successfully uploaded. I thought that problem is gone, but it still remain. Now I can`t upload firmware to flash without previous full erase of flash chip (using erase_qspi_jtag script from the studio). If I erased chip first and then tried to upload firmware - mostly, process ends successfully. Is there any specific settings in .ini file for case of DA14695? Why when I tried to use flash from the Toolbox, it uses correct uartboot.bin, but when from the Studio is not? My cli_programmer.ini file is in attach (just change extension of file to .ini). Please help me.
提前致谢,
Stepanov Ivan
嗨Ivan,
谢谢你的问题。让我检查一下,我会回复你。
你能重新附上PDF文件,因为我无法打开它吗?
Thanks, PM_Dialog
嗨Ivan,
此外,请提供以下澄清。
If I understood correctly from what you mentioned, the problem exists in DA1469x and only when trying to program the QSPI flash (W25Q64FWXGIG) through the SmartSnippets Studio (SSS). Is that correct? What is the version of the SSS?
You mentioned that :
"Now I can`t upload firmware to flash without previous full erase of flash chip (using erase_qspi_jtag script from the studio). If I erased chip first and then tried to upload firmware - mostly, process ends successfully."
因此,如果已执行erase_qspi_jtag脚本,则可以正确执行Program_Qspi_jtag脚本和设备靴子。我的理解是否正确?
如果在不执行erase_qspi_jtag脚本的情况下执行program_qspi_jtag,则出现的消息是什么?
Thanks, PM_Dialog
Hi,
1.“如果我从所提到的那里理解正确,问题存在于DA1469X中,只有在尝试通过SmartSnippets Studio(SSS)编写QSPI闪存(W25Q64FWXGIG)时。这是正确的吗?SSS的版本是什么?”
- 是的,您是对的,问题仅在da14695 + w25q64fwxgig + sss上存在。版本的SSS是2.0.12.1622(Win7);
2. "So, if the erase_qspi_jtag script has been executed, then you can execute the program_qspi_jtag script and the device boots correctly. Is my understanding correct?"
- Yes, it is;
3.“如果在不执行erase_qspi_jtag脚本的情况下执行program_qspi_jtag,则出现的消息是什么?”
- 这是来自控制台的一些日志:
....................................................................................................................
..
..程序QSPI.
..
....................................................................................................................
。
....................................................................................................................
..
..Programming image
..
....................................................................................................................
cli_programmer 1.26
Copyright (c) 2015-2019 Dialog Semiconductor
从e:\ projects \ active_projects \ moby.da1469x \ sdk \ binaries \ cli_progromer.ini文件加载的。
Uploading boot loader/application executable...
可执行上传。
Writing to address: 0x00002000 offset: 0x00000000 chunk size: 0x00002000
Verify writing to qspi address 0x2000 failed. Retrying ...
Writing to address: 0x00002000 offset: 0x00000000 chunk size: 0x00002000
Verify writing to qspi address 0x2000 failed. Retrying ...
Writing to address: 0x00002000 offset: 0x00000000 chunk size: 0x00002000
Verify writing to qspi address 0x2000 failed. Retrying ...
Writing to address: 0x00002000 offset: 0x00000000 chunk size: 0x00002000
Verify writing to qspi address 0x2000 failed. Retrying ...
Writing to address: 0x00002000 offset: 0x00000000 chunk size: 0x00002000
Verify writing to qspi address 0x2000 failed. Retrying ...
Writing to address: 0x00002000 offset: 0x00000000 chunk size: 0x00002000
Verify writing to qspi address 0x2000 failed. Retrying ...
Writing to address: 0x00002000 offset: 0x00000000 chunk size: 0x00002000
Verify writing to qspi address 0x2000 failed. Retrying ...
Writing to address: 0x00002000 offset: 0x00000000 chunk size: 0x00002000
Verify writing to qspi address 0x2000 failed. Retrying ...
Writing to address: 0x00002000 offset: 0x00000000 chunk size: 0x00002000
Verify writing to qspi address 0x2000 failed. Retrying ...
Writing to address: 0x00002000 offset: 0x00000000 chunk size: 0x00002000
Verify writing to qspi address 0x2000 failed. Retrying ...
Writing to address: 0x00002000 offset: 0x00000000 chunk size: 0x00002000
Verify writing to qspi address 0x2000 failed. Retrying ...
Write to qspi failed. Abort.
write to QSPI failed: unknown error (-300)
。
....................................................................................................................
。ERROR:
。cli_programmer.exe“退出代码:1
。
。call: "E:\Projects\Active_Projects\Moby.DA1469x\SDK\binaries\cli_programmer.exe" --cfg C:\Users\Ivan\AppData\Local\Temp\tmpu48vidhc --check-booter-load --no-kill gdbserver write_qspi 8192 C:\Users\Ivan\AppData\Local\Temp\tmpg67lr5ul
....................................................................................................................
。
。
....................................................................................................................
..
.. 完成的
..
....................................................................................................................
这里是我的cli_progrogmer.ini文件的内容:
-----------------------------------------------------------------------------------------
;这是一个cli_programmer配置文件。
[cli]
initial_baudrate = 57600
timeout = 5000
bootloader_fname = E:\Projects\Active_Projects\Moby.DA1469x\SDK\binaries\uartboot.bin
[uartboot]
baudrate =
tx_port =
tx_pin =.
rx_port =.
rx_pin =.
[gdb server]
端口= 2331.
host_name = localhost
gdb_server_path = "C:\Program Files (x86)\SEGGER\JLink_V644f\JLinkGDBServerCL.exe" -if SWD -device Cortex-M0 -singlerun -silent -speed auto -select -port 2331 -swoport 2332 -telnetport 2333 -log jlink.log
no_kill_mode = 0
[bin2image]
chip_rev =
[目标重置]
target_reset_cmd =
-------------------------------------------------------------------------
提前致谢
嗨Ivan,
The program_qspi_jtag script will do the following: First, it will “Erase sector”, then it will “Program sector”, and finally will do the whole flash verification.
Since you can erase (erase_qspi_jtag) the QSPI Flash, and then you can program it (program_qspi_jtag) properly, we suspect that the most probable reason might be due to erase sector step. When executing the erase_qspi_jtag script, the erase chip will take place and it will erase the whole flash, so after that it expected that you can program it.
To do so, could you please check the “erase sector” command in your flash driver? Is it according to the datasheet?
Probably it might be like。erase_opcode = CMD_SECTOR_ERASEin the QSPI flash configuration structure.
Additionally, you can do the following as a test:
Thanks, PM_Dialog
嗨,pm_dialog.
感谢您的回复。
我检查了我的闪光描述,一切似乎都很好。所有Ocodes都是正确的,并等于数据表的值。问题仍然存在。
One important moment, as basis I used existing winbond description file from sdk (w25q32fw), and just do some corrections (at least size). Other opcodes are the same.
还有一个,有时我可以上传两三次固件,但我认为这是因为固件文件在所有情况下都是一样的。
Regards, Ivan.
嗨Ivan,
Does the same problem exist when using the CLI programmer? Did you try to perform chip erase, sector erase and program it through the CLI?
Thanks, PM_Dialog
嗨pm_dialog,
Sorry, I missed that. I`ll do this tests as soon as possible.
谢谢你的帮助,伊万。
嗨Ivan,
没问题 - 请通过结果回复我。等待反馈!
Thanks, PM_Dialog
嗨Ivan,
如果有的进展,请您告诉我们吗?
Thanks, PM_Dialog