ISE MicroBlaze GPIO輸入輸出測試總結

ISE軟核MicroBlaze GPIO輸入輸出測試總結

      ISE中例化MicroBlaze軟核的過程可以參考其它資料,此處無需贅述。軟核入門級的例程不外乎LED燈,即通過GPIO口輸出的信號。下面是對GPIO接口進行輸入輸出測試的相關總結。

1、軟件版本:ISE14.4

              芯片型號:XC6SLX16-3

2、輸入輸出測試可以根據自有硬件平臺選擇不同方式,輸入至軟核的信號可以打印出來觀察,軟核輸出的信號可以通過LED燈、串口等方式進行觀察。當前使用的硬件平臺只有幾個LED燈,本次測試中輸出選擇LED燈作爲觀察方式。

3、本次測試爲在線調試。測試思路爲,FPGA中週期計數,輸入MicroBlaze軟核,通過一個GPIO輸入接口讀取,然後打印出來,觀察數據是否正確;再將讀取的數據通過另一個GPIO輸出接口輸出至FPGA,然後作爲輸出信號連接到LED。

4、測試程序中的C程序部分使用ISE自帶例程。需要注意的是,MicroBlaze軟核的外設是自定義的,需要哪個外設就添加哪個外設的IP核,添加外設的方式有兩種:一種是在Base System Builder中添加,另一種則是軟核生之後在XPS中添加需要的IP,分別如下圖所示。第一種方式添加外設,不需要手動連接信號,第二種方式添加外設需要手動連接信號(可以查找添加IP核的相關資料)。


5、MicroBlaze軟核和ARM等嵌入式器件很大的不同就是非常靈活,如前面所說的根據需要添加外設。連接好信號、分配完地址,硬件部分完成之後,硬件的信息會完全反映到軟件部分,如果後續添加了新的外設,相應的軟件會發生改變。注意觀察頭文件(xparameters.h)中的宏定義名稱和地址部分,即可發現。

6、system.mhs文件爲軟核的硬件規範,包含系統、外設的參數、接口等內容,在界面不好修改的內容可以考慮在該文件內進行修改。比如差分時鐘修改爲單端時鐘時,即可在該文件內進行修改(見參考資料)。

7、GPIO輸入輸出相關函數說明可見參考資料。程序中會遇到兩個變量DeviceId和Channel,其中DeviceId表示的是GPIO外設,對應哪個外設可以查看頭文件,Channel表示的是一個外設是否支持兩個通道,EDK中的GPIO外設屬性中可以進行設置,使用方式還不清楚。

 

參考資料:

1、本文測試例程下載地址,以供參考

           http://download.csdn.net/detail/kpsuwen/8994839

2、MicroBlaze完整例程詳解(百度文庫)

           http://wenku.baidu.com/link?url=Epvck4SgtNkrEe4YqNrr6PzTGzGpFktdicuYDixUDGCntcNlBbEes7YLjhrh7Y6vsA_1lWIkbRe-9kS4vepiGmEYil5nvkRyN6NgZoM-ELC

           http://wenku.baidu.com/link?url=p30Thj5y-5TxnUxkoJaWh1bAn-Z0I6V3y-jZR6BPY9HPO0LHDSAb06b_95j9VYt_uRVitSTGI0Y9gBmSzsHpfH5foc3IBrKy8kx0y84Rr4q


3、MicroBlaze GPIO API函數說明,見以下博客,很詳細

         http://bbs.elecfans.com/infocenter.php?mod=space&uid=1504142&do=blog&id=299228

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章