-- wait until rising_edge(clk_i);\r
wait until rising_edge(clk_66);\r
for i in 1 to 8 loop\r
- if (last_inp(i/2+1) xor inp_status(i/2+1)) = '1' and (led_timer(i)(23 downto 21) > 0) then\r
+ if (last_inp((i-1)*2) xor inp_status((i-1)*2) = '1' and (led_timer(i)(23 downto 21) > 0) then\r
led_state(i) <= not led_state(i);\r
led_timer(i) <= 0;\r
elsif led_timer(i)(23) = '1' then\r
- led_state(i) <= inp_status(i/2+1);\r
+ led_state(i) <= inp_status((i-1)*2);\r
else\r
led_timer(i) <= led_timer(i) + 1;\r
end if;\r
end loop;\r
end process; \r
\r
- LED <= led_state;\r
+gen_leds : for i in 1 to 8 generate\r
+ LED(i) <= not leds((i-1)*2) when led_status(8) = '1' else not led_status(i-1);\r
+end generate;\r
\r
\r
---------------------------------------------------------------------------\r