summaryrefslogtreecommitdiff
path: root/DisplayController.v
diff options
context:
space:
mode:
Diffstat (limited to 'DisplayController.v')
-rw-r--r--DisplayController.v48
1 files changed, 48 insertions, 0 deletions
diff --git a/DisplayController.v b/DisplayController.v
new file mode 100644
index 0000000..9e4cc66
--- /dev/null
+++ b/DisplayController.v
@@ -0,0 +1,48 @@
+`timescale 1ns / 1ps
+//////////////////////////////////////////////////////////////////////////////////
+// Company:
+// Engineer:
+//
+// Create Date: 16:03:47 03/16/2012
+// Design Name:
+// Module Name: DisplayController
+// Project Name:
+// Target Devices:
+// Tool versions:
+// Description:
+//
+// Dependencies:
+//
+// Revision:
+// Revision 0.01 - File Created
+// Additional Comments:
+//
+//////////////////////////////////////////////////////////////////////////////////
+module DisplayController(
+ input [3:0] A,
+ input [3:0] B,
+ input clk_in,
+ input rst,
+ output [6:0] result,
+ output [3:0] AN
+ );
+
+reg [3:0] AN;
+reg [6:0] result = 0;
+
+wire [6:0] ssd1;
+wire [6:0] ssd2;
+
+reg prev = 0;
+
+SevSegDisp d1(.A(A), .result(ssd1));
+SevSegDisp d2(.A(B), .result(ssd2));
+
+always @( posedge clk_in ) begin
+ prev <= ~prev;
+ result <= prev ? ssd1 : ssd2;
+ AN <= { ~prev, 2'b11, prev };
+end
+
+
+endmodule