verilog点阵模式显示(2)

2020-12-24 19:00

用verilog语言实现一个8x8点阵的变换,点阵可以顺时针或逆时针旋转,也可以用红灯或绿灯显示,显示的是一个风车的形状!

3'b101:begin col=8'b00100000; left=8'b11110110; right=8'b11111111; end 3'b110:begin col=8'b01000000; left=8'b11101110; right=8'b11111111; end 3'b111:begin col=8'b10000000; left=8'b10011111; right=8'b11111111; end endcase

else if(cnt<=2048) case(a) 3'b0:begin col=8'b00000001; left=8'b01111100; right=8'b11111111; end 3'b1:begin col=8'b00000010; left=8'b01111011; right=8'b11111111; end 3'b10:begin col=8'b00000100; left=8'b10110111; right=8'b11111111; end 3'b11:begin col=8'b00001000; left=8'b11000111; right=8'b11111111; end 3'b100:begin col=8'b00010000; left=8'b11100011; right=8'b11111111; end 3'b101:begin col=8'b00100000; left=8'b11101101; right=8'b11111111; end 3'b110:begin col=8'b01000000; left=8'b11011110; right=8'b11111111; end 3'b111:begin col=8'b10000000; left=8'b00111110; right=8'b11111111; end endcase else begin col=8'b00000000; left=8'b11111111; right=8'b11111111; end

if(cnt>=2048)

cnt=0; else cnt=cnt+1;

case(cnt_turn) 1'b0:begin if(a==7) a=0; else a=a+1; end 1'b1:begin if(a==0) a=7; else a=a-1; end

endcase if(cnt_color)

{left[7:0],right[7:0]}={right[7:0],left[7:0]}; end

assign out[7:0]= {col[7],~col[6],~col[5],col[4],

col[3],~col[2],~col[1],col[0]};

assign out[15:8]={~left[7],~left[6],left[5],~left[4],

~left[3],left[2],~left[1],~left[0]};

assign out[23:16]={~right[7],~right[6],right[5],

~right[4],~right[3],right[2],~right[1],~right[0]}; endmodule


verilog点阵模式显示(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:计算题库

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: