Verständnisfrage DDS

Gast #146772
Hallo zusammen,

ich baue gerade den Funktionsgenerator aus den Projekten im Wiki,
programmiere aber in Bascom.
Irgendwie erschließt sich mir die Vorgehensweise mit dem
Phasenakkumulator nicht. Die 256 Funktionswerte mit unterschiedlichem
Takt auf den Port legen leuchtet mir noch ein, aber so ist es ja
offensichtlich nicht gemeint.
Hat jemand eine andere Quelle zum Nachlesen oder kann mir mit ein paar
Worten nochmal das Prinzip erklären. Irgendwie stehe ich auf dem
Schlauch.

Danke und Gruß
Olaf
Gast
Bascom und DDS sind an sich ein Widerspruch, aber egal...

DDS verwendet den sogenannten Phasenakkumulator. Zu diesem werden in
periodischen Abständen Werte hinzuaddiert.
Der addierte Wert ist direkt proportional zur Ausgangsfrequenz:
Je größere der Wert, desto schneller steigt der Wert im Akkumulator.
Jetzt benötigt man nur noch eine 256 Byte große Tabelle, um eine andere
Kurvenform als Dreieck auszugeben.
Gast
Danke erstmal für die Bemühungen, wie Du es beschrieben hast, so stehts
auch im Projekt. Werde wohl doch erstmal in der Basisliteratur stöbern.


Danke und Grüße
Olaf
Gast
Hi Olaf,

vorsichtig! Der Funktionsgenerator aus den Projekten im Wiki hat
irgendwie n'e Wanze im Assembler!
Die angegebene Frequenz im Display stimmt nicht mit der ausgegebenen
Frequenz überein. Z.B. die vorprogrammierte und angezeigte Frequenz von
1000Hz ergibt eine Ausgangsfrequenz von etwa 153Hz ! Schreib dein
Programm besser selbst!
Gruß Martin
Gast
Hallo Martin,

danke für den Hinweis. Das mit dem eigenen Programm habe ich schon
gemacht, funktioniert auch prinzipiell in BASCOM, allerdings erst mal
auf absolutem Testniveau. Bin noch nicht weiter dazu gekommen.
Mein Problem lag einfach im Verständnis zur Funktionsweise des
Phasenakkus.

Gruß Olaf

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 21 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.