Gast
#387831
Hallo, ich habe folgendes Problem. Ich möchte mit einem CPLD (XC9572) eine Frequenz (1MHz) mit einem 3 bit Zähler Teilen, um auf 125 kHz zu kommen. Die Frequenz muss natürlich symetrisch sein. Leider ist die An-Zeit etwas länger, so dass etwas mehr als 125 kHz rauskommen. Wie kann ich das umgehen ? Den Ausgang vom Zähler (count) habe ich an mein Ausgansgsmodul (rechteck_3bit) angebaut. Das Ausgangssignal sieht etwa so aus: ___------____------____----- Hier mein Code: entity rechteck_3bit is Port ( inputs : in std_logic_vector (2 downto 0); rechteck : out bit); end rechteck_3bit; architecture Behavioral of rechteck_3bit is begin process(inputs) begin case inputs is when "000" => rechteck <= '1'; when "001" => rechteck <= '1'; when "010" => rechteck <= '1'; when "011" => rechteck <= '1'; when "100" => rechteck <= '0'; when "101" => rechteck <= '0'; when "110" => rechteck <= '0'; when "111" => rechteck <= '0'; when others => end case; end process; ENTITY count IS PORT ( clock: IN STD_LOGIC; result: OUT std_logic_vector (2 downto 0)); END count; ARCHITECTURE Behavioral OF count IS SIGNAL result_reg : std_logic_vector (2 downto 0); BEGIN PROCESS (clock) BEGIN IF (clock'event AND clock = '1') THEN result_reg <= result_reg + 1; END IF; END PROCESS; result <= result_reg; END Behavioral; Danke. Mattias