一、背景 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/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