8 月
13
|
arduinoとAd9834を使ったVFOでフルブレークインは難しい事が解りました
その時の課題で反応が遅いarduinoを何とかできないかと模索している状態でした。
動作が遅い原因は
digitalWriteとdigitalReadが遅い事です、これを改善するため直接ポート指定の方法に変更して試したら
今度はshiftoutも遅い事が判明しました。
んー もうワシには分からんよ トホホ
投げ出したくなってIC-705でも買えばすっきりするのにと意味不明な事をブツブツと
今回は、そのshiftoutを止めて普通の記述に変更してみました
考えたのはshiftoutは8bitずつの転送だから、shiftoutを使わないなら16bitを一気に転送できると思うんです。
調べるとfor文で1bitずつ回して16回送ればいいのかな?と分からないけど勝手な思い込みを始めました。
AD9834の資料を読み直してタイミングについて勉強しましたが分かりません
頭悪すぎでダメですね
ふと、PICだと希望している処理をしてデータ送信しているだろうと思いつきネットで調べたら有りました
ということで、またまたパクリですみませんいろんな人のを参考にさせて頂きました。
それでも、結果的に期待する程のことは無いのですが、今までとは比べ物にならないレスポンスで反応してくれます、かなり高速なCWでも使えると確信できました
期待する程ではないと書いているのは、AD9834の資料を見ると感じるのですがデータを受け取ってDACから出力されるまでには結構時間がかかるような説明です、数値的には良いと思うのですが人間の感性と言うのは測定データでは表せないというか・・・ 本当に僅かなズレが違和感として残るって言うのか
長点で始まる符号は良いのですが短点で始まる符号や短点1個の時は一瞬のズレ(自分の意識とのズレです)が気になります、ようするに立ち上がりが付いてこないからです
これが概ね解決したら今度は別の事が気になりました
キークリックが感じられます
昔流に書くとキーダウン時のキークリックです、送信段の立ち上がりを少しなまらせると良いかも。
フルブレークインからセミブレークインに方針転換したのでエレキーからの出力は2系統あり
送信状態維持とキーイング用の2つです
送信出力は送信段に7.5Vをキーイングに合わせて供給します、最初はそのまま送信段につないでいましたが10Ωと22μFをかましてやることで対策をしました、10Ωは33Ωの方が効果が大きいのですが電圧ドロップも大きくなり送信段のVRを再調整しないと0.8Wくらいに低下してしまいます
僕は調整がめんどくさいので10Ωとしています。
ここのとこのキークリック対策はSメーター基板からメイン基板への配線の途中に入れました、その様子はこちらです。
直接、基板に取り付けた部品をアレコレしないで良いから簡単に試せますよ、ピン端子に配線の代わりに抵抗とコンデンサを取り付けてます。
細かいブレークインのタイミング調整はエレキー側でできるので、本体側をつつくのはこれで終了とします。
最終的な回路図はこちらです。
自分用の備忘録的に書いた回路図なので読みやすさは考慮していないので分かりにくいも
あっ Poメータの回路は書いてないですね、まあ簡単ですから書く必要も無いでしょ
Sメーター回路は結局簡易な方法にしました
2SC1815は最初は無かったのですが、メーターの倍率器として必要な抵抗値を計算すると全体の合成抵抗から逆算してマズかったのでトランジスタでバランスする電圧を供給するようにしました。
それとメーターにパラッている1N60は選別して使っています
ゲルマダイオードがこんなにバラツキが大きいとは思わなかったぞ
モノによっては0.4Vくらい必要です、これだとラジケーターが簡単に振り切ってしまうので0.2Vくらいのを選ぶと良いです、そうしないと強い信号を受信すると針が音をたててMax側に振り切ってしまいますからね
振り切らないようにVRを調整して感度を落とすと、弱い信号では反応しなくなります。
この0.2Vくらいというのがミソだと思っています(最近ではミソではなく肝なのか)
これでメーター半分くらいまでは感度よく振れて、上の方はダイオードにもバシバシ電流が流れるので分流効果が期待でき、疑似対数動作をしているようです。
DDS VFOのスケッチはこちらです(arduino AD9834 DDS VFO高速化)、今回のスケッチは、不要な消し忘れていた記述も消しています
同じような気持ちでCWトランシーバーを自作される人の参考になれば幸いです。
昔から、自作について 動くと使えるは違うと考えています
動くものは作れるけど、使える物をつくるのは本当に大変ですね