圖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的結構圖解。