Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
12 years ago

help with counter

im trying to learn to create counter that starts counting based on the input that from the expansion after i compile it it seems an error occur and i dont know how to solve it. help me guys.. this error occured (Error (10500): VHDL syntax error at ledwithcounter.vhd(29) near text "then"; expecting ":=", or "<=") ....here i attach my program.. help me guys..

Library IEEE;

use ieee.std_logic_1164.all;

use ieee.numeric_unsigned.all;

entity GPIOwithLED is

port( GPIO_0 : in std_logic_vector(1 downto 0);

ld_enb : in std_logic;--parallel load enable,active high

clk : in std_logic;-- system clock

cnt_enb : in std_logic;--count enable, active high

rst_n : in std_logic;-- reset,active high

q : out std_logic_vector(1 downto 0));

end GPIOwithLED ;

architecture bufferwithGpio_arc of GPIOwithLED is

begin

process(GPIO_0)

begin

if (GPIO_0(0)='1') then q<=GPIO_0(1 downto 0);

else q<= "00";

end if;

end process;

counter:process(clk,rst_n) is

begin

if ( rst_n='0' ) then

count <=(others=>'0');

else(clk'event and Clk ='1')then

if (ld_enb='1')then

count<=GPIO_0;

elsif(cnt_enb ='1')then

count <=count+1;

end if;

end if;

end process counter;

-- assigment ouput

q <= count;

end bufferwithGpio_arc;

14 Replies