Gast
#1400202
Wie kann ich in VHDL einen Zähler programmieren, der von 0 hoch bis 255 zählt, und dann von 255 wieder runter auf 0 und dann wieder hoch? Also einen Dreieckgenerator.
|
Anzeige
|
Dreieckgenerator programmieren
Gast
#1400202
Wie kann ich in VHDL einen Zähler programmieren, der von 0 hoch bis 255 zählt, und dann von 255 wieder runter auf 0 und dann wieder hoch? Also einen Dreieckgenerator.
Gast
#1400208
Echt gut: 2 Threads um andere für sich arbeiten zu lassen. Also los.
Gast
#1400417
Hi... gidf ! Hast du schon mal die SUCHE benutzt? Deine Frage ist sehr offen gestellt... Willst du nur den Zählbefehl? -> a <= a + 1 Oder den kompletten VHDL-Code? -> hier z. B. ein "hoch"-Zähler
Hast du schon VHDL-Kentnisse? Gruß Boris
Gast
#1400469
>Hast du schon VHDL-Kentnisse?
Gerade daran arbeite ich ja im Moment.
Ich würde es wahrscheinlich so programmieren:
Das ist natürlich STUSS so, weil jede Zahl doppelt vorkommt. Besser von 0 bis 255 hochzählen und dann von 511 auf 256 wieder runterzählen und das Bit8 einfach wegschmeissen. Das kann man doch bestimmt auch anders schreiben, ohne das einem die Finger bluten?
Gast
#1400484
Den VHDL_Code den ich weiter oben als Beispiel gepostet habe kannst du für den Anfang vielleicht erweitern. Du musst dir nur die Zählrichtung "merken" und immer vergleichen ob du bei 255 bzw. 0 angekommen bist und dann die Richtung ändern... Ist eine schöne Übung für den Anfang:) So:
Als Tipp: kauf dir ein Buch, z.B. VHDL-Synthese von Reichardt/Schwarz
Gast
#1400505
Es gibt auch schöne Lehrgänge beim PLC2 ;) BorisM schrieb:
> Es gibt auch schöne Lehrgänge beim PLC2 ;)
ACK.
Da sollte man aber vorher ein/das Buch angesehen haben, sonst rauscht
der Zug an einem vorbei...
Gast
#1400536
> Das ist natürlich STUSS so, weil jede Zahl doppelt vorkommt. Natürlich, der Zustand, ob man gerade aufwärts zählen sollte, oder abwärts, ist ein zusätzliches Bit, von dem aus man entscheiden muss, wass bei CLK passiert. Ohne dieses bit, ohne diesen Zustand, kann deine Schaltung nicht wissen, wo's lang geht. Wo du dieses bit unterbringt, im count selber von dem dann eben 8 als Zähler genutzt werden und das neunte als Richtungszustandsbit, oder ob du es extra Wert nimmst, bleibt dir überlassen. Und glücklicherweise kann VHDL Arithmetik, du brauchst nicht 512 when Fälle zu schreiben. Der hier ist auch schön kompakt, er hat aber jeweils 2 Takte 0 und 255:
Gast
#1401423
ihr überbietet euch im formulieren der lösung, aber am ende kommt doch immer dasselbe raus. @ GAST (Gast)
> aber am ende kommt doch immer dasselbe raus.
Sicher? Oder glaubst du das nur?
Antwort schreibenBitte melde dich an, um einen Beitrag zu schreiben. |
Anzeige
|