constant MAX_COUNT: natural := ??; -- Whatever is your maximum, based on your post it would be 5
signal clock_count: natural range 0 to MAX_COUNT;
signal This_Would_Be_The_Time_To_Sample: std_ulogic;
begin
process
begin
wait until rising_edge(clock);
if (Initialize = '1') -- Maybe you want to get the counter into a known state at startup, maybe not
or (count = 1) then
count <= My_Max_Count; -- My_Max_Count would be an input that you set that is set to whatever you want to count from.
-- In your post, you mentioned 2 or 5
else
count <= count - 1;
end if;
end process;
This_Would_Be_The_Time_To_Sample <= '1' when (count = 1) else '0';