- #1
ineedmunchies
- 45
- 0
Homework Statement
Creating an Up/Down counter with an output for both units and tens. (which can then be displayed on 7 segnment displays)
Homework Equations
The Attempt at a Solution
Code:
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_arith.all;
use ieee.std_logic_unsigned.all;
entity UpDownCount is
port(Clk, UpDown, reset: in std_logic;
unit, tens: out std_logic_vector(3 downto 0)
);
End UpDownCount;
Architecture behv2 of UpDownCount is
signal units1, tens1: unsigned(3 downto 0);
begin
process(UpDown, Clk, reset)
variable CountUnits, CountTens : unsigned (3 downto 0);
begin
if (Clk'event and UpDown='1') then
****if CountUnits ='1111' then
CountTens := CountTens + '1';
else
****CountUnits := CountUnits + '1';
end if;
elsif (Clk'event and UpDown='0') then
if CountUnits = '0000' then
CountTens := CountTens - '1';
else CountUnits := CountUnits - '1';
end if;
end if;
end process
end architecture
The two lines with the stars are the ones where there are errors apparently. For the first one it says there is a syntax error near " ' ", and the second one it says it is expecting an "end" near "elseif". So I'm thinking is there a problem with my if-then statements? Do I need to use parenthesis to wrap the code that's included in the then part? I know its probably something quite simple, but I can't figure it out.