Hallo, ich möchte einen Oszillator bauen, den ich mit meinem AVR steuern kann. Ich habe nur keinen blassen Schimmer, wie ich das machen soll. Es ist egal, in welchem Frequenzbereich der Oszillator liegt, ich möchte nur ein bisschen rumprobieren. 25, 50, oder 100khz Raster ist auch in Ordnung. Greetz, HFfreak P.S.: Super wäre auch eine Erklärung der Schaltung.
HFfreak schrieb: > ich möchte einen Oszillator bauen, den ich mit meinem AVR steuern kann. > Ich habe nur keinen blassen Schimmer, wie ich das machen soll. > Es ist egal, in welchem Frequenzbereich der Oszillator liegt, ich möchte > nur ein bisschen rumprobieren. 25, 50, oder 100khz Raster ist auch in > Ordnung. Also ein DDS-Generator? Dann solltest Du danach googlen, bzw. die Suchfunktion des Forums nutzen. Gruss Harald
HFfreak schrieb: > ich möchte einen Oszillator bauen, Welche Wellenform? - Sinus - Dreieck - Sägezahn - Rechteck (am einfachsten!) > den ich mit meinem AVR steuern kann. >25, 50, oder 100khz Raster ist auch in Ordnung. Wenn dir ein Rechteck am Ausgang reicht, kannst du das Ganze mit einem AVR in Minimalbeschaltung realisieren, indem du den integrierten Timer benutzt.
HFfreak schrieb: > Hallo, > > ich möchte einen Oszillator bauen, den ich mit meinem AVR steuern kann. > Ich habe nur keinen blassen Schimmer, wie ich das machen soll. > Es ist egal, in welchem Frequenzbereich der Oszillator liegt, ich möchte > nur ein bisschen rumprobieren. 25, 50, oder 100khz Raster ist auch in > Ordnung. > > > Greetz, HFfreak > > P.S.: Super wäre auch eine Erklärung der Schaltung. Na servas... und nun suchst Du einen Privatlehrer hier in diesem Forum, der Dir - die Schaltung sucht - erklärt - und auch für Rückfragen zur Verfügung stehen soll? Nicht schlecht, dieser Anspruch..... Naja, was zahlst Du für die öffentliche Lehrstunde? Oder hast Du eh schon die üblichen Varianten wie DSS, VCO oder was sonst noch so zur Verfügung steht mittels der Suchmaschine Deines geringsten Mißtrauens abgesucht und hast nix gefunden, was dir weiterhilft? Wenn das so ist - was hast Du gefunden und warum taugt es nicht für Dein bischen rumprobieren? Du könntest Dir jedenfalls zuerst einmal die AN14 von Linear Technology zu Gemüte führen. Die beantwortet Deine Frage zwar nicht vollständig, ist aber dennoch eine elegante und schöne Versammlung von Schaltungen, wie einstellbare Oszillatoren gebaut werden können.... Grüße MiWi
Ich habschon ein paar mal gegoogelt. Da bekomme ich n Und ich brauche ein Sinussignal.ur Patentdokumente.
HFfreak schrieb: > Und ich brauche ein Sinussignal. Ein Ansatz auf die Schnelle: Klangerzeugung ^^^^^^^^^^^^^^ anklicken
Schau mal nach DDS AD9834 bei QRPProject.de in der UNIDDS zu finden. DDS, Platinen etc. gibt es immer auch einzeln.
HFfreak schrieb: > Ich habschon ein paar mal gegoogelt. Da bekomme ich n Und ich brauche > ein Sinussignal.ur Patentdokumente. Aha. was stören Dich Patente? solange Du damit nicht in Serie gehst und die Teile verkaufst ist das vollkommen egal. Vor allem wenn Du eh nur "rumprobieren" willst. Hier im Forum gibts viel, suche hier. Und nochmals: lies die AN14 von Linear Technology. Oder eine der vielen ANs von Analog Devices zu deren DDS-Chips. Über die unzähligen anderen Möglichkeiten im Netz gute Quellen zu AVR-gesteuerten Sinusgeneratoren zu finden will ich gar nicht weiterschreiben. Weil die Arbeit des Lernens kann Dir niemand abnehmen. Und da sind die og. Quellen eine große Hilfe um danach besser Fragen zu stellen. Grüße MiWi
Ich nehme jetzt das: http://www.ebay.de/itm/AD9850-DDS-Signal-Generator-Modul-Module-0-40MHz-Test-Equipment-neu-/230903304354?pt=Mess_Pr%C3%BCftechnik&hash=item35c2e8d0a2 Ich komme nur mit der Steuerwortberechnung nicht zurecht. Das verstehe ich einfach nicht.
> Das verstehe ich einfach nicht.
Was genau verstehst Du nicht?
Da gibt es so einen Algorythmus um das Frequenzsteuerwort für die Register zu berechnen, oder so. Im Tutorial http://www.youtube.com/watch?v=1Cd60S-81Qs so bei 7:50 sagt der, wie man das berechnet und hier wird das auch noch mal erklärt http://webshed.org/wiki/AD9850_Arduino Ich checks aber einfach nicht. Ich möchte im Endprogramm mit einem Drehimpulsgeber und meinem Arduino durch drehen die Frequenz im 25hz Raster eingeben. Ich raffs aber einfach nicht, wie das jetzt mit der Umrechnung einer Frequenz in die Register funktioniert :'( Ich werde die Platine übrgends seriell ansteuern.
Aber die Funktionsweise eines DDS ist schon klar? Weshalb man welchen wert bei jedem clock hinzuzaehlen muss ist auch klar? die kommunikation zum DDS ist auch klar? Das Datenblatt schon angeschaut? Ich zieh mir eigentlich eher ein Datenblatt rein, und kein Viedo von UTube
Sorry wegen Doppelpost. In den Code-Examples steht unsigned long tuning_word = (frequency * pow(2, 32)) / DDS_CLOCK; kann ich also unter der Variablen "frequency" eine beliebige Frequenz in MHZ mit Nachkommastellen [!!!] festlegen, der dann unter dem long "tuning_word" abgelegt wird, den ich dann mit ?!
Huch, da war einer schneller, als ich schreiben kann ;) Die serielle und parallele Kommunikation zum DDS und bei welcher Flanke was gesendet werden muss, ist mir klar. Datenblatt hab ich schon 5x gelesen. Das Utube Video hat mich nur auf diese Platine gebracht.
Hallo HFfreak Das ist seine Aussage: Fout (MHz) = X * 125 MHz / 2^32; Umgestellt nach X: X = (Fout MHz) * 2^32 / (125 MHz) X: Inhalt des Steuerregisters 2^32: größte mit dem Steuerregister darstellbare Zahl Fout: Ausgangsfrequenz Jetzt gibt es ein Problem, das Zwischenergebnis wird größer als in eine Long-Variable passt. Float hat nur 7 relevante Dezimal-Stellen und es geht Auflösung verloren. Dafür gibt es einige Lösungswege, die hier im Forum schon diskutiert wurden. Einfach mal danach suchen.
HFfreak schrieb: > Ich nehme jetzt das: > > Ebay-Artikel Nr. 230903304354 > > Ich komme nur mit der Steuerwortberechnung nicht zurecht. Das verstehe > ich einfach nicht. ein steuer-ic für AD9850 gibts auch schon fertig bei der bucht, heißt SAD504: http://www.ebay.de/itm/SAD504-Steuer-IC-fur-AD9850-Modul-DDS-Funktionsgenerator-und-LCD-Anzeige-/310624875218?pt=LH_DefaultDomain_77&hash=item4852af72d2
@smiley46 vielen Dank! Kann ich denn im Programmcode eine Mhz-Zahl mit Kommastellen verwenden? Ich denke ja. Beispiel: 4,68Mhz Das mit der Auflösung; ist das nicht eher unrelevant? Um welche Feinheit handelt es sich denn und, wann bzw., wie macht diese sich negativ bemerkbar? @flo Der Chip ist mir auch schon in den Sinn gekommen. Hat aber zu wenig Features. Ich will mit meinem Arduino etwas machen.
> Das mit der Auflösung; ist das nicht eher unrelevant?
Möglicherweise würde das für die 25 Hz Auflösung sogar reichen. Bei
kleineren Frequenzen wird die Auflösung auch besser.
Für viele Anwendungen reicht das aber nicht. Warum willst Du Dich
einschränken, wenn es schon fertige Lösungen dafür gibt?
Und wenn ich zum Beispiel das Steuerwort für 10Mhz haben will, muss ich duch 10 * 2^32 / 125 = 343597383,7 rechnen? Das ist ja in dezimal. Für das Register brauche ich doch binärcode, oder? Wenn ich das in binär umwandele, kommt "10100011110101110000101000" raus. Für die Frequenzsteuerung brauche ich doch 32 Bits? (W0 bis W31) Der Binärcode hat aber nur 26 Stellen?! Was mache ich dann? Ich möchte selbst einen kleinen Prüfsender bauen und möchte eine einstellbare Trägerfrequenz haben.
> = 343597383,7 > das in binär umwandele, kommt "10100011110101110000101000" raus. Ich krieg zu Fuß das raus: 343597383 = 0x147AE147 = 0001 0100 0111 1010 1110 0001 0100 0111 Aber Du möchtest eine feinere Auflösung: 10.000.000 * 2^32 / 125.000.000 = 10.000.025 * 2^32 / 125.000.000 = oder: (10.000.000/25) * 2^32 / (125.000.000/25) (10.000.000/25) * 2^32 / 5.000.000 oder mit 8ppm Fehler: (10.000.000/25) * 859 = 343.600.000 (10.000.025/25) * 859 = 343.600.859 Auf diese Weise ist noch keine Float Bibliothek notwendig. Wahrscheinlich hat der Oszillator schon einen größeren Fehler als 8ppm.
flo schrieb: > ein steuer-ic für AD9850 gibts auch schon fertig bei der bucht, heißt > SAD504: "Was "für ein Ding" ist das denn? Ein Datenblatt dafür kann ich nicht finden... ...hat da vielleicht jemand etwas Firmware in einen 28poligen Controller gegossen, auf den Phantasienamen SAD504 getauft, und verkauft das jetzt als Spezialllösung?
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.