




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、Verilog圖像翻轉源代碼組內成員鄒述銘3014204055李林楠3014204035丁皓南3014204031買地努爾3014204040一、將BMP圖片轉化為二進制數據,存入TXTtimescale1ns/100psmodulePic;parametersize=65554;個存數據定義memory存儲器大小,前18個存BMP文件信息頭,后65536reg23:0ramsize-1:0,headdata,data;/單個寄存器24位(包括紅綠藍3個字節(一個字節8位)的顏色)65536=256*256個像素點regclk;/定義時鐘integerfile_id,txt_id;/定義BMP
2、圖片和txt文本的整型句柄integerm,i,j,x;initialbeginfile_id=$fopen(C:/Users/HP/Desktop/Pic.bmp,rb);/以二進制方式讀取圖片,將句柄存入file_id$fread(ram,file_id);/存圖片的二進制數據到ram存儲器中(ram中的每個單元24位)$fclose(file_id);endinitial/為整型變量賦初值beginclk=0;i=0;j=0;x=0;endalways#5clk=clk;/定義時鐘信號周期為10nsinitialbegintxt_id=$fopen(C:/Users/HP/Desktop
3、/Pic_bin.txt);/打開建立的空白txt文檔,用來存儲圖片的十六進制數據for(m=0;m=17;m=m+1)beginheaddata=ramm;/把ram中的二進制數據按順序存入信息頭寄存器headdata(17*24個位)中$fwrite(txt_id,%b,headdata);/把每個ram中的值轉換為二進制endendalways(posedgeclk)/在每個clk時鐘上升沿,輸入單行像素的信息if(i=255)/按行順序讀取單個像素信息(一行256個像素)beginfor(j=0;j=255;j=j+1)/使用for循環順序輸入單個像素(24位)的信息,至data寄存器
4、beginx=18+256*i+j;data=ramx;$fwrite(txt_id,%b,data);/將data寄存器中的數據以二進制方式存入Pic_hex.txt文本endi=i+1;/每輸入完一行后,行數自加一,進行下一行的數據輸入endelse/待行數大于256時,跳出循環$fclose(txt_id);endmodule二、VERILOG圖像旋轉timescale1ns/100psmodulePic_Turn;parametersize=65554;reg23:0ram_turnsize-1:0,datamove,headdata;/datamove用于替換位圖單像素數據,head
5、data用于替換信息頭數據regclk;/定義clk為時鐘信號integertxtid1,txtid,p,i,j,n;initialbeginclk=0;i=0;j=0;n=0;endalways#5clk=clk;/設置clk時鐘頻率initialbegintxtid1=$fopen(C:/Users/HP/Desktop/Pic_bin.txt,rb);$fread(ram_turn,txtid1);$fclose(txtid1);txtid=$fopen(C:/Users/HP/Desktop/Pic_turn.txt);for(p=0;p=17;p=p+1)beginheaddata=
6、ram_turnp;$fwrite(txtid,%b,headdata);/將信息頭數據以十六進制輸入至txt文件endendalways(posedgeclk)/在每個clk上升沿時,輸入單個像素的信息(256位)if(i=255)beginfor(j=0;j=255;j=j+1)beginn=18+256*j+255-i;datamove=ram_turnn;$fwrite(txtid,%b,datamove);endi=i+1;endelse$fclose(txtid);endmodule三、旋轉后的數據文件處理成BMP位圖將位圖旋轉后的數據轉成十六進制,程序如下:timescale1n
7、s/100psmodulePic_Turn;parametersize=65554;reg23:0ram_turnsize-1:0,datamove,headdata;/datamove用于替換位圖單像素數據,headdata用于替換信息頭數據regclk;定義clk為時鐘信號integertxtid1,txtid,p,i,j,n;initialbeginclk=0;i=0;j=0;n=0;endalways#5clk=clk;/設置clk時鐘頻率initialbegintxtid1=$fopen(C:/Users/HP/Desktop/Pic_bin.txt,rb);$fread(ram_turn,txtid1);$fclose(txtid1);txtid=$fopen(C:/Users/HP/Desktop/Pic_turn.txt);for(p=0;p=17;p=p+1)beginheaddata=ram_turnp;$fwrite(txtid,%h,headdata);/將信息頭數據以十六進制輸入至txt文件endendalways(posedgeclk)/在每個clk上升沿時,輸入單個像素的信息(256位)if(i=255)beginfor(j=
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年安全管理員安全培訓考試試題可打印
- 2025新版車間安全培訓考試試題及完整答案(必刷)
- 2025管理人員安全培訓考試試題及參考答案(精練)
- 2025合同糾紛解決的關鍵要素
- 2025購銷合同轉讓協議范本
- 2025私營企業員工的人事合同范本
- 2025房產買賣合同書
- 2025年電子線圈設備項目建議書
- 2025標準版汽車銷售合同協議書
- 2025建筑公司標準版勞動合同
- 大型活動策劃與管理第八章 大型活動風險管理
- Q∕GDW 12165-2021 高海拔地區運維檢修裝備配置規范
- 現代風險導向審計在天衡會計師事務所的應用研究
- JGJ107-2016鋼筋機械連接技術規程
- 婦科醫生進修匯報課件
- 動態分析與設計實驗報告總結
- 2024年江蘇省泰州市海陵區中考一模數學試卷
- 從汽車檢測看低空飛行器檢測發展趨勢
- DB32T 4740-2024 耕地和林地損害程度鑒定規范
- 五一節假日安全生產培訓
- 中考英語二輪復習課件:中考解題技巧-讀寫綜合
評論
0/150
提交評論