• 方案介紹
  • 附件下載
  • 相關(guān)推薦
申請入駐 產(chǎn)業(yè)圖譜

在點(diǎn)陣上顯示自己的名字Verilog代碼Vivado仿真

加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

2-2401061101043W.doc

共1個(gè)文件

名稱:在點(diǎn)陣上顯示自己的名字Verilog代碼Vivado仿真

軟件:Vivado

語言:Verilog

代碼功能:

在點(diǎn)陣上顯示自己的名字

1、實(shí)驗(yàn)任務(wù)

在16x16點(diǎn)陣上,編寫 Verilog程序?qū)崿F(xiàn)循環(huán)顯示你自己的“名字”的漢字。

2、實(shí)驗(yàn)結(jié)果與現(xiàn)象

在點(diǎn)陣模塊上循環(huán)依次顯示你自己的“名字”,每個(gè)漢字顯示的時(shí)間約為0.5秒。

3、問題與思考

(1)怎樣讓漢字左旋轉(zhuǎn)和右旋轉(zhuǎn)

(2)怎樣讓漢字左移動(dòng)和右移動(dòng)。

(3) Verilog程序中哪部分,影響每一列的顯示時(shí)間?

(4) Verilog程序中哪部分,影響每一個(gè)字的顯示時(shí)間?

設(shè)計(jì)文檔:

1. 點(diǎn)陣顯示漢字

工程文件

程序文件

程序編譯

Testbench

仿真圖

字模軟件介紹

部分代碼展示:

//滾動(dòng)顯示"李維濤"
module?led_16X16(
input?clk,//時(shí)鐘100Hz
output?reg?[15:0]?hang,//點(diǎn)陣行信號
output?reg?[15:0]?lie??//點(diǎn)陣列信號
);
//漢字3--濤
reg?[15:0]?word3_1=?16'h0080;
reg?[15:0]?word3_2=?16'h4088;
reg?[15:0]?word3_3=?16'h37FC;
reg?[15:0]?word3_4=?16'h1080;
reg?[15:0]?word3_5=?16'h83F8;
reg?[15:0]?word3_6=?16'h6080;
reg?[15:0]?word3_7=?16'h2FFE;
reg?[15:0]?word3_8=?16'h0908;
reg?[15:0]?word3_9=?16'h1108;
reg?[15:0]?word3_10=16'h23FE;
reg?[15:0]?word3_11=16'hE208;
reg?[15:0]?word3_12=16'h2508;
reg?[15:0]?word3_13=16'h2888;
reg?[15:0]?word3_14=16'h3088;
reg?[15:0]?word3_15=16'h2028;
reg?[15:0]?word3_16=16'h2010;
reg?[15:0]?word?[0:47];
//字符初始化
always@(posedge?clk)
begin
word[0]<=word1_1;
word[1]<=word1_2;
word[2]<=word1_3;
word[3]<=word1_4;
word[4]<=word1_5;
word[5]<=word1_6;
word[6]<=word1_7;
word[7]<=word1_8;
word[8]<=word1_9;
word[9]<=word1_10;
word[10]<=word1_11;
word[11]<=word1_12;
word[12]<=word1_13;
word[13]<=word1_14;
word[14]<=word1_15;
word[15]<=word1_16;
word[16]<=word2_1;
word[17]<=word2_2;
word[18]<=word2_3;
word[19]<=word2_4;
word[20]<=word2_5;
word[21]<=word2_6;
word[22]<=word2_7;
word[23]<=word2_8;
word[24]<=word2_9;
word[25]<=word2_10;
word[26]<=word2_11;
word[27]<=word2_12;
word[28]<=word2_13;
word[29]<=word2_14;
word[30]<=word2_15;
word[31]<=word2_16;
word[32]<=word3_1;
word[33]<=word3_2;
word[34]<=word3_3;
word[35]<=word3_4;
word[36]<=word3_5;
word[37]<=word3_6;
word[38]<=word3_7;
word[39]<=word3_8;
word[40]<=word3_9;
word[41]<=word3_10;
word[42]<=word3_11;
word[43]<=word3_12;
word[44]<=word3_13;
word[45]<=word3_14;
word[46]<=word3_15;
word[47]<=word3_16;
end
//對clk進(jìn)行分頻為2Hz,即對應(yīng)0.5s
reg?clk_1=0;
integer?x=0;
always?@(posedge?clk)
begin?
???if(x==24)
???begin?
???????x<=0;
???clk_1=~clk_1;//2Hz
???end
???else
???????x<=x+1;
end
//列計(jì)數(shù)
reg?[3:0]?lie_cnt=4'd0;
always@(posedge?clk)
lie_cnt<=lie_cnt+4'd1;
integer?n=0;
//16*16
always@(posedge?clk)
case(lie_cnt)
4'd0?:begin?lie<=16'b1000000000000000;?hang<=word[n];?end//顯示第1行
4'd1?:begin?lie<=16'b0100000000000000;?hang<=word[n+1];?end//顯示第2行
4'd2?:begin?lie<=16'b0010000000000000;?hang<=word[n+2];?end//顯示第3行
4'd3?:begin?lie<=16'b0001000000000000;?hang<=word[n+3];?end//顯示第4行
4'd4?:begin?lie<=16'b0000100000000000;?hang<=word[n+4];?end//顯示第5行
4'd5?:begin?lie<=16'b0000010000000000;?hang<=word[n+5];?end//顯示第6行
4'd6?:begin?lie<=16'b0000001000000000;?hang<=word[n+6];?end//顯示第7行
4'd7?:begin?lie<=16'b0000000100000000;?hang<=word[n+7];?end//顯示第8行
4'd8?:begin?lie<=16'b0000000010000000;?hang<=word[n+8];?end//顯示第9行
4'd9?:begin?lie<=16'b0000000001000000;?hang<=word[n+9];?end//顯示第10行
4'd10:begin?lie<=16'b0000000000100000;?hang<=word[n+10];?end//顯示第11行
4'd11:begin?lie<=16'b0000000000010000;?hang<=word[n+11];?end//顯示第12行
4'd12:begin?lie<=16'b0000000000001000;?hang<=word[n+12];?end//顯示第13行
4'd13:begin?lie<=16'b0000000000000100;?hang<=word[n+13];?end//顯示第14行
4'd14:begin?lie<=16'b0000000000000010;?hang<=word[n+14];?end//顯示第15行
4'd15:begin?lie<=16'b0000000000000001;?hang<=word[n+15];?end//顯示第16行
???endcase
//循環(huán)計(jì)數(shù),滾動(dòng)顯示
always?@(posedge?clk_1)
begin???????
?????if(n==32)
?????????n<=0;
?????else
?????????n<=n+16;
end
endmodule

點(diǎn)擊鏈接獲取代碼文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=503

  • 2-2401061101043W.doc
    下載

相關(guān)推薦

方案定制

去合作
方案開發(fā)定制化,2000+方案商即時(shí)響應(yīng)!