mikrocontroller.net

Forum: FPGA, VHDL & Co. Integer Ausgabe


Autor: Sebastian J. (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ist es eigentlich möglich, den Wert eines Zählers, der meinet wegen von
0 bis 15 oder auch höher zählt, binär auszugeben ohne riesigen aufwand
zu betreiben?

ich dachte mir das so: siehe Anhang

Das geht ja aber nicht, da TS als integer ausgegeben wird und somit
keine zuweisung auf verschiedene Pins möglich ist.

Wie kann ich das recht einfach realisieren? Eine andere, die mir aber
irgendwie zu aufwendig erschien:
Eine Statemachine mit 11 Stati basteln und in jedem Zustand TS direkt
den entsprechend hoch gezählten Wert zuweisen. geht, dauert aber ...
hm, hat jemand ne klevere Idee?

Gruß Sebastian!

Autor: Xenu (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Und wieso machst Du dann nicht einfach einen std_logic_vector daraus?

Mehr als std_logic und std_logic_vector brauchst Du sowieso nicht.

Autor: Sebastian J. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
... wenn ich den Zählerwert als typ integer definiere, kann ich später
den zählerwert nicht einfach auf das signal TS kopieren, da die beiden
Signaltypen nicht kompatibel sind ... hat zumindestens bei mir nicht
funktioniert.

Autor: Sebastian J. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nachtrag: ich bräuchte also eine integer nach binär Wandlung ... geht
das ohne viel aufwand? ich meine, zahl ist zahl. die zahl 32 z.B. ist
immer eine 32, egal ob binär oder dezimal. sie muss ja eh binär
verarbeitet werden. ich möchte halt nur, dass die 6bits dann an
bestimmten ausgängen ausgebene werden ...

Autor: Ines (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Sebastian,

ich habe Deinen Code mal überarbeitet, hoffentlich habe ich richtig
verstanden, was Du willst.

Du solltest den generierten Clock clk übrigens nicht als "echten"
Clock verwenden, d.h. nicht mit rising_edge abfragen, sondern so, wie
ich es beschrieben habe.

Zu Deinem letzten Beitrag. Was meinst Du mit der Zahl 32 bzw. 6 Bit? Du
zählst doch nur bis 10 => 4 Bit. Oder war das nur als Beispiel gedacht?

Gruß
Ines

PS: Mein Code ist NICHT getestet!!!

Autor: Xenu (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>wenn ich den Zählerwert als typ integer definiere, kann ich später
>den zählerwert nicht einfach auf das signal TS kopieren

Selbstverständlich geht das, mit conv_std_logic_vector().

Und was spricht dagegen, das Du einfach anstatt Integer
std_logic_vector benutzt? Ich benutze Integer nur bei Konstanten.

Autor: Sebastian J. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Ines: das war nur als Beispiel gedacht. den code werd ich mir
anschauen.

@Xenu: integer habe ich für den Zähler verwendet, für die Ausgabe hatte
ich erst sts_logic_vector, da aber o.g. Problem. der Befehl
conv_std_logic_vector war mir bisher nicht bekannt, arbeite noch nicht
so lange mit vhdl ... werd ich alles mal austesten ...

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.