你好,我有一个DA14585基本开发工具包,并试图运行ADXL345 I2C蓝牙演示(链接)。设置示例的python脚本运行时没有错误,项目在Keil uVision5中编译时没有错误或更改任何设置。J-link软件V6.40已安装并正常工作。
我在过去运行过其他演示(1wire示例,i2c_eeprom等),没有问题,所以我认为这不是硬件问题。
问题是当我去运行调试器。使用的默认设置(在目标>调试选项下)ULINK2 /我皮层调试器这显然失败了,因为我的主板上有J-link调试器。
当我更正此设置时(切换到J-LINK / J-TRACE Cortex),我得到了错误,闪存下载失败-“Cortex-M0”。构建输出如下所示。
我假设这是因为我的板上没有闪存芯片,那代码必须加载到ROM。我如何纠正这个?
非常感谢。
加载“C:\\Users\\me\\Downloads\\i2c\u accel\u data\u Notification\\i2c\u accel\u data\u Notification\\project\u environment\\out\u 585\\ADXL345\u 585.axf”将JLink项目文件设置为“C:\Users\me\Downloads\i2c\u accel\u data\u Notification\i2c\u accel\u data\u Notification\project\u environment\JLinkSettings.ini”*已选择“CORTEX-M0”设备。JLink信息:------DLL:V6.46,编译于2019年5月23日17:49:56固件:J-Link OB-SAM3U128 V1编译于2019年1月7日14:05:40硬件:V1.00序列号:480061187*JLink信息:找到ID为0x0BB11477的SW-DP*JLink信息:扫描AP映射以查找所有可用AP*JLink信息:AP[1]:在到达AP映射结束时停止AP扫描*JLink信息:AP[0]:AHB-AP(IDR:0x04770021)*JLink信息:迭代AP映射以找到AHB-AP以使用*JLink信息:AP[0]:找到的核心*JLink信息:AP[0]:AHB-AP ROM库:0xE00FF000*JLink信息:CPUID寄存器:0x410CC200。实现者代码:0x41(ARM)*JLink信息:找到的Cortex-M0 r0p0,Little endian.*JLink信息:FPUnit:4代码(BP)插槽和0文字插槽*JLink信息:CoreSight组件:*JLink信息:ROMTbl[0]@E00FF000*JLink信息:ROMTbl[0][0]:E000E000,CID:B105E00D,PID:000BB008 SCS*JLink信息:ROMTbl[0][1]:E0001000,CID:B105E00D,PID:000BB00A DWT*JLink信息:ROMTbl[0][2]:E0002000,CID:B105E00D,PID:000BB00B FPB ROMTableAddr=0xE00FF000*JLink信息:复位:通过DEMCR.VC\U CORESET复位后停止堆芯。*JLink信息:复位:通过Aircrat.SYSRESETREQ复位设备。目标信息:-------设备:ARMCM0 VTarget=3.300V引脚状态:TCK:0,TDI:1,TDO:1,TMS:1,TRS:1硬件断点:4软件-断点:8192观察点:2 JTAG速度:2667 kHz未找到算法:07FC0000H-07FC009FH未找到算法:07FC0510H-07FC7A27H已跳过擦除!错误:闪存下载失败-“Cortex-M0”闪存加载于09:01:02完成
设备:

这有点尴尬,但也许它会帮助其他有同样问题的人。
在目标>的选项下调试>J-Link/J-Trace皮层设置>Flash下载,我选择了不要抹掉并取消选择所有3个编程、验证、重置和运行选择也是如此。
调试器现在运行,我可以通过手机上的BLE扫描仪应用程序连接到主板。
这是正确的解决方案吗?
嗨,阿希格斯,
这种错误最可能的原因是为什么在keilide中没有正确地检测到JTAG。当通过Keil IDE下载固件时,二进制映像存储到系统RAM中,芯片从此处启动。为此,“请勿擦除”选项不会影响工具环境设置,因为没有使用Keil IDE将代码下载到SPI闪存中的选项。请参阅附件中推荐的-Link/J-Trace设置。下次出现这些错误时,应导航到target>Debug>J-Link/J-Trace Cortex设置的选项,确保SN和SWD ID代码显示在窗口中,然后按OK。关于您的信息,如果您想将FW下载到外部SPI闪存中,您应该使用SmartSnippets工具箱中的Flash程序员。可以选择通过UART或JTAG下载fw。该工具可在DA14585/586产品页上找到。请记住,将fw下载到系统RAM中后,二进制代码将在每次启动或重置时丢失。
谢谢,PM_Dialog
谢谢你的回复。我已经查看了您附加的JLink设置,它们与我已经使用的设置相同。我板上的序列号和识别码都显示出来了。
嗨,阿希格斯,
谢谢你的最新消息。既然你有了合适的S/N和IDcode,这就足够了,你应该能够下载/调试项目。如果你觉得答案有用,请标记为“接受”。
谢谢,PM_Dialog
我似乎能够调试项目,但仍然不确定为什么我不能调试这个项目,以同样的方式,我已经试验过的其他项目
嗨,阿希格斯,
可能在Keil IDE中未正确检测到JTAG。
谢谢,PM_Dialog