av免费国产_美女一级_丰满少妇在线观看网站_日本孕交_亚洲精品久久久_国产精华一区二区三区

紫光同創PGL22G開發平臺試用連載(4)-- 移動方塊

日期:2020-09-14 來源:電子創新網作者:c4982212330閱讀:19

各位好:

又開始新一期的更新了,移植說做個有意思的項目,奈何是在加班嚴重,沒有辦法,只能帶來點小玩意了,本期就在官方提供的教程基礎上改一個吧;

官方提供的教程是讓顯示屏上顯示彩條,如圖所示:

我在這個實驗的基礎上,增加一個移動的方塊,碰到屏端自動改變方向;

視頻上傳B站,鏈接:https://www.bilibili.com/video/BV1ft4y1i7Tw。

改動內容為:

1、將video_define.v中的分辨率更改為:`define VIDEO_1024_768,顯示輸出分辨率為1024_768,默認的1280_720的分辨率會出現嚴重的時序違例,無法正常顯示;

2、根據分辨率將PLL的輸出兩路輸出clkout0和clkout1分別調整為60Mhz和300MHz;

3、修改color_bar.v代碼,將源代碼中的最后一個always塊修改如下:

reg [11:0] x;

reg flag_x;

reg [11:0] y;

reg flag_y;

always @(posedge clk or posedge rst) begin

if (rst == 1'b1) begin

x <='d0;

end

else if (flag_x == 1'b0 && (v_cnt == V_FP + V_SYNC + V_BP - 1) && (h_cnt == H_FP - 1)) begin

x<= x+ 1'b1;

end

else if(flag_x == 1'b1 && (v_cnt == V_FP + V_SYNC + V_BP - 1) && (h_cnt == H_FP - 1)) begin

x <= x -1'b1;

end

end

always @(posedge clk or posedge rst) begin

if (rst == 1'b1) begin

flag_x <= 1'b0;

end

else if (flag_x == 1'b0 && (v_cnt == V_FP + V_SYNC + V_BP - 1) && (h_cnt == H_FP - 1) && x == (H_ACTIVE - 201)) begin

flag_x <= 1'b1;

end

else if (flag_x == 1'b1 && (v_cnt == V_FP + V_SYNC + V_BP - 1) && (h_cnt == H_FP - 1) && x=='d1) begin

flag_x <= 1'b0;

end

end

always @(posedge clk or posedge rst) begin

if (rst == 1'b1) begin

y <= 'd0;

end

else if (flag_y == 1'b0 && (v_cnt == V_FP + V_SYNC + V_BP - 1) && (h_cnt == H_FP - 1)) begin

y <= y + 1'b1;

end

else if (flag_y == 1'b1 && (v_cnt == V_FP + V_SYNC + V_BP - 1) && (h_cnt == H_FP - 1)) begin

y <= y - 1'b1;

end

end

always @(posedge clk or posedge rst) begin

if (rst == 1'b1) begin

flag_y <= 1'b0;

end

else if (flag_y == 1'b0 && (v_cnt == V_FP + V_SYNC + V_BP - 1) && (h_cnt == H_FP - 1) && y==(V_ACTIVE - 201) ) begin

flag_y <= 1'b1;

end

else if (flag_y == 1'b1 && (v_cnt == V_FP + V_SYNC + V_BP - 1) && (h_cnt == H_FP - 1) && y=='d1 ) begin

flag_y <= 1'b0;

end

end

always@(posedge clk or posedge rst)

begin

if(rst == 1'b1)

begin

rgb_r_reg <= 8'h00;

rgb_g_reg <= 8'h00;

rgb_b_reg <= 8'h00;

end

else if(video_active)

if((h_cnt >= H_FP[11:0] + H_SYNC[11:0] + H_BP[11:0] -1 + x) && (h_cnt <=H_FP[11:0] + H_SYNC[11:0] + H_BP[11:0] -1 + 200 + x) && (v_cnt >=( V_FP + V_SYNC + V_BP - 1 + y)) && (v_cnt <=( 200 + V_FP + V_SYNC + V_BP - 1 + y)))

begin

rgb_r_reg <= WHITE_R;

rgb_g_reg <= WHITE_G;

rgb_b_reg <= WHITE_B;

end

else if((active_x >= 12'd0)&(active_x < {H_ACTIVE[14:3]}))//0-1

begin

rgb_r_reg <= WHITE_R;

rgb_g_reg <= WHITE_G;

rgb_b_reg <= 8'B01111111;//WHITE_B;

end

else if((active_x >= {H_ACTIVE[14:3]})&(active_x < {H_ACTIVE[13:3],1'b0}))//1-2

begin

rgb_r_reg <= YELLOW_R;

rgb_g_reg <= YELLOW_G;

rgb_b_reg <= YELLOW_B;

end

else if((active_x >= {H_ACTIVE[13:3],1'b0})&(active_x < {H_ACTIVE[13:3],1'b0} + {H_ACTIVE[14:3]}))//2-3

begin

rgb_r_reg <= CYAN_R;

rgb_g_reg <= CYAN_G;

rgb_b_reg <= CYAN_B;

end

else if((active_x >= {H_ACTIVE[13:3],1'b0} + {H_ACTIVE[14:3]})&(active_x < {H_ACTIVE[12:3],2'b0}))//3-4

begin

rgb_r_reg <= GREEN_R;

rgb_g_reg <= GREEN_G;

rgb_b_reg <= GREEN_B;

end

else if((active_x >= {H_ACTIVE[12:3],2'b0})&(active_x < {H_ACTIVE[12:3],2'b0} + {H_ACTIVE[14:3]}))//4-5

begin

rgb_r_reg <= MAGENTA_R;

rgb_g_reg <= MAGENTA_G;

rgb_b_reg <= MAGENTA_B;

end

else if((active_x >= ({H_ACTIVE[12:3],2'b0} + {H_ACTIVE[14:3]}))&(active_x < ({H_ACTIVE[12:3],2'b0} + {H_ACTIVE[13:3],1'b0})))//5-6

begin

rgb_r_reg <= RED_R;

rgb_g_reg <= RED_G;

rgb_b_reg <= RED_B;

end

else if((active_x >= {H_ACTIVE[12:3],2'b0} + {H_ACTIVE[13:3],1'b0})&(active_x < {H_ACTIVE[11:3],3'b0} - {H_ACTIVE[14:3]}))//6-7

begin

rgb_r_reg <= BLUE_R;

rgb_g_reg <= BLUE_G;

rgb_b_reg <= BLUE_B;

end

else if((active_x >= {H_ACTIVE[11:3],3'b0} - {H_ACTIVE[14:3]}))

begin

rgb_r_reg <= BLACK_R;

rgb_g_reg <= BLACK_G;

rgb_b_reg <= BLACK_B;

end

else

begin

rgb_r_reg <= rgb_r_reg;

rgb_g_reg <= rgb_g_reg;

rgb_b_reg <= rgb_b_reg;

end

else

begin

rgb_r_reg <= 8'h00;

rgb_g_reg <= 8'h00;

rgb_b_reg <= 8'h00;

end

end

增加了一個移動方塊的控制邏輯,方塊大小為200*200,碰到顯示范圍的邊緣自動向反方向移動;

同時為了盡可能的優化時序,將原有代碼中的乘法和除法運算均更改為移位操作。

打賞
聯系客服 投訴反饋  頂部
主站蜘蛛池模板: 日韩亚洲国产精品 | JIZZ国产精品 | 91高清视频在线免费观看 | 国产日韩视频在线 | 亚洲高清在线播放 | 91麻豆精品传媒一二三区 | 精品精品 | 狠狠色丁香婷婷综合橹88 | 美女免费黄视频 | 一级黄网 | 夜夜操夜夜操夜夜操 | 91高清观看 | 五月色婷婷亚洲精品制服丝袜1区 | 日本高清久久一区二区三区 | 国产色综合天天综合网 | 国产蜜臀入口 | 我玩游戏成了绝世强者动漫在线观看 | 9色在线 | 欧美日韩成人一区 | 蜜臀久久蜜臀av国内精品久久久 | 亚洲丰满熟女一区二区蜜桃 | 高清av网站| 亚洲国产成av人天堂无码 | 黑人干白妞 | 色99之美女主播在线视频 | 91精品少妇99在线观看 | 欧美最猛性 | 亚洲乱码国产乱码精品精天堂 | 啪啪综合视频 | 亚洲精品50p| 亚洲天堂网站 | 久久久精品播放 | 在线二区三区 | av中文字幕一区二区三区久久 | 国产女人十八毛片A级毛片 91激情网站 | 日本免费黄色 | 成人网97| 亚洲一区二区成人 | 在线观看国产v片 | 国产精品黑人富婆视频区 | 四虎国产精品永久一区 |