032 2007/05/13 AVR ATTINY2313 DDSコントローラーの製作 | |
AVRのテストボードを作ったので、ATTINY2313を使ってDDSコントローラーのプログラムを開発しました。 テストボードです。 ATTINY2313のほかにATTINY26とATMEGA168の開発ができるようにするため、ソケットだけ実装しています。 右下のソケットにはRS-232Cのレベル変換のICが入ります。 クロックは周波数カウンタ用に25.17MHzのCXOを用意しました。 (今回は内蔵8MHzなので使用していません。) |
|
DDSと接続した様子です。 ロータリーエンコーダーが無かったので、UP/DOWNスイッチでオーソドックに制御します。 真ん中のモードSWで周波数とステップのモードを切り替えます。 10倍や1/10の処理ですむように、ステップは10Hz〜100KHzの5段階としました。 ソフトはBASCOMで開発しました。 下の1行でPD4のクロックに従いPD3に26ビットの周波数データ(Freqdata)を出力できます。 Shiftout Portd.3 , Portd.4 , Freqdata , 3 , 26 , 10 | |
表示は上段がUP/DOWNスイッチで制御するモード(F:周波数 S:ステップ)とステップです。下段は周波数です。 操作性はもう一歩ですが、なんとか実用レベルに達しました。 ロータリーエンコーダーもいいですが、AD変換を使ってポテンショとスプレッド+バーニアなんていう構成も面白いかもしれません。 | |
周波数カウンタ(未校正)の表示です。 |