这是一个成熟的发展。我使用一个Pro开发工具包来查看和使用JTAG接口编写基于Murata的子板。我也使用了DA14580 QFN48子板。这2块板已经用相同的图像进行了OTP编程。我没有问题使用SmartSnippets连接、读取和编程新的Murata模块与插槽的子板。
我好像连不上现成的子板。我不完全确定它是如何被编程的,但我相信在某一点上有人发现了它。
如果我使用JTAG与QFN48子板,我只是得到以下:
[INFO @17-04-14 09:59:37]下载固件到单板失败。
如果我使用UART,它想要重置:
[INFO @17-04-14 10:02:59]固件文件C:\Users\polloj2\SmartSnippets\resources\programmer_ES5.bin已被选择用于下载。
[INFO @17-04-14 10:02:59] Connection to COM12 port has successfully opened。
[INFO @17-04-14 10:02:59]已启动下载程序…
[ACTION @17-04-14 10:03:00]请按单板上的硬件复位按钮开始下载过程。
我在寻找为什么这两个板有相同的固件会不同的可能性。
谢谢你,约翰
设备:
你好,
不知道正确理解你的问题,但想描述JTAG和UART编程过程之间的区别。
JTAG是DA14580 SOC中的DMA主硬件。一旦连接上,它就可以暂停/挂起M0核心,并访问所有允许的资源。因此,通常不需要重置用户。挂起M0核心后,ISP固件可以下载到内部RAM并执行。通过在RAM中交换控制/状态信息的专有握手协议,可以下载并相应地编程OTP内容。
UART编程要求BOOT ROM获得控制来运行引导加载程序协议来接受ISP固件下载到RAM中。因此,它要求用户重置DA14580以运行BOOT ROM代码来扫描有效的应用程序映像所在的位置。一旦ISP固件被下载到RAM中执行,一个专有的握手协议通过UART交换控制/状态,允许OTP内容下载和编程工作继续进行。
请注意,可以在OTP数据部分禁用JTAG访问特性。如果禁用,JTAG连接将始终失败。
从捕获的语句,JTAG连接失败可能是由于在OTP中禁用了JTAG访问。重启硬件的提示是运行BOOT ROM代码接受ISP固件下载。
希望这些信息能澄清您的疑问。
问候,