一、背景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的安装目录(..\Keil\ARM\ULINK\Utilities)下,现在问题来了,我又不想装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/1c1LRS6c2、 "ULINK: No ULINK Device Found"http://www.keil.com/support/docs/3613.htm3、 "ULINK2 User's Guide --> Hardware Checklist":http://www.keil.com/support/man/docs/ulink2/ulink2_trblsh_hwcheck.htm4、 "ULINK: How to downgrade the firmware of ULINK2/ME"http://www.keil.com/support/docs/3632.htm 至此记录完毕。记录时间:2016年11月14日 记录地点:深圳WZ