jl7gmnのblog

yahooブログから移行してきました。アマチュア無線を中心としたブログです。

Linux

TS820 DDS-VFOその18

あるものは有効に使いましょうということで古いWindowXPで起動したハムログにデバイスドライバーのインストールに成功したFTDIのUSBシリアル変換小型ユニットでESP32DevKitCのシリアルTXポートに繋ぎ送出されるKENWOODコマンド体系のシリアル周波数データをハムログに実際に取り込みさせている動画を取りました。問題なくバンドSW切り替えでの周波数もロータリーエンコーダをまわしての設定周波数も取り込んでくれています。
画像があらくて見づらいですが、ピクチャ−インピクチャ−で見ると案外周波数が
見やすいようです。


FTDIのAE-FT234XD USBシリアル変換ユニットのRXをESP32DevKitCの
シリアルTXに繫いであります。後からハムログからの周波数設定も予定してる
のでTXもESP32DevKitCのシリアルRXに繫いであります。
CIMG9494

FTDIのデバイスドライバーでなんだかんだありましたが、問題なくCOMポート12
がインストールされています。インストール済みなのでプラグ・アンド・プレイで
動作してくれます。
CIMG9492

ハムログへの周波数取り込みがとてもうまくいっているので、次はWindow10でのAE-FT234XDのUSBシリアル変換ユニットのデバイスドライバーインストールをして、Window10で起動したハムログでのTS820 DDS-VFOからの周波数シリアルデータ送出での周波数取り込みを確認してみようかと思います。

つづく?

TS820 DDS-VFOその17

TS820本体の送受信切り替え様のトランジスタ2石のスィッチング回路は上手く動作してくれました。この確認時にとんだハプニングが起きてしまいました。バンドSWのナットが緩んでチェーンでロータリーSWを回転させているのですが、空回りして、バンドSWが動かない状態が発生してしまいました。上下のカバーを外しPLLユニットを外して、しかもパネルも外さなければ見れません。つまみ類も全部はずします。それからバンドSW周りの確認です。丁度動かない状態が最初のバンドですのでチェーンがはずれている状態にしてWWV/15MHzとなるようにバンドSWを左回転させあわせます。単なるバンドSWは周波数が変わるだけの動作です。ある程度いじっている内に大体状況が分ってきます。チェーンをかけるのも合わせてから上記の位置に合わせておいてチェーンを掛けます。ギヤを緩ませてやる方法もあると思いますが、なるだけ変化は少ない現状から行うのが早く元に戻すコツです。余りパラメータが増えると混乱のもとになりますので!ということで無事バンドSWが元の動作に復帰しました。
良いことがあって、悪いことがあって、また良いことがありました。先のシリアルUSB変換基板が古いPCで動作しないという状況が改善動作できたということです。FTDI社製のAE-FT234XDの超小形USBシリアル変換モジュールがWindowsXPではドライバー自体が最初インストール出来ない状況であきらめていましたが、しつこくネットを見たりしていて、あるやり用にてインストール可能になりました。次の手順です。
まず最初にAE-FT234XDをPCのUSBに繫いで、デバイスマネージャーを開きUSB(Universal Serial Bus)コントローラーに表示された不明なUSBデバイスを削除します。この後にFTDI社のホームページから対象のWindowOSのデバイスドライバーをダウンロードします。私が使いたいのは古いPCのWindowXP用です。
CDM21228_Setup.exe (容量2400KB)のアプリケーション式のインストールファイルです。
FTDI社のホームページから実行型のセットアップEXEをダウンロードします。結構な時間かかります。
一端AE-FT234XDのUSBをPCから外します。この状態でダウンロードしたアプリケーションを実行します。アプリインストールを実行していくとFTDI COM Driver Pack..使用できます。が2行表示されるとドライバーのインストールの成功です。後はまたAE-FT234XDをPCのUSBに挿します。新しいハードウェアが見つかりましたのの表示が出れば、上手く設定されています。プラグ・アンド・プレイのPCの自動インストールでCOMポートに設定が表示されれば完了です。後はシリアルポートの設定をプロパティで行ないます。なおWindowXPをネットにつないでおくのは危険なのでアプリケーションをダウンロードしたらネットから外します。ダウンロード時のみ繋ぎます。
ハムログがXPで十分動作するため何とか、今回USBシリアル変換モジュールのデバイスドライバーをインストール出来ないかと、ネット情報を見たり、色々とやってみて上手く動作にこぎつける事ができました。途中、署名がないエラーとか、色々ありましたが、全てNGな箇所のコントロ−ラを削除してから、新たにインストールするのがベストということです。(あくまでもXPの場合です。)

ボードでの実験でシリアル通信でやることがあるのでXPはまだまだ活躍してくれるでしょう。

つづく?

TS820 DDS-VFOその16

TX_SWの検出回路をTS820本体に組込して動作確認を行いました。結果はある意味上手くありません、NGであり、OKでもあります。OKは、送信検出回路への接続での問題はなくなりました。上手く送受信切り替えできました。NGな点は、電源投入時にどうしてもGPIO0の端子を”H”状態にしておかないとスケッチが起動出来ずにTFT液晶が白いままで、TX_SWをGNDに落とす事で、分かっていれば論理的に対応出来るとしましたが、やはり起動できても、状態が送信表示からとなるので、やはり好ましくないのです。検出回路に使用するトランジスタで論理をNPNトランジスタからPNPトランジスタ回路に変えることで対応しましたが、もとのNPNトランジスタ回路を利用するのではなく、今のPNPトランジスタ回路の送信の検出部はそのまま(SS端子への接続の影響のない入力)で、反転する必要が出てきました。出力を反転するインバーター動作のSW回路の後段への連結追加です。

■最初の検出回路
範囲を選択_277
回路図の定数訂正:上記トランジスタのべースのダイオードに繋がるシリアル接続の4.7KΩは実際は10KΩパラで5KΩです。4.7KΩでも問題なし

■NPNトランジスタのSW回路追加し改良した回路
範囲を選択_277AA

回路の定数訂正:R9の10KΩは1KΩに変更してます。
CIMG9482


NPNトランジスタでの論理反転のSW回路です。下記をボード上に追加作製して、スケッチの論理条件判定箇所の条件を元に戻す事で対応です。受信状態でESP32DevKitCが起動できる様になるポート状態(GPIO0が起動時”H”)にしました。TS820の送信検出端子はGNDへ落とさずともGPIO0端子は”H”状態となります。ボード上での確認では目論見通り起動時受信状態となりESP32DevKitCのリセットSWも問題なくリセットがかかりいい塩梅です。

論理が反転になるので下記スケッチの黄色文字をLOWはHIGHにHIGHはLOWに書き換えもとに戻します。緑色に書き換え戻しました。
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
■TFTへ表示する箇所のスケッチTX_SWの論理書き換え箇所です。
           
        if(digitalRead(TX_SW) == 
LOW){  ← HIGHに書き換え戻します。
           //sprintf(str,"RX:  RIT:");
           sprintf(str,"RX:");
           disp_str12(str,0,92,0xffd080);
        }
        else {
          if(digitalRead(TX_SW) == HIGH){  
← LOWに書き換え戻します。
            sprintf(str,"TX:");
            disp_str12(str,0,112,0xffd080);
          }

■受信時RIT周波数の設定スケッチ部TX_SWの論理の変更

if(digitalRead(TX_SW)==HIGH){      //GPIO00  ← LOWに書き換え戻します。
         // Serial.print("TX_SW:TX-MODE");
         // Serial.println();
            awase = 150;
        }
        else{
          if(digitalRead(TX_SW)==LOW){ 
          ← HIGHに書き換え戻します。
             // Serial.print("TX_SW:RX-MODE");
             // Serial.println();
               if(digitalRead(RX_RIT)==LOW){ //GPIO01(TXD0)
                  s = s+1;
                  delay(200);
                  if(s == 0){
                    tawase = 0;
                  }
                  if(s == 1){
                    tawase =100;
                  }
                  if(s == 2){
                    tawase = 200;
                  }
                  if(s == 3){
                    tawase = 300;
                  }
RIT設定スケッチが続きます。
以下省略                                                 
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー                       

本体に組み込んだESP32DevKitCをもう一度焼き直しての確認を行ないます。

WEBブログからコピペ利用したらバックが反転して文字色も薄くなってしましました。コピペ部の文字の色が上手く出来ない様です。原因はブラウザかもしれません。ブログをコピーした元ブラウザはCROMEで、記事はFIREFOXで書いています。元の記事を書くからのコピーでないとダメなのかもしれません。

つづく?

TS820 DDS-VFOその15

TS820 DDS-VFOの組込での確認の内の送受信の切り替え回路を確認しました。結果はうまくありませんでした。抵抗の分圧では全く動作してくれません。
CIMG9462

なので次に切り替え用としてNPNトランジスタのスィッチング回路のインバーター動作での送受信切り替えを確認してみました。結果は動作したりしなかったりと本体の切り替え回路に繋ぐ事で影響が出るようです。トランジスタ回路を繋ぐと本体回路が不安定動作しています。なので、繫いた状態で通常時回路に影響が出ない様にダイオードを使うPNPトランジスタの回路に変更することにしました。TS820のVOX回路の中に送受信のRL(リレーコントロール)切り替え回路があります。その回路自体もPNPトランジスタのSW回路での送受信切り替えです。FIX・VOX回路のQ9がRLコントロールしているTRです。ちなみに2SA562(Y)を使っています。
範囲を選択_277C


マイク端子の送受信切り替えに繋がっているのはコネクタのFIX3の④SSになります。SSをGNDに落とすと送信です。なお送信受信の切り替えリレー(コイル)は⑤RLです。


範囲を選択_277b

ダイオードがあるために本体側の切り替え回路自体から+12V位(回路図上は+16V)の電圧が受信時出ていますが全く繫いでも影響はないと考えました。マイク端子の切り替え端子に出ている電圧は電源ではありません。回路から読み取ると入力端子としてみれば通常時約10.4kΩ(4.7KΩ+4.7KΩ+1KΩ)pullup時の端子電圧です。
TS820では送受切り替えのSWトランジスタとして2SA562Yを使用しています。リレーのコイルを駆動するため少し余裕のあるトランジスタを使用しています。(コレクタ電流:−500mA パワーディスピエ−ション:500mW)
私が使ったTRは2SA1015 です。切り替えの入力ポート用なので特に電流は流れません。トランジスタ自体に流れるon時のコレクタ電流も 10mA程度なのでトランジスタの絶対最大定格のIC:-150mAに対しても全く問題ありません。オフ時のコレクタ電圧は0.56V位ですがGNDレベルとして十分です。

TS820の本体の送信切り替え回路と似たような回路になりました。

範囲を選択_277
範囲を選択_277A

先ずはTS820の回路図を追っかけて、ダイオードのアノード入力を接続する場所(SS)を確認した上で送受信の切り替え回路を実際に繫いで試してみたいと思います。

切り替え回路(ハード側)の論理が逆になったので、実験ボードにて、スケッチの論理を変更に合わせて書き換えてコンパイルの上、書き込みします。論理変更はLOWをHIGHに、HIGHをLOWに書き変える事で至極簡単に対処出来ます。

【スケッチ変更箇所】
■TFTへ表示する箇所のスケッチTX_SWの論理書き換え箇所です。
黄色文字は書き換え後です。
             
        if(digitalRead(TX_SW) == LOW){
           //sprintf(str,"RX:  RIT:");
           sprintf(str,"RX:");
           disp_str12(str,0,92,0xffd080);
        }
        else {
          if(digitalRead(TX_SW) == HIGH){
            sprintf(str,"TX:");
            disp_str12(str,0,112,0xffd080);
          }

■受信時RIT周波数の設定スケッチ部TX_SWの論理の変更
受信状態ではTX_SW入力が”L”レベル(MICの2端子がオープン時→TR回路出力が”L”)
 送信時はTX_SW入力が”H”レベル(MICの2端子がGND接続時→TR回路出力が”H”)

if(digitalRead(TX_SW)==HIGH){      //GPIO00
         // Serial.print("TX_SW:TX-MODE");
         // Serial.println();
            awase = 150;
        }
        else{
          if(digitalRead(TX_SW)==LOW){
             // Serial.print("TX_SW:RX-MODE");
             // Serial.println();
               if(digitalRead(RX_RIT)==LOW){ //GPIO01(TXD0)
                  s = s+1;
                  delay(200);
                  if(s == 0){
                    tawase = 0;
                  }
                  if(s == 1){
                    tawase =100;
                  }
                  if(s == 2){
                    tawase = 200;
                  }
                  if(s == 3){
                    tawase = 300;
                  }
RIT設定スケッチが続きます。
以下省略


今回GPIO01のTXシリアルポート端子をバンドSW切り替え時のシリアルデータ送出の為のパルス信号入力検出端子に使用したため、回路に繫いであると書き込みが出来ない状態となります。なので書き込み時はこのポートを回路から切り離して行います。
他、ESP32DevKitCに付いているリセットSWも今回の送受信切り替えでGPIO00を使用したため今回のPNPトランジスタ入力のダイオードのアノードをGNDに落としておかないとリセットがかかりません。(ポートは通常時はLOWレベルなのでHIGHレベルとなるようトランジスタ入力をGNDに落とす)なのでESP32DevKitCのリセットはTS820本体に組み込んだ場合は送信時にリセット出来る状態です。具体的にいうと12BY7AのドライブをOFFの状態でリセットボタンを押すようにしないといけません。またはファイナルのヒーター電源OFFの状態。これは少し厄介かもしれません。ただし、変な動作はまず今の所起きてませんので、リセットボタンは押す事は全くと言っていいほどないと思います。
上記は使用ポートによる問題ですので、限りのあるポートでは条件がでても仕方がない事です。わかった事として適切に対処すれば良い事と割り切ればいいと思います。

つづく?

TS820-DDS-VFOその14

TS820-DDS-VFOでの受信時のRIT追加で、表示は実際には見えない位置ですが、試験段階では重宝すると思いRX: と RIT: とRIT周波数もTFT液晶上に追加しました。RIT:はRX表示と一緒にしてたのですが、単独での表示に変更し、送受信時も同じ位置に表示するように変更しています。また、送信時の表示だけは周波数の前に”TX”が表示され送信中であることが見える様にしました。単なる表示部のスケッチ修正なので、省略です。
送信の時に元の周波数で送信状態になり受信時にはRITセットの周波数になる実機での確認はまだしていません。後にすることにしました。
ある程度の完成に近くなってきたので、ハムログへの周波数設定を先にすることにしました。
以前の外部VFO時に使っていたスケッチをコピペして簡単に機能追加出来ます。
当初予定していたシリアル通信のポートを前の製作の時と同じにするように戻しました。簡単に検討なしでの対応にするためです。4800BPS用です。コマンド体系はkenwoodにて対応しました。

■Dual Coreでの対応になるので下記インクルードファイルを読み込みます。
#include <freertos/FreeRTOS.h>

【内容】
基本はESP32DevKitCに搭載のDual Coreのうちのもう1つを追加しハムログへのシリアルデータを送出を担わせます。
Dual Core化で、かかる変更の主な点は下記になります。
RXD0(GPIO03)をRXD2(GPIO16)に変更
TXD0(GPIO01)をTXD2(GPIO17)に変更
この変更に伴いダブるので該当設定SWのポート入れ替えを行ないます。
RX_RITをGPIO17からGPIO01
CHANGE_BAND をGPIO16からGPIO3
■実際のスケッチ上の定義変更表記は下記になりました。
#define RX_RIT 1    //GPIO01
#define TX_SW 0    //GPIO00

#define CHANG_BAND 3 //GPIO03
#define RXD2 16 //uart RXD2 GPIO16
#define TXD2 17 //uart TXD2 GPIO17

■変数の宣言部へ追加
String sss; //Send Serial ASCII data to Hamlog
int count; //Variable

■肝心かなめのvoid task1(void* arg)タスクルーチンを新たに追加です。

//ADD FOR HAMLOG
void task1 (void* arg) {
while (1) {
String ss0;
String ss1;
String ss2;
String ss3;
String ss4;
String ss5;
String ss6;
String ss7;
String ss8;
String ss9;
String ss10;
String ss11;
String ss12;
String ss13;
String ss14;
String ss15;
String ss16;

char cc[11] = "          "; //initialize cc[]

char dinfop0[]= "IF";// command for read setinformation
char dinfop1[]= "          ";//TS820*** frequency sprintf(cc,"%011d",frq);
sprintf(cc,"%011d",frq);
ss1 = cc;  
char dinfop2[]= "     ";      // 5 bulank memory nouse
char dinfop3[]= "+0000";      // Rit frequency  
char dinfop4[]= "1";          // Rit ON =1, Rit OFF = 0
char dinfop5[]= " ";          // 1 bulank nouse for TS711/811/940 XIT
char dinfop6[]= " ";          // 1 bulank nouse for TS940only
char dinfop7[]= "00";         // MEMORY
char dinfop8[]= "0";          // RX ;"0", TX;"1"
char dinfop9[]= "1";          //TS820*** 1;LSB,2;USB,3;CW,4;FM,5;AM,6;FSK,7;CW-N
char dinfop10[]= "0";         // 0;VFO-A,1;VFO-B,2;MEMORY, 3;CALL for ONLY TS-711/811
char dinfop11[]= "0";         // SCAN on;1,  off;0
char dinfop12[]= "0";         // SPLIT on;1,  off;0
char dinfop13[]= " ";         // 1 bulank (TONE on;1, off;0 for ONLY TS-811)
char dinfop14[]= "  ";        // 2 bulank (TONE Frequency for ONLY TS-811)
char dinfop15[]= " ";         // 1 bulank (offset for ONLY TS-811)
char dinfop16[]= ";";         // delimitter

  ss0 = dinfop0;
//ss1 = dinfop1;
  ss2 = dinfop2;
  ss3 = dinfop3;
  ss4 = dinfop4;
  ss5 = dinfop5;
  ss6 = dinfop6;
  ss7 = dinfop7;
  ss8 = dinfop8;
  ss9 = dinfop9;
  ss10 = dinfop10;
  ss11 = dinfop11;
  ss12 = dinfop12;
  ss13 = dinfop13;
  ss14 = dinfop14;
  ss15 = dinfop15;
  ss16 = dinfop16;

  sss = ss0+ss1+ss2+ss3+ss4+ss5+ss6+ss7+ss8+ss9+ss10+ss11+ss12+ss13+ss14+ss15+ss16;
  
   if(count!=0){        
     f_dchange=1;
     f_fchange=1;             
     Serial2.print(sss);
     delay(100);   // need delay value over 80 so that set delay(100)
     if(frq>fmax) frq=fmax;
     if(frq<fmin) frq=fmin;
   }
  }
}

上記のスケッチ中の下記部がロータリーエンコーダを動かした時だけに周波数のシリアルデータを送出する箇所になります。重要なのは、delay(100);小さくしすぎるとサブダイヤルの周波数表示変化がカクカクします。そうならない値がdelay(80);以上ということです。動作上問題がないと確認したdelay(100);に設定してます。
  if(count!=0){        
     f_dchange=1;
     f_fchange=1;             
     Serial2.print(sss);
     delay(100);   // need delay value over 80 so that set delay(100)
     if(frq>fmax) frq=fmax;
     if(frq<fmin) frq=fmin;
   }
■void setup(){のシリアルポートの設定追加とDual Coreタスク宣言追加
void setup() {
//-----------------------------------------------------------------------------------------------
    Serial.begin(115200); //add 2021.Sep.19
    char str[64];
    Serial2.begin(4800,SERIAL_8N1,RXD2,TXD2);// RXD2:16,TXD2:17
   
    //--------- create tasks on core0 --------------------------------
    xTaskCreatePinnedToCore(task0, "Task0", 4096, NULL, 1, NULL, 0);// core0
   
    xTaskCreatePinnedToCore(task1, "Task1", 4096, NULL, 1, NULL, 1);// core1
    
    //--------- Set up Interrupt Timer -------------------------------
    timer = timerBegin(0, 80, true); //use Timer0, div80 for 1us clock
    timerAttachInterrupt(timer, &onTimer, true);
    timerAlarmWrite(timer, 10000, true); // T=10000us
    timerAlarmEnable(timer); // Start Timer
  
〜省略

■void loop(){ 中の追加
下記は削除していたバンド検出回路の通常時”H”レベル、バンドSW動作時”L"パルス送出の回路をやはり使う必要がで出てきました。なぜかと言うとバンドSWを変えた時の情報がない為、エンコーダーが動いている時にシリアルデータを送出するスケッチではハムログのバンドがバンドSWを変えてもそのままとなってしまう現状動作のためです。バンドがかわった時に出す”L”パルスでバンドが変わった時の周波数データを送出させる対策として追加しました。
if(digitalRead(CHANG_BAND)==LOW){   // IF pin24 L PULS IN (ordinary H level)
      FrqToHamlog();
  }
if(((((((((((digitalRead(TO_ESPD0)==HIGH)     // "1" PLL OUT portD0-D10 condition check
        and(digitalRead(TO_ESPD1)==LOW)
        and(digitalRead(TO_ESPD2)==LOW)
        and(digitalRead(TO_ESPD3)==LOW)
        and(digitalRead(TO_ESPD4)==LOW)
        and(digitalRead(TO_ESPD5)==LOW)
        and(digitalRead(TO_ESPD6)==LOW)
        and(digitalRead(TO_ESPD7)==LOW)
        and(digitalRead(TO_ESPD8)==LOW)
        and(digitalRead(TO_ESPD9)==LOW)
        and(digitalRead(TO_ESPD10)==LOW))))))))))){  //29.5MHz
            HET_FREQ = HET_FREQ11;
            if(p==0){
               frq = freq11;
               FrqToHamlog();
               p=1;
            }
            else{
             if(p==1){
               frq = HET_FREQ - 5500000 + o_frq;
               p=1;
             }
            }

            f_dchange = 1;
            f_fchange=1;//add 2020Dec12
          
     }
     else{
         if(((((((((((digitalRead(TO_ESPD0)==LOW)     // "1" BCD port condition check
        and(digitalRead(TO_ESPD1)==HIGH)
        and(digitalRead(TO_ESPD2)==LOW)
        and(digitalRead(TO_ESPD3)==LOW)
        and(digitalRead(TO_ESPD4)==LOW)
        and(digitalRead(TO_ESPD5)==LOW)
        and(digitalRead(TO_ESPD6)==LOW)
        and(digitalRead(TO_ESPD7)==LOW)
        and(digitalRead(TO_ESPD8)==LOW)
        and(digitalRead(TO_ESPD9)==LOW)
        and(digitalRead(TO_ESPD10)==LOW))))))))))){  //29MHz
              HET_FREQ = HET_FREQ10;
              if(p==0){
                 frq = freq10;
                 FrqToHamlog();
                 p=1;
              }
              else{
               if(p==1){
                 frq = HET_FREQ - 5500000 + o_frq;
                 p=1;
               }
              }
            
              f_dchange = 1;
              f_fchange=1;//add 2020Dec12
            
         }
     }
以下上記と同じようなバンドごとの設定スケッチが続きます。

■上記のバンドSWが変わった時にハムログへ周波数データを単発でシリアル送出するサブルーチンも前のをそのまま使います。
void FrqToHamlog(){ //Frequency Set to Hamlog when setting power on( p=0 then FrqToHamlog();)
//************************ Send Freq & Mode to HAMLOG *****************************
// 2021JAN17   Kenwood Command
//*********************************************************************************    
String ss0;
String ss1;
String ss2;
String ss3;
String ss4;
String ss5;
String ss6;
String ss7;
String ss8;
String ss9;
String ss10;
String ss11;
String ss12;
String ss13;
String ss14;
String ss15;
String ss16;

char cc[11] = "          "; //initialize cc[]

char dinfop0[]= "IF";// command for read setinformation
char dinfop1[]= "          ";//TS820*** frequency sprintf(cc,"%011d",frq);

sprintf(cc,"%011d",frq);
ss1 = cc;  

char dinfop2[]= "     ";      // 5 bulank memory nouse
char dinfop3[]= "+0000";      // Rit frequency  
char dinfop4[]= "1";          // Rit ON =1, Rit OFF = 0
char dinfop5[]= " ";          // 1 bulank nouse for TS711/811/940 XIT
char dinfop6[]= " ";          // 1 bulank nouse for TS940only
char dinfop7[]= "00";         // MEMORY
char dinfop8[]= "0";          // RX ;"0", TX;"1"
char dinfop9[]= "1";          //TS820*** 1;LSB,2;USB,3;CW,4;FM,5;AM,6;FSK,7;CW-N
char dinfop10[]= "0";         // 0;VFO-A,1;VFO-B,2;MEMORY, 3;CALL for ONLY TS-711/811
char dinfop11[]= "0";         // SCAN on;1,  off;0
char dinfop12[]= "0";         // SPLIT on;1,  off;0
char dinfop13[]= " ";         // 1 bulank (TONE on;1, off;0 for ONLY TS-811)
char dinfop14[]= "  ";        // 2 bulank (TONE Frequency for ONLY TS-811)
char dinfop15[]= " ";         // 1 bulank (offset for ONLY TS-811)
char dinfop16[]= ";";         // delimitter

  ss0 = dinfop0;
//ss1 = dinfop1;
  ss2 = dinfop2;
  ss3 = dinfop3;
  ss4 = dinfop4;
  ss5 = dinfop5;
  ss6 = dinfop6;
  ss7 = dinfop7;
  ss8 = dinfop8;
  ss9 = dinfop9;
  ss10 = dinfop10;
  ss11 = dinfop11;
  ss12 = dinfop12;
  ss13 = dinfop13;
  ss14 = dinfop14;
  ss15 = dinfop15;
  ss16 = dinfop16;

  sss = ss0+ss1+ss2+ss3+ss4+ss5+ss6+ss7+ss8+ss9+ss10+ss11+ss12+ss13+ss14+ss15+ss16;
      
             Serial2.print(sss);
}


以上の変更追加にてハムログでの周波数データの取り込みが出来るようになります。
ただし厄介な事に、以前シリアルデータ用のICを使って上手くPC上でも認識できたAE-FT234Xが古いPCで認識エラーがでて使うことが出来ない状態です。前はXPのPCで動いていたのですが、HAMLOGのアプリでのシリアル設定で使えない状態でした。今回はADM3202のシリアル変換ICとARVELのUSBシリアルケーブルで急遽代用しました。AE-FT234XはWindows10でUSB3.0では動作します。2.0ではダメでした。XPで動かないのもドライバーのせいかと思い、ダウンロードしてインストールしましたが、動作しませんでした。XPの役目がなくなりつつあります。寂しい!
今日試験ボードで完成したばかりで回路図も修正しなければなりません。
テスト運用に向けて、既存の基板を修正追加したいと思います。

つづく?
アクセスカウンター
  • 今日:
  • 昨日:
  • 累計:

QRコード
QRコード
  • ライブドアブログ