verilog点阵模式显示

2020-12-24 19:00

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

`timescale 1ns / 1ps

module led_flower(input reset, input clk, input turn, input color, output[23:0] out); reg[7:0] col,right,left cnt; reg[2:0] a; reg cnt_turn,cnt_color; always@(negedge turn)

if(~reset)cnt_turn=0; else cnt_turn=~cnt_turn; always@(negedge color)

if(~reset)cnt_color=0; else cnt_color=~cnt_color; initial

begin

a=0; cnt=0; cnt_turn=0;cnt_color=0; end

always@(posedge clk) begin if(~reset) begin a=0; cnt=0; end if(cnt<=512) 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 if(cnt<=1024)//(cnt<=15) case(a) 3'b0:begin col=8'b00000001; left=8'b10111111; right=8'b11111111; end 3'b1:begin col=8'b00000010; left=8'b10111100; right=8'b11111111; end 3'b10:begin col=8'b00000100; left=8'b11011011; right=8'b11111111; end 3'b11:begin col=8'b00001000; left=8'b11100111; right=8'b11111111; end 3'b100:begin col=8'b00010000; left=8'b11100111; right=8'b11111111; end 3'b101:begin col=8'b00100000; left=8'b11011011; right=8'b11111111; end 3'b110:begin col=8'b01000000; left=8'b00111101; right=8'b11111111; end 3'b111:begin col=8'b10000000; left=8'b11111101; right=8'b11111111; end endcase

else if(cnt<=1536) case(a) 3'b0:begin col=8'b00000001; left=8'b11111001; right=8'b11111111; end 3'b1:begin col=8'b00000010; left=8'b01110111; right=8'b11111111; end 3'b10:begin col=8'b00000100; left=8'b01101111; right=8'b11111111; end 3'b11:begin col=8'b00001000; left=8'b10100011; right=8'b11111111; end 3'b100:begin col=8'b00010000; left=8'b11000101; right=8'b11111111; end


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

下一篇:计算题库

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

马上注册会员

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