www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Sinus generieren


Autor: michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

ich möchte zum Testen meines Eva-Boards ein Sinussignal generieren
die Datenbreite der Abtastung darf bis zu 16 bit sein.
Die Anzahl der Abtastung ist eigentlich egal... dachte so an 100 pro 
periode, damit der Sinus auch schön sichtbar ist.

jemand ne idee wie machen :D

Autor: Peter R. (pnu)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
16 bit Auflösung ????

da sind die Ansprüche schon etwas sehr hoch.

Nimm eine Test-CD mit Sinussignalen und spiele sie auf einem guten 
CD-Player ab.

Im Prospekt arbeiten die mit 16 Bit.

100 Abtastungen pro Periode (hor.) und 16-bit-Darstellung (vert.) passen 
aber irgendwie nicht zusammen.

bei 100 Schritten im Zeitbereich passen 8 bit (256 Schritte vert.) 
einigermaßen zusammen.

-Und wie steht es mit der Frequenz ????

Autor: Zwölf Mal Acht (hacky)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Eine gute Idee mit unguenstigen Details. Ich denk auch 8 bit vertikale 
Aufloesung waeren angemessen.

Autor: Name ist Wurscht (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hole oder berechne dir eine Wertetabelle. Einfach die Werte zyklisch 
auslesen.

Autor: Michael Roek (mexman) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
michael schrieb:
> Hi,
>
> ich möchte zum Testen meines Eva-Boards ein Sinussignal generieren
> die Datenbreite der Abtastung darf bis zu 16 bit sein.
> Die Anzahl der Abtastung ist eigentlich egal... dachte so an 100 pro
> periode, damit der Sinus auch schön sichtbar ist.
>
> jemand ne idee wie machen :D

Was ist eine "Datenbreite der ABtastung"...knobel.....knobel.


Such mal nach "sinus look-up table".
Man legt eine Wertetabelle im Speicher ab. Wenn man es gaaanz einfach 
machen will, macht man eine Tabelle mit einer ganzen Sinuskurve.
(Wenn man weniger PLatz hat, reicht 1/4 Kurve und Umrechnen).
Diese Werte werden einfach einer nach dem anderen ausgegeben.
Am Ende faengst Du wieder von vorne an.
Die Werte kannst Du mit einem Taschenrechner ausrechnen.

Die Frequenz aenderst Du dadurch, dass Du die Werte schneller oder 
langsamer nacheinander ausgibst (Wartezeit).

Zum Testen reicht, wenn Du 8Bit Daten in die Tabelle schreibst....gibt 
auch schon einen ganz guten Sinus.
(Sogenannte Trapez-Sinuswandler arbeiten mit < 2Bit ;-)

Die Ausgabe erfolgt dann mit Deinem bevorzugten D-A-Wandler.




Gruss

Michael

Autor: Peter R. (pnu)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bei 8 bit Auflösung vertikal geht das Ganze ja in richtung dds = direct 
digital synthesis.

Da gibts jede Menge IC's die das können.

suche aber auch einmal in Richtung "Jespers poor man digital 
synthesizer"
Das ist eine Lösung mit Kontroller, der einen R-2R Umsetzer zur 
Erzeugung von NF-Sinussignalen benutzt.

Auch hier  unter den Suchworten Sinusgenerator, DDS nachschauen.

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]
  • [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.