a一级爱做片免费观看欧美,久久国产一区二区,日本一二三区免费,久草视频手机在线观看

新聞中心

EEPW首頁 > 測試測量 > 設計應用 > Zedboard使用評測+HDMI顯示與SD讀取

Zedboard使用評測+HDMI顯示與SD讀取

作者: 時間:2012-10-17 來源:網絡 收藏

上次搭好了硬件平臺,后面立馬開始了軟件方面的調試。

本文引用地址:http://www.j9360.com/article/193059.htm

因為以前做的都是些用HDL做過顯示,比如VGA,以及最近用FPGA做的LVDS屏的顯示。其工作原理的就是講數據寫入到顯存(DRAM)中,然后再按照行場模式或者是使能DE模式讀出DRAM中的數據,按照屏的顯示時序,發送給屏完成顯示。

具體的功能框圖如下:

ZYNQ作為整個系統的控制核心,提供的顯示數據,以及時讀寫顯存的控制,以及DDC的數據產生。PL部分主要是ADV7511的控制,還有將24bit的RGB數據轉換為16bit的YCBCR422的數據發送給ADV7511

EDK中的數據到顯存的函數如下:

#define img_length 2073600 //1920*1080

void ddr_video_wr(u32 write_addr){

u32 n;
u32 dcnt;
dcnt = 0;
xil_printf(DDR write start:nr);
for (n=0; n img_length; n++){
Xil_Out32((write_addr+(dcnt*4)),write_data); //RGB
dcnt = dcnt + 1;
}
Xil_DCacheFlush();
xil_printf(DDR write: completed (total %d)nr, dcnt);
}
說明:write_data的數據位十六進制的RGB數據的組合。整個一幅圖片的RGB值的大小為1920*1080的數據。
因為此時沒有存取數據的地方,所以測試的圖片顯示的時候,將write_data 設定為固定值,讓全篇顯示紅色的背景。
當時的設想是從SD卡中國過數據,畢竟以前用HDL語言做過SD的數據,實際上就是把他單過flah來操作。
于是在zynq_fsbl/src/下看到了關于SD卡兩個文件,sd.c以及sd.h
在SD.C中看到了能使用的3個函數,如下:
1.InitSD(char *filename) 功能是sd中的指定的文件
2.u32 SDAccess( u32 SourceAddress,u32 DestinationAddress,u32 LengthWords); 功能就是講原地的數據,復制一定長度的數據到目的地址。算作讀數據。
3.void ReleaseSD(void); 功能就是算作釋放掉SD卡操作完成。
于是就想用來試試看,新建了一個功能,當然還是用14.2.
程序如下:
#include stdio.h>
#include platform.h
#include sd.h
#include xbasic_types.h
void xil_printf( const char *ctrl1, ...);
int main(){
u32 data;
init_platform();
InitSD(“123.bin”);
xil_printf(@@read 123.bin success!@@@);
cleanup_platform();
return(0);
};
功能就是讀取SD卡文件中的123.bin的文件。記過一編譯就開始缺少文件,然后我就在電腦里找啊找,找了7.8文件的.h
到目前為止還剩下ff.h下的integer.h還沒找到。
我想既然能從SD卡boot啟動,應該可以自己操作SD卡,可是遇到這文件找不到,一切都沒轍了。上次AET提醒過14.2容易少靜態庫,這次編譯的時候特地選上所有standalone。


關鍵詞: Zedboard HDMI 評測 讀取

評論


相關推薦

技術專區

關閉