嗨,对话团队,
我本周试图烧掉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
[信息概述@ 20-01-06 19:36:36] romtbl [0] [0]:e000000,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]精选的设备。
[信息OTP图像@ 20-01-06 19:43:29]标题记录已从十六进制文件xxxxxxxxx.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:
OTP图像区域,其中将用户代码放置并在引导时镜像到SYSRAM。
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 .......我一次又一次尝试,但是在日志上出现相同的错误消息。
我的电路板没有外部闪存,所以我无法尝试与闪存程序员连接。我使用源代码项目昨天在Keil的在线调试,电路板可以正常运行。
谢谢,
嗨pm_dialog,
我改变了电路板的电源,然后刻录了OTP图像。当我单击“CNNect”按钮时,日志上没有错误,但是我点击“刻录”按钮,有一个如下所示,
[信息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
[信息OTP图像@ 20-01-07 11:41:54] romtbl [0] [2]:e0002000,cid:b105e00d,pid:000bb00b fpb
[信息OTP图像@ 20-01-07 11:41:55]固件文件c:\程序文件(x86)\ smartsnippetstoolbox \ smartsnippetstoolbox5.0.10 \ common_resources \ supportpackages \ toolbox_resources / common / jtag_programmer.bin已成为选择下载。
[信息OTP图像@ 20-01-07 11:41:55]成功下载了固件文件到电路板。
[警告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失败。
[错误OTP图像@ 20-01-07 11:42:03]读取内存失败。
那么,通过JTAG燃烧OTP是否有很高的功率要求?烧糊的时候还有什么需要注意的吗?
我觉得我没有成功,非常感谢。
嗨Skywei5830,
如果我能够正确理解,在您使用的定制板中,OTP已经被您的前同事烧毁了吗?你能在董事会中试试,OTP没有烧焦吗?此外,我建议在SmartSnippets Toolbox中连接UART而不是JTAG。只要启用名为JTAG Enable标志的OTP标题字段,就可以直接刻录SystemRam。如果刻录应用程序标志并且禁用JTAG启用标志,则设备将无法访问。
谢谢,PM_DIALOG.
感谢您的回复!
我试图通过UART而不是JTAG连接,在烧毁OTP的过程中,当消息“请按下板上的硬件重置按钮开始下载过程。”出现了,我按下了电路板上的重置按钮,我确认复位引脚已经高,但未触发DA14585复位,错误消息在日志上显示如下,刻录处理中止。
[信息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已成为选择下载。
[INFO OTP Image @20-01-08 09:24:51]连接COM10端口成功。
[信息OTP图像@ 20-01-08 09:24:51]开始下载程序...
[动作OTP图像@ 20-01-08 09:24:52]请按电路板上的硬件重置按钮启动下载过程。
[错误OTP图像@ 20-01-08 09:25:07]超时:重置信号未检测到超过16000毫秒。
[信息booter @ 20-01-08 09:25:07]成功断开了COM10端口。
[错误OTP图像@ 20-01-08 09:25:07]将固件文件下载到电路板上失败。
谢谢。
嗨Skywei5830,
您能否注明OTP和OTP标题是否已从前同事刻录?您是否尝试过直接通过Keil下载FW?或者你试图烧掉SPI闪光灯吗?如果您与另一个DK一起尝试,您是否能够复制此问题?
谢谢,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
[INFO General @20-01-10 17:56:21]未预选AP。假设AP [0]是AHB-AP
[信息常规@ 20-01-10 17:56:21] AP-IDR:0x04770021,类型:AHB-AP
[信息概述@ 20-01-10 17:56:21] AHB-AP ROM:0xE00FF000(基础Addr。第一rom表)
[信息概述@ 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组件:
[信息概述@ 20-01-10 17:56:21] romtbl [0] @ E00FF000
[INFO General @20-01-10 17:56:21] ROMTbl[0][0]: E000E000, CID: B105E00D, PID: 000BB008 SCS
[信息概述@ 20-01-10 17:56:21] romtbl [0] [1]:E0001000,CID:B105E00D,PID:000BB00A DWT
[信息概述@ 20-01-10 17:56:21] romtbl [0] [2]:e0002000,cid:b105e00d,pid:000bb00b fpb
[信息概述@ 20-01-10 17:56:21]选择了BTLE设备。
[信息OTP图像@ 20-01-10 17:56:34]标题记录已从十六进制文件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
[信息OTP图像@ 20-01-10 17:56:38] AHB-AP ROM:0xE00FF000(基础ADDR。第一rom表)
[信息OTP图像@ 20-01-10 17:56:38]找到了Cortex-M0 R0P0,Little Endian。
[信息OTP图像@ 20-01-10 17:56:38] FpUnit:4代码(BP)插槽和0个字幕插槽
[信息OTP图像@ 20-01-10 17:56:38] Coresight组件:
[信息OTP图像@ 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
[信息OTP图像@ 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]阅读内存内容......
[信息OTP图像@ 20-01-10 17:56:49]开始燃烧内存,在地址0x7F80000处以62208个字节的数据。
[信息OTP图像@ 20-01-10 17:56:50]内存刻录成功完成。块1的2
[错误OTP图像@ 20-01-10 17:56:50]地址7FC7C02的写入长度失败。
[错误OTP图像@ 20-01-10 17:56:50]内存刻录失败。
你能告诉我这个警告消息意味着什么吗?这是警告消息导致编程失败吗?
[警告OTP图像@ 20-01-10 17:56:46]在文件末尾添加的4零个字节以Word对齐数据
我已经下令购买你的DKS,它正在前往中国,大约需要2周,也许我可以在收到DKS后更好地验证。
这些星期如此累,我以为燃烧的OTP是一件非常简单的事情,但这不是。我没有在中国的互联网上获得大量关于DA14585的信息,其中大多数是DA14580,几乎没有关于如何通过JTAG接口刻录OTP的信息。
但我也获得了您的新知识,感谢您的帮助和指导。
嗨Skywei5830,
这意味着您无法刻录OTP。您能否导出OTP标题并与我分享它?您可以导出它认为SmartSnippets Toolbox。请在OTP未刻录的新设备中尝试。你试图下载FW以为Keil吗?
谢谢,PM_DIALOG.
嗨pm_dialog,
您可以在附件上读取OTP标题。我买的设备已经尝试过。我会买新的,然后再试一次。我没有电路板上没有外部闪光灯,我可以直接下载固件直接想到keil吗?我认为Keil只能用于在线调试,让代码在RAM中运行。我尝试过在线调试,代码正常运行RAM。
代码调试完成后OTP刻录完成,产品设计完成。这项工作通常由较少专业人员完成,所以我想,我可以拥有更简单,更可理解的操作指南吗?
谢谢,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,
谢谢!谢谢你的建议!
嗨Skywei5830,
谢谢你接受我的答案。我有任何后续问题,请创建一个新的论坛线程。
谢谢,PM_DIALOG.