DVS-2(旧プロジェクト)

マイク・DVS−2端子切り替え

FT-1000MPに,音声をPC(Linux)から送り込む切り換えスイッチです.

Cで記述したバージョン(回路図) → PIC/Proj21

内容

3代目 †

P1020751

初代でも,2代目のものでも何ら問題ないのですが,PIC12F509の習作として作りました.動作確認後に,在庫しているPIC12C509Aを使いました.今では12C509Aのほうが12F509より高いので,在庫処分的意味合いです.

実は,JDMプログラマーで書き込みに2度失敗して,在庫を3個処分できました^^; トホホ.もっとも,NOPで埋めれば,書き損じた12C509Aも再利用できないことはないのですが,そこまですることもないでしょう.

トランジスタのように見えるものの1つはPTT用のトランジスタ(BC377),もうひとつは5V3端子レギュレーター(78L005)です.

左側の2本の線は,シリアル入力用です.入力のみで,CATは定義されていない命令を無視しますから,CATに使用している線に接続しても使えますが,現在は別のシリアルポートを使用しています.ADM232(Max232同等品)は,受信の一系統のみ使用しています.

セラミック発振子は内蔵です(4MHz).

右側に出ている5本の線のPICの接続とFT-1000MPとの関係は下記の通りです.

基板側 FT-1000MPのDVS-2コネクタ
PICのGPIO2に接続したトランジスターのコレクター(ベースに10kΩ) 3(PTT)
GPIO1(Trなしの直結) 6(CNTL 2)
GPIO0(〃) 5(CNTL 1)
+9V 4
GND 7

GPIOの0〜2bitを使用していますから,初代・2代目で行っていたローテーション(右へのシフト)はしません.

このほか,GPIO3をシリアル入力に使用してます(このポートは入力にしか使えない).PCからのSP出力は,FT-1000MP DVS-2コネクターの1ピンに直接つないでいます.

クロックが10MHzから4MHzになったので,4800bpsのためにループの回数を調整しました.10MHzの時の40%にして,実測して加減しました.

後にCで書いたプログラムでも動作確認しました. → PIC/Proj21

2代目 †

P1020752

初代のも問題はなかったのですが,後にPTT用にトランジスタを追加して,それがチューブラ配線で美しくなく,洋服に引っ掛けて破損したこともあったので,専用基板にして作りました.

PIC16F84とADM232を使っていて,秋月のものと何ら変わりません.電源オンのリセット回路など省略してあります.

初代 †

最もユニークなのが,このマイク・DVS−2端子切り替えです.この,初代のものは,秋月のPIC16F84キットをそのまま使っています.

IMG_1982mic_sw

ロングCQなどは,Linuxマシンに登録されている音声をFT−1000MPに送り込んでいます.そのために,Linuxマシンの音声出力をFT−1000MPの背面にあるDVS−2端子に接続しています.しかし,ただ接続しただけでは,DVS−2端子からの音声は送信されません.CATにはこの切り替えコマンドはなく,DVS−2端子のCNTL2ピンを制御してやる必要があります.

このために,CATのRXD(FT−1000MPからみて)をADM232(単電源のレベルコンバータ)を介してPIC16F84に与え,CATに定義されていない,E0コマンドを勝手に定義し(FT-1000MPは単純に無視するだけ),サブコマンドが01ならば,DVS−2端子から音声入力し,00ならばマイクからに戻すというようにプログラミングしました.

基板は,秋月のキットをそのまま使用しています.たぶん,2年くらい使っていますが(2002年9月現在),信頼性は非常に高く,誤動作・暴走は一度もありません.

DVS-2コネクター(FT-1000MP) †

7ピンの,円形DIN(馬蹄形でない,mini-DINでない).

ピン# 八重洲の定義 接続
1 Voice In PCのスピーカー/ライン出力
2 Voice Out 未使用
3 PTT トランジスタのコレクター(B3)
4 +9V 電源
5 CTNL1 B1 たぶん録音機能
6 CNTL2 B2 再生
7 GND 1につなぐシールド線のシールド側

コネクタ4ピンから取った9Vの電源は,3端子レギュレータを経て5Vとして,PIC及びEIA232ドライバーADM232に供給されています.

Port (bit)割り当て 2008-02-19 †

A 4 EIA232受信
B 3 PTT
B 2 CNTL 2
B 1 CNTL 1

PTTは,オープンコレクターのトランジスタをドライブします.CNTL 1は不使用(L)で,CNTL 2は送信時にH, PTTはLで送信ですが,オープンコレクターのインバータがつくので,CNTL 2と同時にHです.

PTTの追加について 2008-02-19 †

製作した当初から,しばらくは,送受信切替はCATで行っていました.しかし,2005年に,この装置単独で動作するように,PTT回路を追加しました.PTTはPICが直接制御できないので,トランジスタを追加しオープンコレクターで接続しています.

制御するピンが3本になって,コマンドを増やすのもなんなので,コマンドは,E0のみにして,サブコマンドをそのまま出力するようにしました.

自分向けメモ †

PIC側の受信ルーチンで,E0コマンドのサブコマンドを左に1ビットシフトするので,出力ポートのB3, B2, B1は,ビット2, 1, 0に対応する.

Notes:
1. 2008-02-29現在の秋月価格で,12C509Aが150円,12F509が120円です.他の通販店でもたいてい12F509が安いです.Microchip社のサイトを見ても現行モデルに12C509Aはないようです.
2. RocketPortを使用しているので,未だにシリアルポートはあり余ってます^^;
3. かつては,LinuxPPCが動いていたPowerMac.
2008-02-29現在の秋月価格で,12C509Aが150円,12F509が120円です.他の通販店でもたいてい12F509が安いです.Microchip社のサイトを見ても現行モデルに12C509Aはないようです.
RocketPortを使用しているので,未だにシリアルポートはあり余ってます^^;
かつては,LinuxPPCが動いていたPowerMac.