SD330の自動チューニング その42016年04月01日 13:31

はじめにお読みください。→当サイトのリンクと免責事項

このシステムのソフトウエアーですが、ハード的にはシリアル通信の入出力しかないのでホストからのコマンドで返事を返すシステムです。ホストとのやり取りを規定し簡易なプロトコルが必要になります。
ホストからのコマンドは英字1文字としコマンドに対しOKまたはNGを返します。またホストに対して周波数を要求する場合も英字1文字で返します。
コマンド一覧です。
PCから受信するコマンド
コマンド機能     
メモリデータ送信     
現在の同調周波数送信      Bコマンドは未使用 
指定周波数まで自動同調   
指定周波数の手動同調(SWR連続計測 )  
全域のSWRデータ測定後メモリ   
指定周波数から1MHzSWR測定後メモリ  
モーター停止    
Cコマンド停止    
H、h、L、lモーター移動開始    
  H;高速fアップ   
  h;高速fダウン   
  L;低速fアップ   
  l;低速fダウン   
自動チューニングモード 'F'返信の応答周波数4BYTEに続く1BYTE
手動チューニングモード 'F'返信の応答周波数4BYTEに続く1BYTE
PCへ送出する返信
コマンド機能     
OK送信      
NG送信 コマンド実行中はN送出後次のコマンド拒否 
C,Eコマンドで周波数データ(4バイト)要求  
Cコマンドで一旦停止を知らせる      
Cコマンド移動完了を知らせる   
Cコマンド再スタートを知らせる       
 'H,h,L,l'コマンドでタイムアウト時間 要求  
モータがタイムアウト停止を知らせる   
 内部コマンド
コマンド機能     
起動後に全域のSWR値測定後メモリ  
0x00現在アイドリング中コマンド待ち   


プログラム的には特段変わったことはありません。DDSの制御も多くのサイトで記されている通りです。
コードをそのまま提示してもMPUも開発環境も違うのであまり意味がありません。
参考までにフローチャートなどを置いておきます。ここ 

ホスト側はWindowsパソコンです。私はVB.NETしか知らないのでそれで開発しました。VB.NETはイベントドリブンなので機能ごとに書けばいいので楽です。ただしSerialPortには苦労しました。
こちらも参考程度のものを置いておきます。ここ
   
 
 
 
    





コメント

トラックバック