JJ1WKN Log

自作や移動運用関連のログです。

Tanukino aitendo DDSモジュール[AD9850-M]のテスト

2012-09-29 | Tanukino
トラ技付録のDDSはPIC制御で、開発環境が整っていないので、Arduinoで制御しようと思いaitendo DDSモジュール[AD9850-M]をテストしてみました。

DDSチップはアナログデバイス社のAD9850を搭載していて125MHzの基準クロック入力で60MHzくらいまで出そうです。
お値段も¥3500とお手頃です。

DDSモジュールを載せた基板です。
Arduinoに線が伸びていますが、スタンドアローン動作用にスペースを残してあります。


Arduinoに接続してテストしてみました。


回路図です。


波形です。


AD9850用のライブラリが用意されていますので、サンプル通りで簡単に周波数の設定ができます。
テスト用スケッチでは、7MHzから5秒おきに10KHzずつUPしていきます。

テスト用スケッチです。
------------------------------------------------------------
// ad9850 dds test

#include <EF_AD9850.h>
#include <LiquidCrystal.h>

// LCD D4 D5 D6 D7 En Rw Rs
// D 03 04 06 07 10 11 12

// DDS Wclk Fqup Rset D7
// D 08 02 05 09

// Port Map
// D00 Rx reserved
// D01 Tx reserved
// D02 DDS
// D03 LCD
// D04 LCD
// D05 DDS
// D06 LCD
// D07 LCD
// D08 DDS
// D09 DDS
// D10 LCD
// D11 LCD
// D12 LCD
// D13
// D14 A00
// D15 A01
// D16 A02
// D17 A03
// D18 A04
// D19 A05

const byte PinLcdD4 = 3; // LCD Data 4
const byte PinLcdD5 = 4; // LCD Data 5
const byte PinLcdD6 = 6; // LCD Data 6
const byte PinLcdD7 = 7; // LCD Data 7
const byte PinLcdEN = 10; // LCD Enable
const byte PinLcdRW = 11; // LCD Read Write
const byte PinLcdRS = 12; // LCD RS

LiquidCrystal lcd(PinLcdRS, PinLcdRW, PinLcdEN, PinLcdD4, PinLcdD5, PinLcdD6, PinLcdD7);
// LiquidCrystal lcd(rs,rw,enable,d4,d5,d6,d7);

const byte PinWclk = 8; // DDS wclk
const byte PinFqup = 2; // DDS fqup
const byte PinRset = 5; // DDS rset
const byte PinD7 = 9; // DDS D7(data)

EF_AD9850 AD9850(PinWclk, PinFqup, PinRset, PinD7);
// EF_AD9850 AD9850(8, 2, 5, 9);

long freq = 7000000; // 7MHz

void setup()
{
lcd.begin(8,2); // 8char 2line
lcd.print("Tanukino");
lcd.setCursor(0,1); // col=0+1 line=1+1
lcd.print("aDDS 02");
delay(2000);

AD9850.init();
AD9850.reset();
AD9850.wr_serial(0x00, freq);
}

void loop(){
freq += 10000; // up 10kHz
lcd.clear();
lcd.print(freq / 1000); // in kHz
AD9850.wr_serial(0x00, freq); // set frequency
delay(5000); // wait 5sec
}
------------------------------------------------------------

すぐ使える ディジタル周波数シンセサイザ基板[DDS搭載]のテスト

2012-09-02 | その他
トランジスタ技術の増刊号で「すぐ使える ディジタル周波数シンセサイザ基板[DDS搭載]」という付録付きの本を買ってきたので、早速テストしてみました。

アナログ・デバイセズ社のAD9834というDDSを搭載した基板ですが、DDS制御用のファームが書き込まれたUSB接続のPICとフィルターやアンプが載っていますので、ターミナルソフトがあればすぐ使えます。

付録の基板です。
まだピンソケットは取り付けていません。


ターミナルソフトからは「20000000s」と入力すると20MHzが出力されます。
他にオプションのATT基板やログアンプ基板の制御ソフトも入っているようです。

オシロで信号を確認してみました。


仕様では50Hz~20MHzとなっていますが、ソフトに制限はないようで20MHzを超えると波形が怪しくなっていきます。
秋月のDDS2キットが16.7MHzまでで、コントローラーも別に用意しないといけないので、こちらの方がお買い得ですね。

ターミナルソフトはWindows標準のハイパーターミナルではPIC付属のUSBシリアルドライバの対応不足のため動作しないとのことで、TeraTermを使用するとのことです。
すこし気になったので、他のソフトでの動作を確認してみましたが、ArduinoのシリアルモニタとProcessingのシリアルライブラリでは接続できました。