图1ide
开发工具:Xilinx SDk 14.4(基于Eclipse,ISE suite 14.4组件之一)工具
开发板:Xilinx ZYNQ-7000 zc702 rev 1.0(注意:这个板子的版本说明也是相当重要的,由于我还发现了rev c版本,比rev 1.0少了个开关)开发工具
问题描述:测试
当对开发板进行Hello_world测试,用SDK经过JTAG对开发板调试,出现如下错误(截图如上)ui
could not find a ARM device on the board.Please check if the target is in:.net
1. Split JTAG mode – No operation are possible with ARM DAP调试
2. Non JTAG bootmode – Bootro may need time to enable DAP.Please try againorm
Troubleshooting hints:blog
1. Check whether board is connected to the system properly.ip
2. In case of zynq board,check whether Digilent/xilinx cable switch settings are correct.
3. If you are using Xilinx Platform cable USB,ensure that status LED is green.
=============================
因为这款板子是比较新的产品(ZYNQ-7000系类),关于开发基本流程、错误处理等资料比较少(其实更应该说本鸟比较菜),这么一个基本的板子测试都搞不定,最后在赖学长的帮助下,花了一个下午终于解决了,在此对学长表示感谢(浪费了他一下午)!
我犯的一个致命错误是,拿到一个开发板尤为是一个比较复杂的板而且从未涉及到的板子,首要任务就是到官网找相关资料,好比datasheet,userguide等等。userguide等文档颇有可能会(若是是正规公司或者说这个公司不坑)一步一步教你如何入手,好比基本开发流程、用到的工具等等,这样会少走好多弯路。
学长从xilinx官网上果真找到了userguide,上面用的开发环境是ISE 14.1 suite 的PlanAhead工具,演示用的板子是Xilinx ZYNQ-7000 zc702 rev c ,本觉得这样循序渐进,彻底按照UG的说明来就能够顺利经过,但是最后还是出现Unable to connect to ps7_cortexa9错误。咱们猜想是否是UG上的板子版本号、PlanAhead版本号与本机上的不一样致使的,因而另从官网下载了PlanAhead 14.4的示例,里面用的板子正好是Xilinx ZYNQ-7000 zc702 rev 1.0,因而发现:
图2
用SDK14.4 对板子进行JTAG调试时,对应的开关与跳线设置必须是上图的设置。尤为注意SW16中的四个拨动开关必须同时拨到右侧。SW16多是开发板的启动设置,datasheet说明以下:
图3
也就是说SW16全是0,才是JTAG调试模式,这样SDK下载.elf文件就不会报错了。
综上:
一、SDK run configuration前,确保开关与跳线如图2中红圈所示;
二、USB UART、JTAG都与PC机相连。
心得:
一、查阅官方文档,开发工具说明
二、相信学长
附件下载http://download.csdn.net/detail/sky_hiter/6410023
附件中的ctt有PlanAhead的开发流程,bd有ZC702的结构图解。