北邮22信通一枚~
跟随课程进度更新北邮信通院数字系统设计的笔记、代码和文章
持续关注作者 迎接数电实验学习~
获取更多文章,请访问专栏:
北邮22级信通院数电实验_青山如墨雨如画的博客-CSDN博客
关注作者的uu们可以进群啦~
目录
一.verilog代码
1.1 decoder_led.v
1.2 decoders.v
二.管脚分配
三.效果展示
四.问题
一.verilog代码
1.1 decoder_led.v
module decoder_led(A,RBI,LT,BI_RBO,seg_led,seg_led_DP,seg_led_DIG);input [3:0] A;input RBI;//灭零输入信号input LT;//试灯信号input BI_RBO;//消隐输入、灭零输出信号output [6:0]seg_led;//输出信号output wire seg_led_DP;output wire seg_led_DIG;assign seg_led_DP=0;assign seg_led_DIG=0;decoders decoder_1(A,RBI,LT,BI_RBO,seg_led);//高位
endmodule
1.2 decoders.v
module decoders
(A,RBI,LT,BI,out,RBO,
);input [3:0]A;output reg [6:0]out;input LT,RBI,BI;output wire RBO;always @(*)begincasex({LT,RBI,A,BI})7'b110_0001:out=7'b111_1110;7'b1x0_0011:out=7'b011_0000;7'b1x0_0101:out=7'b110_1101;7'b1x0_0111:out=7'b111_1001;7'b1x0_1001:out=7'b011_0011;7'b1x0_1011:out=7'b101_1011;7'b1x0_1101:out=7'b101_1111;7'b1x0_1111:out=7'b111_0000;7'b1x1_0001:out=7'b111_1111;7'b1x1_0011:out=7'b111_1011;7'b1x1_0101:out=7'b000_1101;7'b1x1_0111:out=7'b001_1001;7'b1x1_1001:out=7'b010_0011;7'b1x1_1011:out=7'b100_1011;7'b1x1_1101:out=7'b000_1111;7'b1x1_1111:out=7'b000_0000;7'bxxx_xxx0:out=7'b000_0000;7'b100_0000:out=7'b000_0000;7'b0xx_xxx1:out=7'b111_1111;default out=7'b000_0000;endcaseendassign RBO=(LT& ~RBI &(A==4'b0000))?0:1;
endmodule
二.管脚分配
三.效果展示
通过拨动拨码开关可以控制七段数码管显示不同的数字。拨码开关是4为二进制。
四.问题
如果发现示数显示有问题,请重新综合之后再烧录一遍,看效果。
本实验仅展示点亮七段数码管,所以大于数字9的4位二进制拨码开关组合是任意项,输出为乱码。