<<<TGO-KEYER>>> UPDATE 2015.07.27
5年ぶりのメッセージキーヤーの更新になりますが、今までの使用実績から機能を絞って実用的なメッセージキーヤー
にする事にしました。従って概略スペックは、6メモリー程度で、CWとRTTYの送信が出来る程度にします。(RTTYの
受信は、IC-9100を使用します。)
基本的には、599レポートだけの交信に時間のかかるPCを使用せずに対応出来るようにするのが目的です。
--CW/RTTY Keyer Version403のリリース 2016.03.14
1.変更点
CW/RTTY Keyer Version403のプログラムです。
(コンパイラーは、XC8 v1.34を使用しています。)
--CW/RTTY Keyer Version402のリリース 2015.07.27
1.変更点
CW/RTTY Keyer Version402のプログラムです。
(コンパイラーは、XC8 v1.34を使用しています。)
--Version401の詳細 2015.07.19
1.ハードウェア
Version401のプログラムです。
(コンパイラーは、XC8 v1.34を使用しています。)
--Version401が完成しました。2015.07.17
RTTY部のテストのため、PC接続切り替え器に、FSKとPTTのピンジャックを追加して
<表面>
<MMTTYのモニタ画面>
メモリーからの送信を、MMTTYでモニターしたものでRTTY信号が復調できています。
<V401のRTTY画面>
LCDの上部は状況の表示部で、下部がキーイング内容の表示に使用していますが、
16文字を超えると、古い文字が消去される形式にしました。
<V401の概要>
・EL-KEYは、スクイズキヤーとして動作
・メッセージメモリーは、100bytes X 6(dot/dash/space:2bits)
メッセージ内容は、CW/RTTYで共用
・モードは、CWとRTTYでメニューにより切り替え
・メッセージメモリーへの書き込み許可は、メニュー指定
・CW/RTTYへの出力は、キーイング内容またはメッセージメモリーから出力可能
・RTTYのキーイング出力は、PTTボタンでスタート、終了はPTTボタンの再押下または
Mnからの出力完了
・シリアルコンテストNOの自動追加はメニューで指定、NOの挿入箇所はメモリー時に、
NNN(連続)で指定
以上が概要ですが、詳細は後日メニュー等の説明時に行います。
--ハードがほぼ完成しました。2015.07.08
机のスペースからSW-125のケースに収める事にしました。そのため、LCDはSD1602
<表面>
表示はメモリーから打ち出したものです。
<裏面>
部品が少ないため、基盤はスッキリしていますが28PのMPUのためケーブルの量が多く
なってしまいました。フラットケーブルは、PICKit3へのケーブルでMPUを取り外さなくてもディバックが出来る
様にしましたので大変便利になりました。
ところで、割り込みのインターバルを当初LCDの待ち時間の110uSにしていたのですが、LCDの表示が遅い
ため、55uSにしたところ62MHzのクロックでも割り込みの荷が重いらしく不安定ですので、インターバルを550
uSにして再設計する事にしました。LCDの待ち時間は40uSでよさそうですので、1charの書き込みであれば
処理のループで消費出来そうですので、割愛できそうです。また、550uSはサイドトーン発生のためでRTTYで
あれば、1mS以上でも何とかなりそうですが・・・・ ソフトの変更です。
変更後の回路図は、こちらです。
--CWのデコードが出来る様になりました。2015.06.28
当初は、V3の移植で考えていたのですが結局C言語でのリコーディングになってしまい、
1.VERSION 04の概要
(1)使用MPUは、PIC18F26K22を使用する。
(2)モニターとして、LCDを使う(16ch x 2)
(3)RTTYは、キーボードの変わりにCWを変換して送信出来る様にする。
(4)メモリーは、6個にする。
(5)コンテスト対応に、シリアルNO送信も出来る様にする。
(6)電源は、外部のみにする。(固定用)
<回路図>見にくいと思いますので、ダウンロードしてください。
開発は、PIC kit3を直接接続してディバック出来る様にしました。
<開発風景>
以前のKEYERは、ASSMBLERでコーディングしていましたので、c言語にリコーディングになり、かなり大変な
作業になりそうです。
*****************ここからは、旧の記事です。********************
PIC16F88は、EEPROMが256バイトと大きくなったので、メモリーチャンネルを5CHにして少し欲張った
機能を追加したメッセージKeyerを、作る事にしました。 プログラムは、全て作り直しを考えたのですが、時間
があまり取れないので、今まで公開しているKEYERを母体として、機能追加の形で作り上げました。
ハードは、極力周辺回路を追加しないシンプル形にして、ソフトで処理することにしています。
プログラムのダウンロードは、下部にあります。
--VERSION 03-100-- 2010.06.27 ソース公開バージョンリリース
公開の目的として、皆様のアイディアで本KEYERがより良いものになればの考えでソース公開
しましたので、改良等でよりよいものにしてください。
注意事項:ソース公開にあたって、著作権の放棄は致しませんが本プログラムの改造・公開等は
自由です。 但し、あくまでも自己責任でお願いします。また、本プログラムの問い合
わせ等についても、回答できませんのでご承知願います。
<VERSION 03-100内容>(一般交信向け)
(1)V03-02との違いとして、M+とM-をSRAM(80BYTE)に割り当て、プログラム起動時にプログラムから内容を
セットする様にしました。(Mキー + M-orM+による書き込みは可能です。)
・ソースプログラムの"MMMSET"と"PMMSET"サブルーチンでセットしていますので希望の内容に変更
して使用してください。 (00:スペース 01:短点 10:長点 11:PAUSE の2ビットで表現しています。)
初期値:DE JA1TGO TNX QSO DR(AS)OM UR 599 599 HR IN TOKYO・・・・・・・・・・
(2)上記理由から、WPXモード,長点の長さ可変機能は、削除されています。
(3)その他
・ソースプログラムの先頭部分のEQUプールにプログラム内の設定値が集約されていますので、好みの最適値
に変更してみてください。但し、値のシンタクスチェックは、行っていませんので注意してください。
・コメントについては、イメージで書いている部分がありますので、目安としてください。
・CHを追加したい人は、RA3をADCにして分圧してみるのも手だと思います。
・開発は、秋月のキットを使用しています。
<V03-100のダウンロードは、こちらから>
ftp/TGOKEYERV03100.asm ソースプログラム
ftp/TGOKEYERV03100.HEX オブジェクト
--通常VERSION はこちら-- 2010.06.22 リリース
<機能と操作方法>
--VERSION 03-02-- 2010.06.22 リリース
<追加機能および変更点>
(1)メモリーからの送信時、スペースが4つ以上あると停止していたのを、読み飛ばして次の符号を送信する
ようにしました。
(2)WPXモードのカウント時のチャタリング対策を、行いました。
--VERSION 03-01-- 2010.06.13 リリース
<追加機能および変更点>
(1)ポーズ(PAUSE)機能の追加−−−>メモリーからの送信時の一時停止機能です。
メモリーへの記憶時に、AS(送信停止)をキーイングするとメモリーからの送信時その場所で、M-INのLEDが
点灯して送信を中断します。 その時、手動のキーイングが可能ですので送信して、Mキーを押すと続きが
メモリーから送信されます。 (注)本機能により、メモリーからの送信停止(AS)符号は送信できません。
<使用例>
メモリー入力時 "UR RST (as) TNX FB QSO DR (as) OM ・・・・・・・・・・・
メモリー再生時 UR RST 停止 TNX FB QSO DR 停止 OM・・・・・・・・・・
停止のときに、599 名前 を打ちます
(2)WPXモードの変更−−−>シリアルNOを、4桁までサポートしました。
ゼロは、"O"に変更しました。
"999"までで十分と思ったのですが、"9999"までとしました。4桁になるまでは3桁(nnn)で送信されます。
"0"を"O"にした事で、スピーディになった感じです。
(3)設定記憶機能の追加−−−>起動時オプションをEEPROMに記憶できるようにしました。
Mキーを押しながら、起動時オプションを指定して電源オンにするとEEPROMに記憶するようにしました。
(起動時オプションは、同時に複数して可能です。)
Mキーを押さないで、起動時オプション指定すると電源を切ると引き継がれません。
初期値に戻すときは、Mキーだけを押しながら電源オンしてください。
(4)EEPROMを初期化しました。−−−>最初のMキーの電源オンは不要です。
(5)格CHのサイズを変更−−−>CH1,2:32バイト CH3,4,5:58バイト
CH1,2は、コールの登録程度で使用してください。
<03-01の検討事項>
(1)WPXモードで、+1,-1キーのチャッタリングでカウントが安定しない場合があります。
+1のバズが+2になったりします。(次バージョンで検討してみます。)
--VERSION 03-00-- 初期バージョン
(1)エレキーは、スクイズキーヤーです。
(2)メモリーチャンネルは、5CHにしています。
Mキーを押して、次にMnキーを押すとLEDが点灯し、キーイングした内容を記憶します。
(タイムアウトがありますので、手早キーイングしてください。)
再生は、Mnキーを、押します。
CH1,2:37バイト CH3,4,5:48バイトでEEPROMです。
(長点・短点・スペースは、2ビットで記憶されます。)
(3)長点の長さ可変設定−>設定は、記憶されます。
長点を打っているときに、+1, −1キーを押す事により長点の長さが変わります。
(4)ストップキーの追加−−>送信の中断
メモリーからの送信時、ストップキーを押すことにより中止します。
これは、必要です。
(5)長短点反転機能−−−>右打ち・左打ちの対応です。(起動時オプション)
−1キーを、押しながら電源オンにすると反転します。
移動のとき困ったので、追加しました。
(6)ビーコン機能−−−−−>CQ等の自動繰り返し送信(起動時オプション)
M5キーを、押しながら電源オンにすると、M6のメッセージがインターバルを持ちながら繰り返し送信されます。
停止は、ストップキーで停止します。
(7)WPXモード−−−−−>シリアルNOの自動送信(起動時オプション)
+1キーを、押しながら電源オンにするとM4の内容を送信後三桁のNOとBKが送信されます。
NOは、+1,−1キーによりカウントがアップダウンされます。(初期値:001)
Z80でも機能は持っていたのですが、自動カウントアップにしたため再要求時など使い難かったので
改善しました。
(8)バッグキーモード−−−>長点が手動になります。(起動時オプション)
ストップキーを、押しながら電源オンにするとバックキーモードになります。この場合Mキーによる
書き込みは、できません。(メモリー送信は、OKです。)
私は、バックキーは使用できません。HI HI
<開発風景>
<回路図>
<プログラムのダウンロードは、こちらから>
秋月のAIK-PICプログラマーVer4で、書き込みを行ってください。
3. ftp/TGOKEYERV0302.HEX V03−02バージョン(最新)
2. ftp/TGOKEYERV0301.HEX V03−01バージョン
1. ftp/TGOKEYERv0300.HEX V03−00バージョン
(注意)このプログラムを、最初に使用するときMキーを押しながら電源ONしてください。
また、M1〜M5に書き込み(Mキー後にM1〜M5を押してLEDが消えるまで待つ)
行ってください。(V03-00のみです。)
まだ、作り上げてからあまり使用していないため使いづらい所もあると思いますので、随時バージョンアップして
良いものにするつもりです。