資料ライブラリ
AN-1070: AD9833/AD9834 の設定方法
はじめに
このアプリケーション・ノートでは、AD9833/AD9834 での正弦波波形出力の設定方法について説明します。この手順には、リセット・モードへの入り方、Freq0 レジスタへのデータ設定、リセット・モードからの抜け方が含まれています。
AD9833/AD9834 の設定
AD9833/AD9834 をパワーアップするとき、デバイスをリセットする必要があります。このリセット機能は、該当する内部レジスタを0 にリセットしてアナログ出力をミッドスケールにします。AD9833 の初期化中に余計なDAC 出力が生じないようにするため、デバイスが出力を発生できるようになるまでRESET ビットに1 を設定する必要があります。RESET では位相レジスタ、周波数レジスタ、コントロール・レジスタはリセットされません。これらのレジスタは無効なデータが格納されていることがあるため、ユーザが値を設定する必要があります。その後でRESET ビットを0 に設定して、出力を開始させる必要があります。RESET ビットを0 に設定してからMCLK で8 サイクル後にDAC 出力に信号が現れます。
AD9833/AD9834 設定の詳細
AD9833/AD9834 の設定方法を説明するには、シンプルな例が最も適しているでしょう。詳細については、AD9833 またはAD9834 のデータ・シートを参照してください。
基本的な例
目的は、MCLK=25 MHz のAD9833 を使って400 Hz の出力周波数を発生させることです。
このために必要なコードは次式で求めます。
したがって、この例ではFreq 0 = 400 Hz となります。
必要とされる初期化シーケンスを表1に示します。
Hexadecimal | Binary |
0x2100 | 0010 0001 0000 0000 |
0x50C7 | 0101 0000 1100 0111 |
0x4000 | 0100 0000 0000 0000 |
0xC000 | 1100 0000 0000 0000 |
0x2000 | 0010 0000 0000 0000 |
コマンド・シーケンスの説明
0x2100—コントロール・レジスタ
- DB13 を1 に設定します。これにより2 回の連続した書込みによりワード全体が周波数レジスタへロードできます。最初の書込みは下位14 ビットになります。2 回目の書込みは上位14 ビットになります。
- RESET ビット(DB8)を1 に設定します。これにより内部レジスタが0 にリセットされて、アナログ出力がミッドスケールになります。
0x50C7—周波数レジスタ0 LSB
- DB15 とDB14 をそれぞれ0 と1 に設定します。これは周波数レジスタ0 のアドレスです。
- 残りの 14 ビットは、データの下位14 ビットです(0x10C7 =01 0000 1100 0111)。
0x4000—周波数レジスタ0 MSB
- DB15 とDB14 をそれぞれ0 と1 に設定します。これは周波数レジスタ0 のアドレスです。
- 残りの 14 ビットはデータの上位14 ビットで、この場合は全ビット0 です。
0xC000—位相レジスタ0
- DB15、DB14、DB13 をそれぞれ110 に設定し、DB12 はdon’t care (X)です。これは位相レジスタ0 のアドレスです。
- 残りの 12 ビットはデータ・ビットで、この場合は全ビット0 です。
0x2000—リセットの終了
- RESET を0 に設定してからMCLK で7 サイクル後にDAC出力に信号が現れます。