module encoder_xianshi2( input [15:0]sw, // 输入开关信号 output [7:0]bitcode, // 输出编码信号 output reg [6:0] a_to_g2, // 输出段选信号a-g2 output reg [6:0] a_to_g1); // 输出段选信号a-g1

assign bitcode=8'b00011000; // 分配编码信号的值

always @(sw)
begin if((sw[15]|sw[14]|sw[13]|sw[12]|sw[11]|sw[10])==0) // 如果sw[15:10]都为0,则a-g2全关 a_to_g2=7'b0000000;
else a_to_g2=7'b0110000; // 否则,a-g2只有g2亮 end

always @(sw) begin if (sw[0]==1) a_to_g1=7'b0111111; // 如果sw[0]为1,则a-g1显示数字0 else if (sw[1]==1) a_to_g1=7'b0000110; // 如果sw[1]为1,则a-g1显示数字1 else if (sw[2]==1) a_to_g1=7'b1011011; // 如果sw[2]为1,则a-g1显示数字2 else if (sw[3]==1) a_to_g1=7'b1001111; // 如果sw[3]为1,则a-g1显示数字3 else if (sw[4]==1) a_to_g1=7'b1100110; // 如果sw[4]为1,则a-g1显示数字4 else if (sw[5]==1) a_to_g1=7'b1101101; // 如果sw[5]为1,则a-g1显示数字5 else if (sw[6]==1) a_to_g1=7'b1111101; // 如果sw[6]为1,则a-g1显示数字6 else if (sw[7]==1) a_to_g1=7'b0000111; // 如果sw[7]为1,则a-g1显示数字7 else if (sw[8]==1) a_to_g1=7'b1111111; // 如果sw[8]为1,则a-g1显示数字8 else if (sw[9]==1) a_to_g1=7'b1101111; // 如果sw[9]为1,则a-g1显示数字9 else if (sw[10]==1) a_to_g1=7'b0111111; // 如果sw[10]为1,则a-g1显示数字A else if (sw[11]==1) a_to_g1=7'b0000110; // 如果sw[11]为1,则a-g1显示数字B else if (sw[12]==1) a_to_g1=7'b1011011; // 如果sw[12]为1,则a-g1显示数字C else if (sw[13]==1) a_to_g1=7'b1001111; // 如果sw[13]为1,则a-g1显示数字D else if (sw[14]==1) a_to_g1=7'b1100110; // 如果sw[14]为1,则a-g1显示数字E else if (sw[15]==1) a_to_g1=7'b1101101; // 如果sw[15]为1,则a-g1显示数字F else a_to_g1=7'b0000000; // 如果sw全为0,则a-g1全关 end endmodule


原文地址: https://www.cveoy.top/t/topic/oSbb 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录