一、背景
keil使用ULINK2调试的时候,提示
"No Ulink Device found",
"error: flash download failed - Target DLL has cancelled" 。
之前一直都OK,然后今天突然不行,插上的时候,"COM","RUN"的绿灯也跟平时一样亮了1s左右,熄灭,
红灯也长亮,看设备管理器,电脑也识别了。后来才知道同事将ULINK带回家使用了,而他的keil版本是V4.70,
公司kel版本却是V4.60,问题就出在这里。
若是设备管理器找不到keil,那么就是ULINK硬件有问题,不在本篇文章讨论之列。
二、正文
出现原因:
ULINK根据PID分为两个可用固件版本:PID = "PID2720"或者PID = "PID2722"。
PID即USB的PID,查看方式为:
设备管理器 --> 人体输入学设备 --> HID-compliant device --> 右击选择属性 --> "属性"一框
--> 选择硬件ID --> 即可得到PID信息。
> "PID2720" --> 固件版本为V1.42或者更低的固件版本,则支持MDK-ARM V4.60或者更低的keil版本。
> "PID2722" --> 固件版本为V2.00或者更高的固件版本,则支持MDK-ARM V4.70或者更高的keil版本。
如果需要用该版本固件去配合MDK-ARMV4.60或者更低版本的KEIL使用,则应该
使用"UL2_Configure.exe"(附件)工具,将ULINK设置为"for ULINK boot mode"。
解决办法一共有两种:
1、 将MDK-ARM V4.60升级到V4.70以上版本。(V4.70调试的时候有些小问题,我暂时没这么干)。
2、 利用"UL2_Configure.exe"将ULINKD boot mode 更改为"for ULINK boot mode":
"UL2_Configure.exe"这个玩意儿在MDK v4.7的安装目录(..KeilARMULINKUtilities)下,
现在问题来了,我又不想装V4.70哪有这玩意儿,所以我把他提取出来了,下载链接见文章第三
部分。
操作办法既是:打开cmd,输入 :
..UL2_Configure.exe SN码 B0 ,然后回车(".."代表这个文件所在的链接。)
> SN码查看方法:keil --> Target option --> Debug --> setting
--> Serial No:SN码;
> B0 --> ULINK boot mode;
B1 --> CMSIS-DAP boot mode;
接着就会出现Disconnect......等等的提示,等待其自行操作完毕即可。
三、参考链接:
1、 "UL2_Configure.exe"下载地址:
http://pan.baidu.com/s/1c1LRS6c
2、 "ULINK: No ULINK Device Found"
http://www.keil.com/support/docs/3613.htm
3、 "ULINK2 User's Guide --> Hardware Checklist":
http://www.keil.com/support/man/docs/ulink2/ulink2_trblsh_hwcheck.htm
4、 "ULINK: How to downgrade the firmware of ULINK2/ME"
http://www.keil.com/support/docs/3632.htm
至此记录完毕。
记录时间:2016年11月14日
记录地点:深圳WZ