Silent Solitude 2021-04-26 17:13 采纳率: 100%
浏览 108
已采纳

【Verilog语言】怎么让数码管显示实现数字和*号自由切换?开发板上有一个空余的按键可以用来触发。

	/*数码管显示部分*/
/***********************************************************************/	
	always @ (posedge Clk, negedge Rst_n)
	begin
		if (!Rst_n)
			Disp_data <= 32'haaaaaaaa;//32'hcccccccc
		else
			if (Key_flag == 1'b1 
				&& ((c_state ==IDLE && Key_value < 4'ha) 
				|| (c_state ==NUM_IN && Key_value < 4'ha)
				|| (c_state ==CHANGE && Key_value < 4'ha)))
				Disp_data <= {Disp_data[27:0], Key_value};
			else if (Key_flag == 1'b1 
				&& ((c_state ==IDLE && Key_value == 4'hc) 
				|| (c_state ==NUM_IN && Key_value == 4'hc)
				|| (c_state ==CHANGE && Key_value == 4'hc)))
				Disp_data <= 32'haaaaaaaa;
			else if (c_state ==IDLE || c_state == PASS || c_state == ERROR)
				Disp_data <= 32'haaaaaaaa;
			else
				Disp_data <= Disp_data;
	end
function [6:0] decode;
		input [3:0] in;
		begin
			case (in)
//				4'h0:decode[6:0] = 7'b1000000; /*0*/
//				4'h1:decode[6:0] = 7'b1111001; /*1*/
//				4'h2:decode[6:0] = 7'b0100100; /*2*/
//				4'h3:decode[6:0] = 7'b0110000; /*3*/
//				4'h4:decode[6:0] = 7'b0011001; /*4*/
//				4'h5:decode[6:0] = 7'b0010010; /*5*/
//				4'h6:decode[6:0] = 7'b0000010; /*6*/
//				4'h7:decode[6:0] = 7'b1111000; /*7*/
//				4'h8:decode[6:0] = 7'b0000000; /*8*/
//				4'h9:decode[6:0] = 7'b0010000; /*9*/
				4'h0:decode[6:0] = 7'b0111111; /*-*/
				4'h1:decode[6:0] = 7'b0111111; /*-*/
				4'h2:decode[6:0] = 7'b0111111; /*-*/
				4'h3:decode[6:0] = 7'b0111111; /*-*/
				4'h4:decode[6:0] = 7'b0111111; /*-*/
				4'h5:decode[6:0] = 7'b0111111; /*-*/
				4'h6:decode[6:0] = 7'b0111111; /*-*/
				4'h7:decode[6:0] = 7'b0111111; /*-*/
				4'h8:decode[6:0] = 7'b0111111; /*-*/
				4'h9:decode[6:0] = 7'b0111111; /*-*/
//				4'ha:decode[6:0] = 7'b0001000; /*a*/
				4'ha:decode[6:0] = 7'b1111111; /* */
				4'hb:decode[6:0] = 7'b0000011; /*b*/
//				4'hc:decode[6:0] = 7'b1000110; /*c*/
				4'hc:decode[6:0] = 7'b0111111; /*-*/
				4'hd:decode[6:0] = 7'b0100001; /*d*/
				4'he:decode[6:0] = 7'b0000110; /*e*/
				4'hf:decode[6:0] = 7'b0001110; /*f*/
			endcase
		end
	endfunction

希望能够告知代码或者是大致思路,如果可以解决的话麻烦加一下QQ1759779471,可以给50元作为报酬,谢谢。如果需要完整代码才可以解决也可以联系我。

  • 写回答

3条回答 默认 最新

  • 皮皮宽 2021-04-26 19:15
    关注

    数字和*号自由切换是什么意思,能说的明白点吗

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 一个服务器已经有一个系统了如果用usb再装一个系统,原来的系统会被覆盖掉吗
  • ¥15 使用esm_msa1_t12_100M_UR50S蛋白质语言模型进行零样本预测时,终端显示出了sequence handled的进度条,但是并不出结果就自动终止回到命令提示行了是怎么回事:
  • ¥15 前置放大电路与功率放大电路相连放大倍数出现问题
  • ¥30 关于<main>标签页面跳转的问题
  • ¥80 部署运行web自动化项目
  • ¥15 腾讯云如何建立同一个项目中物模型之间的联系
  • ¥30 VMware 云桌面水印如何添加
  • ¥15 用ns3仿真出5G核心网网元
  • ¥15 matlab答疑 关于海上风电的爬坡事件检测
  • ¥88 python部署量化回测异常问题