智能OPPO手機價格聯盟

Aritx7-50T EVM 試用日志(二)——MicroBlaze測試UART、GPIO

FPGA開發圈2020-11-19 11:51:41

試用開發板也有一段時間了,該開始寫一下日志了。由于項目上一直用不上Vivado,這次也慢慢的摸熟了。


首先談一下Vivado的使用體驗,感覺Vivado功能確實很強大,尤其是在模塊化設計,功能強大的集成可視化時序和布局布線分析,以及全新的Chipscope替代的在線邏輯分析工具。這些會在接下來的日志里慢慢與大家分享。


首先進行測試的是使用Xilinx的嵌入式軟核Microblaze,并用軟核測試開發板上的UART和GPIO功能。


測試工程的目標是通過串口助手發送一個字節的數據,然后用GPIO點亮相應位的LED。下面是實現步驟:


1、 在Vivado中建立一個基于開發板的工程如圖1,開發板的Board File可以去安富利官網下載。

圖1. 新建一個基于A7-50T開發板的工程


2. 新建一個Block Design,然后添加Uart和GPIO的IP,并修改默認的輸入輸出管腳。最后在source窗口中生成頂層文件。由于應用了Borad file,這里我們可以不用去管相應的IO約束。建好的工程如圖2.

圖2


3.編譯,生成Bit文件,將生成的文件倒入SDK,并啟動SDK,在SDK中寫入下列代碼。
#include
#include "xparameters.h"
#include "xil_cache.h"
#include "xgpio.h"
#include "gpio_header.h"
#include "xuartlite_l.h"
XGpio GpioOutput; /* The driver instance for GPIO Device configured as O/P */

int main()
{
int Status;
u8 uart_rec_data;
Status = XGpio_Initialize(&GpioOutput, 0);
if (Status != XST_SUCCESS) {
return XST_FAILURE;
}
/* Set the direction for all signals to be outputs */
XGpio_SetDataDirection(&GpioOutput, 1, 0x0);

/* Set the GPIO outputs to low */
while(1)
{
uart_rec_data=XUartLite_RecvByte(0x40600000);
XGpio_DiscreteWrite(&GpioOutput, 1, uart_rec_data);}

return 0;
}


4.串口輸入通過可編程通信助手,循環發送如下圖

輸出結果如下圖

推薦閱讀

基于Zynq的NI VirtualBench智能捕獲測量解放你的雙手

掀起存儲器帶寬的革命 —— Xilinx 新型FPGA將存儲器帶寬提升 20 倍

Kintex引領顯示 :基于Kintex的高性能示波器

【創客大福利】十大平臺等你來挑戰

Avnet Zynq收發套件讓你輕松傳輸巨量數據

“ pin-compatible FPGA的興起”: PRO DESIGN針對其proFPGA系統的擴展

什么是實時操作系統 (RTOS)?

【HLS視頻教程9】:Vivado HLS 下 C/C++ 測試平臺的基本架構

基于Xilinx UltraScale FPGA的100Gbps數據采集卡ANIC-200Ku

Xilinx于SC16展示針對云應用的可重配置加速方案

引爆可穿戴創新,誠邀參加“第二屆貿澤杯穿戴式智能硬件創客大賽”

“帶著ZYNQ安全前行”:基于ZYNQ的首款ADAS

用于RF收發器的簡單基帶處理器

“讓ZYNQ走的更遠”:適用于ZYNQ的機器視覺開發軟件

重磅!FPGA領域老三Lattice要變本土IC,老大賽靈思繼續獨孤求敗?

滄海一聲笑,細數紅極一時的Xilinx大學計劃官方FPGA開發板

一名新晉FPGA工程師的技術成長與就業感悟


?想了解更多信息,關注后反饋給我吧 ??




北京快乐8中奖规则 打海南麻将有什么技巧 E世博网上百家乐 中国足球彩票对阵表 世界杯比分让球 稳定的莱特币矿池 捕鱼那款可以提现的 ag视讯是真的吗 福彩3d和值表 宁夏11选5开奖查询742期 比特币现金行情 冰球突破正规网站 水果派对2彩票机怎么玩 吉林时时彩票开奖号码查询 足球社区体育比分 比特币莱特币交易 南昌麻将技巧