【已解决】Silicon Laboratories IDE出错:Detected un-supported target version
【现象】
硬件:Silicon Laboratories USB Debug Adapter
http://www.silabs.com/Support%20Documents/TechnicalDocs/USB_Debug_Adapter_UG.pdf
软件:Silicon Labs_mcu_ide.exe,SiC8051F_uVision.exe,Keil
现象:使用Silicon Laboratories IDE+USB Debug Adapter,配置好后:
去连接USB debug调试器:
先是提示需要重新烧录更新adapter:
The debug adapter must be reprogrammed in order to function properly with this version of the software. Do you want to update the serial adapter now?
点击确定后,开始更新版本,但是更新之后,却出错:
Detected un-supported target version.
Please download a new version of the Silicon Laboratories IDE from www.silabs.com or contact your sales representative for an upgrade.
【解决过程】
1. 看起来是说,目标版本不支持,需要我们去下载一个最新版本的Silicon Lab的IDE,但是实际上,通过 Help->Check for Updates:
可以查得此版本已经是最新版的了。
对应的当前版本是4.20.00。
2.网上google一番,找到一些相关的讨论:
http://www.cygnal.org/ubb/Forum4/HTML/001020.html
http://www.cygnal.org/ubb/Forum1/HTML/003130.html
http://www.cygnal.org/ubb/Forum4/HTML/001092.html
http://www.cygnal.org/ubb/Forum4/HTML/000204.html
http://www.cygnal.org/ubb/Forum1/HTML/003421.html
http://www.cygnal.org/ubb/Forum4/HTML/000633.html
http://microgo.blog.163.com/blog/static/93649307200981741337667/
但是这些讨论中,都没有给出可行的解决方案。
不过,根据上述讨论,去做了个尝试:
3.用Silabs的工具重新烧写USB Debug Adapter的固件:
去C:SiLabsMCUUtilitiesUSB Reset中找到USB Debug Adapter Firmware Reset.exe工具,运行后,可以找到当前的USB debug工具:
然后点击Update Firmware,是可以正常更新firmware的:
但是,此时再去Silicon Lab IDE中去点击Connect以连接USB Debug Adapter的时候,又继续复现上述问题,即提示要“。。debug adapter must be reprogrammed。。。”,然后如果更新的话,就又出现上述“Detected un-supported target version”的错误,然后就无法连接,始终出现这个错误了。
4.也尝试了Tools->Erase Code Space:
5.后来好不容易找到了一个别的版本的Silicon Lab IDE:
重装了这个版本,再去尝试,问题依旧,和4.20.00版本的现象是一样的,还是无法解决问题。
6.后来找到了另外一个很老的版本,v2.7的Silicon Lab IDE,就可以正常连接了。
但是也还有点其他问题,因为连接上后,检测到的目标板的信息有误。
本身我的目标板的C8051F340,但是检测出来的却是C8051F000:
并且,在接下来点击去download code,也还是会出错:
然后又试了几次,后来可以download code了,结果是,虽然可以擦除flash,但是最后烧写也还是失败了:
想要去将flash中code上传出来,结果出错:
7. 后来又去尝试了下,用2.7和4.14两个不同版本的USB Reset工具(安装路径UtilitiesUSB ResetUSB Debug Adapter Firmware Reset.exe)去重置USB Debug Adapter中的固件,然后再去尝试链接,现象还是一样的:
旧的2.7版本的,虽然能连接上,还是无法正常识别出芯片版本。
新的4.14或4.20版本的,还是无法连接上。
8.最后换了块板子,然后就可以正常连接了,就可以正常识别出CPU是C8051F347了:
【结论】
1. 此处问题原因是,硬件板子有问题,导致Silicon Lab IDE不能正常通过USB Debug Adapter连接和检测出开发板上的CPU,换了个正常的板子,即可解决。
2. 即使硬件错误,软件也要想方设法多方面尝试,在尝试过程中,也会遇到和学习很多之前没遇到过的知识。
3. 后来经过尝试,如果debug工具,没有连接开发板或者开发板没有上电,也会出现前面“Detected un-supported target version”的错误提示,所以,这下就很清楚了,如果出现这个错误,那基本上就是目标开发板没有上电,或者就是没有检测到。而之前用USB Rest工具区reset,只是重置了USB Debug Adapter工具内部的firmware,所以,无论如何reset,也还是和目标开发板没啥关系的,所以对解决此问题也还是没啥帮助的。
【关于Silicon Lab的USB Debug Adapter的一些注意事项】
1. 选JTAG还是C2:
a. 当MCU 为C8051F00X/01X/02X/04X/06X/12X/2XX 系列时,选择JTAG;
b. 当MCU 为C8051F3XX、4XX、5XX 系列时,选择C2。
2. 当打开一个旧的xxx.wsp的工程的时候,会提示你找不到对应文件,然后需要你手动去添加。可以一个个按照提示添加,也可以取消添加,手动去Common Source File中点击右键去添加对应的C文件:
3. 编译的时候,如果出错,显示是某个OBJ文件找不到的话,那么去:
Project -> Target Build Configuration->Customize-> Files to Link, 先Remove All,再Add all OBJ files,就可以添加和更新所有对应的obj文件了。然后再编译,就可以成功了:
转载请注明:在路上 » 【已解决】Silicon Laboratories IDE出错:Detected un-supported target version