嗨,对话团队,
我本周试图烧掉OTP,使用Smart Scippets Toolbox V5.0.10.2434和JTAG接口。智能代码段工具箱可以“检测”我的芯片并显示消息“检测到的设备:DA14585在JTAG加密狗XXXXX上”,然后我创建并打开了刻录项目,选择了OTP图像文件并按“连接”按钮,消息显示在日志上如下,连接动作中止。
[Info General @ 20-01-06 19:36:36]找到了带ID 0x0BB11477的SW-DP
[信息概述@ 20-01-06 19:36:36]没有预选的ap。假设AP [0]是AHB-AP
[信息通用@ 20-01-06 19:36:36] AP-IDR:0x04770021,类型:AHB-AP
[Info General @ 20-01-06 19:36:36] AHB-AP ROM:0xe00FF000(基础Addr。第一rom表)
[信息常规@ 20-01-06 19:36:36]找到了Cortex-M0 R0P0,Little Endian。
[信息概述@ 20-01-06 19:36:36] FpUnit:4代码(BP)插槽和0个文字插槽
[Info General @ 20-01-06 19:36:36] Coresight组件:
[信息概述@ 20-01-06 19:36:36] romtbl [0] @ E00FF000
[INFO General @20-01-06 19:36:36] ROMTbl[0][0]: E000E000, CID: B105E00D, PID: 000BB008 SCS
[信息通用@ 20-01-06 19:36:36] romtbl [0] [1]:e0001000,cid:b105e00d,pid:000bb00a dwt
[信息概述@ 20-01-06 19:36:36] romtbl [0] [2]:e0002000,cid:b105e00d,pid:000bb00b fpb
[INFO General @20-01-06 19:36:36] BTLE device selected.
[INFO OTP Image @20-01-06 19:43:29] Header records have been removed from hex file xxxxxxxx.hex.
[信息OTP图像@ 20-01-06 19:43:29]从xxxxxxxxxx.hex读取62204字节。
[错误OTP图像@ 20-01-06 19:43:31]在地址50000012时写入值A6失败。
[错误OTP图像@ 20-01-06 19:43:31]将固件文件下载到电路板上。
我的董事会以前跑得很好。我将芯片搬到了以前和焊接一个新的芯片,并试图烧毁OTP。
我尝试了一些新的芯片,但错误消息都是一样的。无论我如何尝试,我都失败了............
你能告诉我为什么这条消息“在地址50000012上写入值A6失败。”看起来,我能做什么,非常感谢!
嗨Skywei5830,
Keep in mind that OTP stands for One Time Programmable, thus you can’t erase and re-write the OTP multiple times, but you can only flip the bits that are still set to 0 and turn them to 1. If you would like to burn the OTP, 2 areas must be burnt:
The OTP image area, where the user code is placed and mirrors to the sysram at boot.
OTP标题区域,其中放置了定义设备操作的标志和特定值(关于OTP报头的值的更多信息,可以在智能代码片段用户指南中找到)。
你燃烧了opt header吗?此外。您使用的是定制董事会或我们的任何DKS吗?另外,如果您尝试通过JTAG与Flash程序员连接,您是否能够连接?你能从Keil下载FW吗?
谢谢,PM_Dialog
嗨pm_dialog,
感谢您的回复,我可以理解OTP意味着什么。也许我没有明确,我用我的板,而不是你的dks。该委员会已被我的前同事烧毁OTP并正常运营。我本周拿了我的前同事'Job,我刚刚想验证他给我的十六进制文件是正确的,通过燃烧OTP使董事会再次运作。
我删除了电路板上的原始DA14585,焊接了一个新的DA14585,然后尝试将JTAG连接到刻录OTP。
在Burning OTP标题时,我应该在“Connect”之前“从文件导入标题”?我应该先刻录OTP图像还是首先刻录OTP图像?我尝试首先燃烧OTA图像并首先尝试刻录OTA标题,但在日志上显示相同的错误消息。
我删除了DA14585和焊接一个新的DA14585 .......我一次又一次尝试,但是在日志上出现相同的错误消息。
My board does not have an external flash, so I can't try to connect with the Flash programmer. I used the source code project to debug online in keil yesterday, the board could operate normally.
谢谢,
嗨pm_dialog,
我改变了我的电源板,然后燃烧the OTP image. When I click on the "Cnnect" button, there is no error on the log, but then I click on the "burn" button, there is an error as below,
[信息OTP图像@ 20-01-07 11:41:54] romtbl [0] [0]:e000u000,cid:b105e00d,pid:000bb008 scs
[信息OTP图像@ 20-01-07 11:41:54] romtbl [0] [1]:E0001000,CID:B105E00D,PID:000BB00A DWT
[INFO OTP Image @20-01-07 11:41:54] ROMTbl[0][2]: E0002000, CID: B105E00D, PID: 000BB00B FPB
[INFO OTP Image @20-01-07 11:41:55] Firmware File C:\Program Files (x86)\SmartSnippetsToolbox\SmartSnippetsToolbox5.0.10\common_resources\SupportPackages\DA14585-586\toolbox_resources/common/jtag_programmer.bin has been selected for downloading.
[INFO OTP Image @20-01-07 11:41:55] Successfully downloaded firmware file to the board.
[警告OTP图像@ 20-01-07 11:42:03]在文件末尾添加了4个字节,以Word对齐数据
[错误OTP图像@ 20-01-07 11:42:03]清除内存地址7FC7C08失败。
[错误OTP图像@ 20-01-07 11:42:03]清除内存地址7FC7C08失败。
[ERROR OTP Image @20-01-07 11:42:03] Failed reading memory.
所以通过JTAG燃烧OTP时有高功率要求吗?烧伤时是否有其他人注意?
我觉得我没有成功,非常感谢。
嗨Skywei5830,
如果我能够正确理解,在您使用的定制板中,OTP已经被您的前同事烧毁了吗?你能在董事会中试试,OTP没有烧焦吗?此外,我建议在SmartSnippets Toolbox中连接UART而不是JTAG。只要启用名为JTAG Enable标志的OTP标题字段,就可以直接刻录SystemRam。如果刻录应用程序标志并且禁用JTAG启用标志,则设备将无法访问。
谢谢,PM_Dialog
感谢您的回复!
I have tried to connect over UART instead of JTAG, In the process of burnning OTP, when message"Please press the hardware reset button on the board to start the download process."appeared, I pressed the reset button on the board, and I confirm the reset pin has got high, but DA14585 reset was not triggered, Error message was showed as below on the log, the burnning processing aborted.
[信息OTP图像@ 20-01-08 09:24:49]标题记录已从十六进制文件ev_nb_key3_5.hex中删除。
[信息OTP图像@ 20-01-08 09:24:49]从文件ev_nb_key3_5.hex读取62204字节。
[信息OTP图像@ 20-01-08 09:24:51]固件文件c:\ program files(x86)\ smartsnippetstoolbox \ smartsnippetstoolbox5.0.10 \ common_resources \ supportpackages \ toolbox_resources / common / flash_programmer.bin已成为选择下载。
[信息OTP图像@ 20-01-08 09:24:51]与COM10端口的连接已成功打开。
[信息OTP图像@ 20-01-08 09:24:51]开始下载程序...
[动作OTP图像@ 20-01-08 09:24:52]请按电路板上的硬件重置按钮启动下载过程。
[ERROR OTP Image @20-01-08 09:25:07] Timeout: Reset signal not detected for more than 16000 msecs.
[INFO Booter @20-01-08 09:25:07] Successfully disconnected from port COM10.
[错误OTP图像@ 20-01-08 09:25:07]将固件文件下载到电路板上失败。
谢谢。
嗨Skywei5830,
Can you please indicate if the OTP and OTP Header are already burnt from your ex-colleague? Have you tried to download FW directly through the Keil? Or have you tried to burn the SPI flash? If you try it with another DK, are you able to replicate this issue?
谢谢,PM_Dialog
嗨pm_dialog,
是的,OTP和OTP标题已被我的前同事烧毁,我们的定制董事会以前工作得很好。我刚刚删除了之前的DA14585在董事会和焊接一个全新的DA14585,然后尝试刻录OTP。无论我如何尝试,我都失败了。到目前为止,我尝试了6 DA14585S,3种JLink工具,但我到底没有成功.........这是我的第一次与基于DA14585的设计联系,我的前同事没有为我留下任何烧毁的指示,所以我只能通过你的帮助探讨它^^^^^^^^^
刚才刚焊接全新DA14585,连接电源和JLINK工具,打开SmartSnippet工具箱,并开始通过JTAG接口刻录OTP。我点击了Conncet,没有报告错误,然后我点击了刻录,并显示了以下错误消息,我再次失败.....
[信息概述@ 20-01-10 17:56:21]找到了带ID 0x0BB11477的SW-DP
[信息常规@ 20-01-10 17:56:21]没有预选的ap。假设AP [0]是AHB-AP
[INFO General @20-01-10 17:56:21] AP-IDR: 0x04770021, Type: AHB-AP
[INFO General @20-01-10 17:56:21] AHB-AP ROM: 0xE00FF000 (Base addr. of first ROM table)
[信息概述@ 20-01-10 17:56:21]找到了Cortex-M0 R0P0,Little Endian。
[信息概述@ 20-01-10 17:56:21] FpUnit:4代码(BP)插槽和0个字幕插槽
[信息常规@ 20-01-10 17:56:21] Coresight组件:
[INFO General @20-01-10 17:56:21] ROMTbl[0] @ E00FF000
[信息概述@ 20-01-10 17:56:21] romtbl [0] [0]:e000u000,cid:b105e00d,pid:000bb008 scs
[信息概述@ 20-01-10 17:56:21] romtbl [0] [1]:E0001000,CID:B105E00D,PID:000BB00A DWT
[INFO General @20-01-10 17:56:21] ROMTbl[0][2]: E0002000, CID: B105E00D, PID: 000BB00B FPB
[INFO General @20-01-10 17:56:21] BTLE device selected.
[INFO OTP Image @20-01-10 17:56:34] Header records have been removed from hex file xxxx.hex.
[信息OTP图像@ 20-01-10 17:56:34]从文件ev_nb_key3_5.hex读取62204字节。
[信息OTP图像@ 20-01-10 17:56:38]找到带ID 0x0BB11477的SW-DP
[信息OTP图像@ 20-01-10 17:56:38]使用预配置的AP [0]作为AHB-AP与核心通信
[信息OTP图像@ 20-01-10 17:56:38] AP-IDR:0x04770021,类型:AHB-AP
[INFO OTP Image @20-01-10 17:56:38] AHB-AP ROM: 0xE00FF000 (Base addr. of first ROM table)
[INFO OTP Image @20-01-10 17:56:38] Found Cortex-M0 r0p0, Little endian.
[信息OTP图像@ 20-01-10 17:56:38] FpUnit:4代码(BP)插槽和0个字幕插槽
[INFO OTP Image @20-01-10 17:56:38] CoreSight components:
[INFO OTP Image @20-01-10 17:56:38] ROMTbl[0] @ E00FF000
[信息OTP图像@ 20-01-10 17:56:38] romtbl [0] [0]:e000000,cid:b105e00d,pid:000bb008 scs
[信息OTP图像@ 20-01-10 17:56:38] Romtbl [0] [1]:E0001000,CID:B105E00D,PID:000BB00A DWT
[INFO OTP Image @20-01-10 17:56:38] ROMTbl[0][2]: E0002000, CID: B105E00D, PID: 000BB00B FPB
[信息OTP图像@ 20-01-10 17:56:38]固件文件c:\ program files(x86)\ smartsnippetstoolbox \ smartsnippetstoolbox5.0.10 \ common_resources \ supportpackages \ toolbox_resources / common / jtag_programmer.bin已成为选择下载。
[信息OTP图像@ 20-01-10 17:56:39]成功下载了固件文件到电路板。
[警告OTP图像@ 20-01-10 17:56:46]在文件末尾添加的4零个字节以Word对齐数据
[信息OTP图像@ 20-01-10 17:56:46]读取32768个字节与偏移00
[信息OTP图像@ 20-01-10 17:56:46]读取29440字节与偏移0
[信息OTP图像@ 20-01-10 17:56:46]阅读已完成。读62208字节。
[信息OTP图像@ 20-01-10 17:56:46]阅读内存内容......
[INFO OTP Image @20-01-10 17:56:49] Started burning memory with 62208 bytes of data at address 0x7F80000.
[INFO OTP Image @20-01-10 17:56:50] Memory burning completed successfully. Chunk 1 of 2
[错误OTP图像@ 20-01-10 17:56:50]地址7FC7C02的写入长度失败。
[错误OTP图像@ 20-01-10 17:56:50]内存刻录失败。
Can you tell me what this warning message means? Is this warning message causing the programming failure?
[警告OTP图像@ 20-01-10 17:56:46]在文件末尾添加的4零个字节以Word对齐数据
我已经下令购买你的DKS,它正在前往中国,大约需要2周,也许我可以在收到DKS后更好地验证。
这些星期如此累,我以为燃烧的OTP是一件非常简单的事情,但这不是。我没有在中国的互联网上获得大量关于DA14585的信息,其中大多数是DA14580,几乎没有关于如何通过JTAG接口刻录OTP的信息。
but I also gained new knowledge from you ,Thank you for your help and guidance.
嗨Skywei5830,
This means that you are not able to burn the OTP. Can you please export the OTP header and share it with me? You can export it thought the SmartSnippets toolbox. Please try it in a new device where the OTP is not burnt. Did you try to download FW thought the Keil?
谢谢,PM_Dialog
嗨pm_dialog,
You could read the OTP header on the attachment. The devices I bought have already been tried out. I will buy new ones and try again. I don't have an external flash on the board, can I download the firmware directly thought keil? I thought keil could only be used for online debugging and let the code run in the ram. I have tried online debugging, the code runs normally in ram.
OTP burning is done after the code debugging is completed and the product design is completed. This work is usually done by less-professional personnel, so I think, can I have a simpler and more understandable operation guide?
谢谢,Skywei5830.
嗨Skywei5830,
我建议您在OTP / OTP标题不刻录的电路板中尝试。通常,客户在最终产品中使用OTP,而不是用于调试/教育范围。是的,您可以直接通过Keil下载FW到System-RAM。按两次“开始/停止调试会话”按钮,将下载FW。
如果您正在启动新设计,我们将强烈建议进入DA14531和SDK6.0.12,因为它更加有所改善。我们有很多代码示例和改进的文档,还有软件路线图支持。请结帐DA14531支持门户:
https://www.dialog-seminile.com/produ雷电竞官网登录cts/connectivity/bluetooth-low-energy/products/da14531.
谢谢,PM_Dialog
嗨pm_dialog,
Thank you! Thanks for your advice!
嗨Skywei5830,
Thanks for accepting my answer. I you have any follow up question, please create a new forum thread.
谢谢,PM_Dialog