由于项目需要多个设备联合调试,有的在外场,或者各分系统工程师不能都到现场,考虑MDK用远程调试的办法来协作: 1. 远程控制现场的计算机上的MDK软件,比如用TeamViewer来实现,不过问题是源代码会被现场的第三方从调试机上获取,存在重大泄密风险。 2. 用支持网络的JTAG调试器,此类调试器价格太高,J-Trace高达1万人民币以上,其它有没有便宜的就不知道了。 3. J-Link Remote Server远程控制,现场用J-Link调试器+受控计算机,MDK在远程计算机上,这样现场就不需要源代码,而且远程下载的测试程序可以加入约束程序,防止被读取flash程序。 大家还有什么更好的想法? |
3. J-Link Remote Server远程控制
这个模式下测了IAR,能够用tunnel模式跨internet实现Debug,但是响应之慢绝对让你崩溃。MDK不支持tunnel模式,无法实现。
非tunnel模式下,只能局域网远程控制,响应略感延迟,IAR与MDK均支持。
于是将调试计算机设置VPN服务器,开发计算机跨internet通过VNP连接调试计算机组建VPN局域网,基于VPN的局域网模式调试成功。
基于方案3的改进猜想,由于只需要调试机上运行J-Link Remote Server,而且有ARM版驱动,可以考虑用RaspberryPi作为调试机,并配置为VPN服务器,比支持网络的调试器性价比高多了,等那天闲的蛋疼再来试验这个方法,如果可行J-Link+RaspberryPi的跨internet调试器绝对是神组合。