mikrocontroller.net

Forum: FPGA, VHDL & Co. VHDL Quelltext zähler Uhr


Autor: sammy_45 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

will in VHDL eine Uhr realisieren. Die Sekunden und Minuten zählen 
richtig, aber bei den Stunden ist noch der Wurm drin. Der Einer zählt 
bis 2 und dann gibt es einen Übertrag. Der Zehner zählt dann bis 1.

Aber der Einer muss ja normal bis 9 zählen und dann nur noch bis 2, wie 
kann ich das denn realisieren?

Der aktuelle Quelltext ist:

--minzr_int ist der Übertrag der Minuten


counter_std_e: process (CLOCK, RESET, c_minzr_int)

  begin

  if RESET='1' then STD_E_INT <=X"0";
     elsif CLOCK='1' and CLOCK'event then
    if c_minzr_int='1' then
       if STD_E_INT=2 then STD_E_INT<=X"0";
      else   STD_E_INT <= STD_E_INT + 1;
       end if;
          end if;
         end if;

end process counter_std_e;


counter_std_z: process (CLOCK, RESET, c_stde_int)

  begin

  if RESET='1' then STD_Z_INT <=X"0";
  elsif CLOCK='1' and CLOCK'event then
    if c_stde_int='1' then
      if STD_Z_INT=1 then STD_Z_INT<=X"0";
      else STD_Z_INT <=STD_Z_INT + 1;
      end if;
    end if;
  end if;

end process counter_std_z;

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mann, den Code kann so keiner lesen  :-/

Also mal umformatiert...
Wie wärs damit:
  if RESET='1' then 
     STD_E_INT <=X"0";
  elsif CLOCK='1' and CLOCK'event then
     if c_minzr_int='1' then
        if (STD_E_INT=9) or (STD_Z_INT=1 and STD_E_INT=2) then  ------ hier auch die Zehner abfragen
           STD_E_INT <= X"0";
        else   
           STD_E_INT <= STD_E_INT + 1;
        end if;
     end if;
  end if;

Autor: sammy_45 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
so läuft es...

DANKE

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.