openSDA
OpenSDA是一款开源的ARM串行调试器,它主要用在NXP官方的开发板上,提供一个板载的调试和编程接口(例如Kinetis的各种官方开发板上都是它),但也可制作为单独的调试器使用。
|Bootloader| 调试APP| KEIL| IAR| CodeWarrior| KDS | 备注 | 固件和驱动下载地址 |
| --------|------- | --- | --- | -| ---| ----- | --------- | |
| OpenSDAv2| OpenSDA-CMSIS-DAP | ● | ● | X | ○ | 开放源码 | github.com/mbedmicro/C… |
| OpenSDAv2| Jlink | ● | ● | ● | ● | 无源码,非商用 | www.segger.com/opensda.htm… | |
| OpenSDAv2| P&E | ○ | ● | ○ | ● | 无源码,非商用? | www.pemicro.com/opensda/ | |
| OpenSDAv2| USBDM | X | X | ○ | ○ | 开放源码 | usbdm.sourceforge.net/
| 图标 | 备注 |
|---|---|
| ● | 原生支持 |
| ○ | 补丁后支持 |
| X | 不支持 |
更新固件
按住OpenSDA编程器的Reset按键,插入USB线。此时OpenSDA会擦掉自己的应用固件,进入Bootloader,表现为在Windows里会认出一个U盘。
将下载的编程器应用固件,比如J-Link的"OpenSDA_V2_1.bin"拷贝/拖动到这个U盘里,它就会自动烧写更新,完成后小灯快速闪烁。
重新插拔USB,可以看到已经被识别为新下载的编程器设备了(比如J-Link)。
CMSIS-DAP
我手上的一块板子上的MCU是 MKL26Z256, 属于Kinetis L家族,具有 256KB FLASH 空间和 32KB SRAM 空间。板子上的openSDA上烧写的是opensda v2版本,参考说明建议使用OpenSDAv2.1固件
JLink
在官网翻到下面
我的是MKL26Z256,所以选择KL26
但是官方给出的bootloader却是v1.0,我的板子默认的bootloader是v2,可能是因为这个原因,导致我将对应的bin文件拖动进去后毫无反应
后来发现上面是特定板子的firmware,上面有一个通用的firmware,直接下载一个v2的J-Link firmware,就成功了