Startseite
Fotos
Schaltung DDS (Target)
Schaltung Steuerteil (Target)
DDS Schaltplan (png)
DDS Platine (png)
Steuerteil Schaltplan (png)
Steuerteil Platine (png)
Sourcecode (zip)
Bedienungsanleitung
Users Guide |
Here you can see a DDS circuit with the AD9951 and a
PIC16F877. The frequency range of the AD9951 is 0MHz to 160MHz.
You can use he DDS either with the PIC16F877 or with a small
VB6 Program with your computers LPT Port.
In this case you will perhaps need a small
buffer circuit beetwen the LPT
port an the dds unit. Unzip the programm to a folder an run it. No setup is
required. Please let me know if you change the programm code, so that i can
post it here on the website.
The VB6 Program is tested under Win 2000 and XP.
The PIC sourcecode is made with MPLAB V.6.5
The PIC is programmed with a Picstart Plus. The configuraton word is Hex
3F31
Screenshot VB Program:
Bei der auf den folgenden Seiten folgenden Schaltung handelt
es sich um eine DDS
Schaltung für einen HF Generator
von 0 - 160 MHz mit einem DDS IC AD9951
der Firma Analog Devices und PIC 16F877 von
Mikrochip als Prozessor.
Zur Ansteuerung kann entweder ein PIC 16F877 oder ein kleines
VB6 Programm verwendet werden (über die
parallele Schnittstelle). Unter Umständen ist in diesem Fall eine kleine
Schaltung zwischen der
parallelen Schnittstelle und dem DDS erforderlich.
Der Sourcecode für den PIC ist mit MPLAB V. 6.5 erstellt, als
Programmiergerät findet ein Picstart Plus Verwendung. Das Konfigurationswort
für den PIC ist Hex 3F31.
Das VB6 Programm nur in einen beliebigen Ordner entpacken und starten. Es
ist kein Setup erforderlich. Das Programm ist unter Windows 2000 und XP
getestet.
Veränderungen an den Programmen sind erwünscht. Bitte um eine kleine
Mitteilung, damit ich die Änderungen hier aufspielen kann (Bin ein absoluter
Neuling in der Hochsprachenprogrammierung).
Die
Ausgangsleistung beträgt etwa 10 dBm (gemessen habe ich zwischen 8 und 12
dBm, je nach Frequenz). Der große Vorteil des AD9951 liegt darin, dass das
Ausgangssignal über einen 14 Bit DA-Wandler erzeugt wird (im Gegensatz zu
seinen kleineren Brüdern), d.h. das Signal ist sehr sauber und kann direkt
für TX/RX-Konzepte verwendet werden, ohne dass eine schmalbandige PLL
nachgeschaltet werden muss. Nachteilig ist der doch recht hohe
Stromverbrauch (ca. 200 mA bei 12 V).
Die Schaltung ist auf 2 Platinen realisiert um eine gute Entkopplung
zwischen dem Prozessorteil und der DDS Schaltung zu erreichen. Die DDS
Platine passt von der Größe her in ein Weißblechgehäuse der Firma
Schubert mit den Maßen L * B
* H = 37 * 55 * 50 mm.
Die Frequenz ist über einen Drehgeber einstellbar. Dabei können
Frequenzschritte zwischen 1 Hz und 10 MHz gewählt werden (über einen im
Drehgeber integrierten Taster).
Zusätzlich ist es möglich zwischen 2 frei wählbaren Frequenzen mit ebenfalls
wählbarer Geschwindigkeit und Raster zu wobbeln. Das Wobbeln kann entweder
einmal oder in einer Schleife dauernd wiederkehrend erfolgen. Beim Erreichen
der oberen Frequenz während eines Wobbeldurchgangs ist es weiterhin möglich
eine zusätzliche Wartezeit einzustellen (wobei eine Frequenz von 0 Hz
ausgegeben wird) bevor wieder mit der Startfrequenz begonnen wird. Dies kann
z.B. beim Ausmessen von Filtern günstig sein, da dann die Filter eine
"Erholpause" erhalten.
Im Gegensatz zu mehreren anderen Sourcecodes die ich angeschaut habe (dort
wird häufig ein fixer Wert verwendet um eine Frequenzänderung zu
ermöglichen), berechnet der Prozessor wirklich jede Frequenz über die im
Datenblatt des AD9951 angegebene Formel, d.h. es ergibt sich bei keiner
Frequenz ein Fehler größer als ein Bit, was in etwa 1/10 Hz entspricht. Dazu
war es notwendig praktisch alle externen Kommandos intern als BCD Format zu
verarbeiten und anschließend entsprechend zu wandeln. Daraus ergibt sich ein
doch etwas umfangreicherer Sourcecode , so dass ein PIC16F877
verwendet werden muss. Der Drehgeber sollte nicht mehr als 30 Rastungen pro
Umdrehung besitzen, da der Prozessor nur mit 4 MHz getaktet wird und es
daher zu erwarten ist, dass sich bei einem schnellen Drehen der Prozessor
"verschluckt". Soll ein Drehgeber mit mehr Rastungen verwendet werden, ist
ein PIC mit 20 MHz Quarz zu verwenden. Es müssen aber dann alle Pausen im
Programm entsprechend geändert werden und die 2 Kondensatoren am Quarz des
PIC auf 15pF verringert werden. .
Der AD9951 hat nur einen Pin-Abstabd von 0.5 mm. Das
erfordert schon sehr "feinfühliges" Arbeiten. Außerdem muss er auch noch auf
der Unterseite auf Masse gelötet werden, d.h. es ist unbedingt eine
durchkontaktierte Platine zu verwenden. Wenn genügend Interesse besteht,
lasse ich mal einen Schwung Platinen anfertigen. |