User manual
Blinky_state part 1
// File name: Blinky_state.sv
//
// 10Sep2013 .. initial version .. K.Metzger
// 17Sep2013 .. made Blinky more complicated and added states .. KM
module Blinky_state
(
output LEDR[0],
output LEDG[0],
input CLOCK_50
);
logic red_led_bit, next_red_led_bit;
logic green_led_bit, next_green_led_bit;
logic clk;
logic [7:0] time_counter, next_time_counter;
logic [24:0] counter, next_counter;
enum {starting, turn_on_red, turn_on_green} state, next_state;
initial begin
red_led_bit = 0;
green_led_bit = 0;
counter = 25000000-1;
time_counter = 0;
state = starting;
end
assign clk = CLOCK_50;
assign LEDR[0] = red_led_bit;
assign LEDG[0] = green_led_bit;
always_ff @(posedge clk) begin
red_led_bit <= next_red_led_bit;
green_led_bit <= next_green_led_bit;
time_counter <= next_time_counter;
counter <= next_counter;
state <= next_state;
end
EECS 452 – Fall 2014 Lecture 5 – Page 101/143 Tuesday – September 16, 2014