カテゴリー「AVR」の10件の記事

2012年7月 5日 (木)

AD9850

最近AVRを使ってPCとシリアル通信をしようと実験していましたが、どうも上手くいきません。

いろいろやっているうちに、どうもハード部分の不具合のような気がしてきて作り変えを検討しましたが、それより何にでも使えるテストボードを作ったほうがいいと思い作ってみました。

Dsc_0049

ATmega168を使って、AD変換・RS232C・RE・SW・LED等を使えるようにしました。

動作試験に、以前清水さんと物々交換していただいたAD9850の乗ったDDS基盤を動かしてみました。

Dsc_0050

あっさり動作したのですが、この中華DDS基盤のクロックがひどいということを清水さんから聞いていてので出力信号をスペアナで見てみました。

9850_02

9850_03

こんな感じです。

そこで、ついでとばかりにクロックを手持ちの130.072MHzに付け替えて基盤にまとめてみました。

はずしたついでに、特性を見てみると

9850_07

9850_08

いや~、ひどいもんです。

Dsc_0001

Dsc_0002 

裏側にくっついているのが、TOYOCOMのTCO-222J3というもので131.072MHzを出力するものです。

この特性は

9850_09

9850_10

良い塩梅です。

これを使ったときの10MHz出力です。

9850_04

9850_06

少し良くなりました。

後、電源周りとかグランド周りを強化すればもう少しよくなりかもしれません。

2010年5月28日 (金)

第一次審査合格

今日、JARLから「自作品コンテストの第一次審査に合格しました」。

という通知が届きました。

取り合えず、一安心です。

今度は、6月14日までに本体を送らなければいけません。

しかし、回路図は途中、操作マニュアルも途中で投げてあります。wobbly

悪いクセで完成すると途端に熱が冷めてしまいすぐ次のことに移ってしまいます。

ねじりハチマキで頑張らなくては!

2010年2月26日 (金)

AVR

現在製作している「Q-L Meter」のプログラムですが、ATmega64の25%を使うまでにふくれ上がってきました。

64Kbyteの25%ですから16Kbyteです。

Imgp0728

これを、プリンタポートを利用した書き込み器で書き込んでいるのですが、ベリファイまで含めると約1分かかります。

これだけかかると制作意欲にも影響してきます。sad

USBを使った書き込み器だと早いようですが、書き込み自体は手段なのでUSBを使った書き込み器を作ろうという気が起きてきません。

秋月あたりで入手するのが手っ取り早いのでしょうがなかなか踏ん切りがつきません。

それよりもスパゲッティプログラムをどうにかしてサイズを小さくしろ  が正解かもしれません。

こういう基本量の測定器は精度が命ですので、あれやこれややっていますが これだというものにはなかなか到達しません。

2010年1月11日 (月)

気分転換

気分転換のつもりでしたが、ドツボにはまってしまいました。

ATmaga64を使っていたのですが、LCDを接続すると関係無いポートの動作がおかしくなる

というトラブルに悪戦苦闘していました。

この組み合わせは、現在製作中のTRXと同じ組み合わせです。

製作中のTRXでは、こんなトラブルは皆無でした。

結局解決出来ずに、AT90S8535+ATtiny2313で同じ動作をさせました。

Imgp0693

とりあえず、これでプラットフォームは出来たのでもう少し進むことにします。

気分転換のつもりが、とんだストレスでした。weep

2009年10月10日 (土)

AF-TTG(3)

AF-TTGのケースINですが、仕入れてきたケースに収納しようとしたところケースが大きくて

結構中がスカスカになります。少しもったいないのでこのケースは他に流用することにして

いつものようにCD-ROMのケースに入れることにしました。

このAF-TTGは、そんなに頻繁に使うものでは無いので電源も内蔵せずに実験用電源

から引っ張ってくることにしました。

Imgp0513

中の様子です。

Imgp0514

全体の様子です。

実用本位ということで、これで完成です。(ただの手抜きです。(笑))

2009年10月 8日 (木)

AF-TTG(2)

AF-TTGがほぼ出来たのでケースINするために適当なものはないかと

いつものようにリサイクルSHOPめぐりです。

Imgp0505

今回仕入れてきたのは、DXアンテナのCSチューナーです。(315円)

説明には、TVは写りましたとあったので動作品のようです。

Imgp0507

中の様子です。少しは取れる部品があるかのと思ったのですが最近のものは

ほとんどカスタムICでして使えそうなものは水晶4個とCR類少々のようです。

電源は使えるかなと思ったのですが、SWがIC制御のようで良く判りません。

ということで中身は全部取り出してケースのみの使用ということになります。

2009年10月 6日 (火)

AF-TTG

たんでおいたMAX7403が到着しました。

Adv085

早速ですがその性能です。

これはカットオフ1.75KHzに設定したときのものです。

すばらしい減衰特性です。

Adv086_2

こちらはOPAMPを2個使ったLPFです。(カットオフ1KHz バターワース特性)

切れ味の凄さがわかります。

Imgp0498

MAX7403のLPFを使って作ったAF-TTGです。(1KHz、1.575KHz)

IM成分も高調波も80db下までには確認出来ません。

なんとか実用になりそうな物が出来ました。

2009年10月 2日 (金)

AVR_DDS(3)

進捗状況です。

Imgp0492

2組同じものを作って、1000Hzと1575Hz(正確には1004Hz、1574Hzです)

をつくりOPAMPを使って合成してみました。

Imgp0493

1000Hzの特性です。目立った高調波もなくいい感じです。

(低い周波数にあるつのは測定系に由来するものです)

Imgp0495

1575Hzの特性です。少し高調波があります。

Imgp0496

合成した特性です。

1575Hzの高調波がそのまま残っていますが、この後にMAX7403を入れる予定です。

それできれいさっぱり無くなってくれるはずです。

IM成分も80db下くらいまでには確認できないので実用になりそうです。

2009年9月29日 (火)

AVR_DDS(2)

AVR_DDSのその後ですが、ATmega88のクロックを27MHzまで上げてみました。

オーバークロックですが問題無く働いています。(自己責任です)

Imgp0479

まずこれは、クロック12.8MHzの時のものです。

Imgp0482

これが27MHzにしたときのものです。

かなり滑らかになっています。

現在のプログラムはこんなものです。

Config Portd = Output

Dim A As Byte
Dim I As Byte
Dim J As Byte
Dim K(255) As Byte

Restore Avr_dds_data
For I = 0 To 255
     Read J
     K(i) = J
Next I

A = 0
Do

   Portd = K(a)
   Incr A
   If A > 255 Then A = 0
   Nop : Nop : Nop : Nop : Nop
   Nop : Nop : Nop : Nop : Nop
   Nop : Nop : Nop : Nop : Nop
   Nop : Nop : Nop : Nop : Nop
   Nop : Nop : Nop : Nop : Nop
   Nop : Nop : Nop : Nop : Nop
   Nop : Nop : Nop : Nop : Nop
   Nop : Nop : Nop : nop

Loop

End

Avr_dds_data:
Data 128 , 131 , 134 , 137 , 140 , 143 , 146 , 149 , 152 , 156
Data 159 , 162 , 165 , 168 , 171 , 174 , 176 , 179 , 182 , 185
Data 188 , 191 , 193 , 196 , 199 , 201 , 204 , 206 , 209 , 211
Data 213 , 216 , 218 , 220 , 222 , 224 , 226 , 228 , 230 , 232
Data 234 , 236 , 237 , 239 , 240 , 242 , 243 , 245 , 246 , 247
Data 248 , 249 , 250 , 251 , 252 , 252 , 253 , 254 , 254 , 255
Data 255 , 255 , 255 , 255 , 255 , 255 , 255 , 255 , 255 , 255
Data 255 , 254 , 253 , 252 , 252 , 251 , 250 , 249 , 248 , 247
Data 246 , 245 , 243 , 242 , 240 , 239 , 237 , 236 , 234 , 232
Data 230 , 228 , 226 , 224 , 222 , 220 , 218 , 216 , 213 , 211
Data 209 , 206 , 204 , 201 , 199 , 196 , 193 , 191 , 188 , 185
Data 182 , 179 , 176 , 174 , 171 , 168 , 165 , 162 , 159 , 156
Data 152 , 149 , 146 , 143 , 140 , 137 , 134 , 131 , 128 , 124
Data 121 , 118 , 115 , 112 , 109 , 106 , 103 , 99 , 96 , 93
Data 90 , 87 , 84 , 81 , 79 , 76 , 73 , 70 , 67 , 64
Data 62 , 59 , 56 , 54 , 51 , 49 , 46 , 44 , 42 , 39
Data 37 , 35 , 33 , 31 , 29 , 27 , 25 , 23 , 21 , 19
Data 18 , 16 , 15 , 13 , 12 , 10 , 9 , 8 , 7 , 6
Data 5 , 4 , 3 , 3 , 2 , 1 , 1 , 0 , 0 , 0
Data 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 1 , 1
Data 2 , 3 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10
Data 12 , 13 , 15 , 16 , 18 , 19 , 21 , 23 , 25 , 27
Data 29 , 31 , 33 , 35 , 37 , 39 , 42 , 44 , 46 , 49
Data 51 , 54 , 56 , 59 , 62 , 64 , 67 , 70 , 73 , 76
Data 79 , 81 , 84 , 87 , 90 , 93 , 96 , 99 , 103 , 106
Data 109 , 112 , 115 , 118 , 121 , 124

あまり良い方法では無いと思いますが、NOP命令の数で周波数を調整しています。

その後、OPAMPでLPF(オーソドックスなバターワースです)を2段通してみました。

Adv081

好調波は-73dbになりましたが出来たら- 80db以下にしたいところです。

MAX7403というデバイスがあるようですので入手してみようと思います。

2009年9月26日 (土)

AVR-DDS

TXの製作に入ってAFTTGにパソコンソフトのWAVEGENを使わせてもらっていましたが

もう少しIMの良いものが欲しくなり自作しようかと考えていろいろ思案していました。

候補は、

①OPAMP2個で信号を作り合成する。

②信号を分周して希望信号を作り合成する。

③DDS(AD9851)を2個使って信号を作り合成する。

等ですがWEBをさまよっていたらAVRのポートから8bitのデータを出して R-2Rの

ラダー抵抗でD/A変換してSin波を作るというのが目にとまりました。

作られているのは、アセンブラかCを使っておられのですがBasicでどこまで出来るか

実験してみました。

Imgp0477

実験中の様子です。

Imgp0476

作ったSin波です。

ATmega88を12.8MHzの水晶で駆動しています。

最高周波数は約1.8KHzでした。

AFTTGの2信号は、1000Hzと1575Hzにしようと思っているのでなんとかなりそうです。

R-2Rのラダー抵抗は2Kと1Kの無選別の抵抗を使っているので少し歪があるようです。

Adv080

高調波がかなり出ています。

次は抵抗を選別してやるとどうなるか試してみたいと思います。

その他のカテゴリー