你好,
我试图OTP烧伤一个DA14585微控制器在一个定制的PCB上使用一个开发工具包pro。我能够连接和读取我的板成功,但OTP烧伤失败。我收到的信息是“清除内存地址7FC7C08失败”。我将在这条消息的底部包含完整的日志。
在内存目录表中,我只能查看内存地址0x07F80000到0x07F8FFF8。我不知道地址7FC7C08是怎么回事你对下一步有什么建议吗?
谢谢你!
[INFO General @20-07-22 14:21:37]找到ID为0x0BB11477的SW-DP
[INFO General @20-07-22 14:21:37]扫描AP地图,找到所有可用AP
[INFO General @20-07-22 14:21:37] AP[1]:当到达AP地图结束时,停止AP扫描
[INFO General @20-07-22 14:21:37] AP[0]: AHB-AP (IDR: 0x04770021)
[INFO General @20-07-22 14:21:37]迭代AP地图,找到AHB-AP
[INFO General @20-07-22 14:21:37] AP[0]:找到核心
[INFO General @20-07-22 14:21:37] AP[0]: AHB-AP ROM base: 0xE00FF000
[INFO General @20-07-22 14:21:37] CPUID寄存器:0x410CC200。实现者代码:0x41 (ARM)
[INFO General @20-07-22 14:21:37] Found Cortex-M0 r0p0, Little end。
[INFO General @20-07-22 14:21:37] FPUnit: 4个代码(BP)槽和0个文字槽
[INFO General @20-07-22 14:21:37] CoreSight组件:
[INFO General @20-07-22 14:21:37] ROMTbl[0] @ E00FF000
[INFO General @20-07-22 14:21:37] ROMTbl[0][0]: E000E000, CID: B105E00D, PID: 000BB008 SCS
[INFO General @20-07-22 14:21:37] ROMTbl[0][1]: E0001000, CID: B105E00D, PID: 000BB00A DWT
[INFO General @20-07-22 14:21:37] ROMTbl[0][2]: E0002000, CID: B105E00D, PID: 000BB00B FPB
[INFO General @20-07-22 14:21:37] BTLE设备已选中。
[INFO OTP Image @20-07-22 14:21:37]复位:通过demcr . vc_coreeset复位后暂停内核。
[INFO OTP Image @20-07-22 14:21:37]重置:通过AIRCR.SYSRESETREQ重置设备。
重置:通过demcr . vc_coreeset重置后暂停内核。
[INFO OTP Image @20-07-22 14:21:38]重置:通过AIRCR.SYSRESETREQ重置设备。
[INFO OTP Image @20-07-22 14:21:38]固件文件c:\ users \ dominc \ document \ scihub \ sdk6.0.14.1114 \config\toolbox_resources/DA14585-586/common/ jtag_programman .bin已被选择下载。
重置:通过demcr . vc_coreeset重置后暂停内核。
[INFO OTP Image @20-07-22 14:21:38]重置:通过AIRCR.SYSRESETREQ重置设备。
[INFO OTP Image @20-07-22 14:21:38]成功下载固件文件到单板。
开始从内存中读取65536个字节。
[INFO OTP Image @20-07-22 14:21:43]开始从OTP内存地址0x7F80000读取65536字节。
[INFO OTP Image @20-07-22 14:21:44]读取32768字节的偏移0x7F80000。
[INFO OTP Image @20-07-22 14:21:44]读取32768字节的偏移0x7F88000。
阅读完毕。读取65536字节。
[INFO OTP Image @20-07-22 14:21:48]在地址0x7F80000开始燃烧25112字节的数据内存。
[INFO OTP Image @20-07-22 14:21:48]开始从OTP内存地址0x7F80000读取25112字节。
[INFO OTP Image @20-07-22 14:21:49]读取25112字节,偏移0x7F80000。
[INFO OTP Image @20-07-22 14:21:51]在地址0x07F80000开始燃烧25112字节的数据内存。
[ERROR OTP Image @20-07-22 14:21:54]地址0x7FC7C08读取内存失败。
[ERROR OTP Image @20-07-22 14:21:54]内存燃烧失败。
嗨dbonelli,
谢谢你的发帖-让我问你一些事情:附件日志是当你试图连接或编程的OTP?你能编程SPI flash吗?
谢谢,PM_Dialog
嘿,PM_Dialog,
附件日志开始时,我第一次连接到我的定制板,当我试图OTP烧伤。换句话说,日志包括SmartSnippets工具箱中的连接、读取和刻录的结果。
至于SPI flash,如果我错了,请纠正我,但我不认为我可以使用SPI flash,因为我在我的定制板上使用DA14585芯片,因为我的定制板不包括外部闪存。
谢谢,多米尼克
嗨dbonelli,
能否分享一下你们的定制板是如何通过JTAG连接到我们的DK的?
DA14585不包括嵌入式SPI flash。DA14586有一个嵌入式SPI Flash (2MBits)。在DA14585的情况下,如果您没有使用外部SPI闪存,您可以刻录System-RAM或OTP。记住,OTP代表One Time Programmable,因此你不能擦除和重写OTP多次,但你只能翻转仍然设置为0的位并将它们变成1。
你为什么要烧了OTP?
谢谢,PM_Dialog
你好PM_Dialog,
在大多数情况下,我使用JTAG连接我的自定义板到DK这篇文章.唯一的区别是,我使用外部电源提供6.8 V的VPP线,我已经断开了我的3.3 V电源。我发现我不能运行6.8 V和3.3 V电源同时,因为它迫使两个电源的电流限制。设置我的板这种方式,我可以连接和读取我的自定义板。但由于上述错误消息,我无法烧毁OTP。
我需要刻录OTP,因为我在定制板上使用DA14585芯片,板上没有外部闪存。
谢谢,多米尼克
嗨,多米尼克,
你不需要为585提供6.8v电源来进行OTP编程。只要一个Vbat_3v电源就足够了。
请再试一次,并让我们知道结果。
Br,宜宾
你好,宜宾,
我刚刚尝试了你的建议。我可以连接到我的定制板,但我不能阅读,也不能燃烧。我收到了相同的错误消息从我的日志,“清除内存地址7FC7C08失败。”我测试的定制板包含一个新的DA14585芯片。
以下是我建立的联系:
开发工具包
定制的董事会
没有连接
3.3V(接通电源)
没有连接
VPP(没有连接)
J5销3
RST
J5销25
SWDIO
J5销27
SWCLK
J5销4
GND(也连接电源)
对此我们还能做些什么呢?错误消息的重要性是什么?
谢谢,多米尼克
很抱歉,桌子没有像我想的那样出来。请看附呈的形象。
谢谢,多米尼克
嗨dbonelli,
请问您使用以下哪个dk来闪光您的定制板?
//www.xmece.com/亚博电竞菠菜products/da14585-development-kit-pro
//www.xmece.com/亚博电竞菠菜products/da14531-development-kit-pro
谢谢,PM_Dialog
你好,
我正在使用DA14585 DK pro。
最好,多米尼克
嗨dbonelli,
正如在之前的论坛帖子中提到的,您可以通过UART或JTAG接口对OPT进行编程。
JTAG接口,需要的连接有:
J4 - Pin 1 (VBAT_580) - > Vcc的自定义板。
J4 -引脚25 (TMS) - > SWDIO自定义板引脚。
J4 -引脚27 (TCK) - > SW_CLK自定义板引脚。
J4 -引脚2 (GND) - >到自定义板的地面。
UART接口,所需的连接是:
J4 - UTX - >在自定义板的RX引脚上。
J4 - URX - >上的TX引脚的自定义板。
J4 - RST - >到定制板的RST引脚。
J4 - VBAT_580 - >到自定义板的Vcc。
谢谢,PM_Dialog