EFR32 JTAG/SWD烧录失败原因

EFR32支持JTAG和SWD两种方式烧录

1、烧录,调试默认相关引脚PF0、PF1、PF2、PF3(EFR32MG1 Data Sheet)
EFR32 JTAG/SWD烧录失败原因_第1张图片EFR32 JTAG/SWD烧录失败原因_第2张图片SWD:SWD是ARM公司提出的另外一种调试接口,相对于JTAG接口,使用更好的信号引脚,6根信号线如下,其中1~4是必选,5和6是可选的:

  1. Vref:目标表参考电压信号,用于检测目标板是否供电,直接与目标板VDD相连,并不向外提供输出电压;
  2. GND:公共地信号;
  3. SWDIO:串行数据输入信号,作为仿真信号的双向数据信号线,建议上拉;
  4. SWCLK:串行时钟输入,作为仿真信号的时钟信号线,建议下拉;
  5. SWO:串行数据输出,CPU调试接口可通过SWO输出一些调试信息,该引脚是可选的;
  6. RESET:仿真器输出至目标CPU的系统复位信号;是可选信号。

重点1:
在程序设计时应避免外设和这些IO冲突,这里举个例子,例如你需要将PF0/PF1设为串口的TX/RX,为了避免SWD接口对串口的影响,那么你应该会调用以下代码来禁用SWD接口,但是往往初始化都是在程序的开端,当下次烧录时你会发现烧录不了,因为CPU已经执行下面的几句代码,从而将SWD禁用了,所以你烧录不了。

 GPIO_DbgSWDClkEnable(false);
 GPIO_DbgSWDIOEnable(false);
 GPIO_DbgSWOEnable(false);

重点2:
使用Simplicity Studio 4开发时,在isc文件的Plugins选项中有个Debug JTAG插件默认是勾选的,如果用不到我们应该取消勾选,要不然在使用相关IO时会出现一些奇怪问题。

你可能感兴趣的:(ZigBee,EmberZNet,EFR32)