C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

VC# のSerialPortでATコマンド送受信

[トピック内 4 記事 (1 - 4 表示)]  << 0 >>

■100505 / inTopicNo.1)  VC# のSerialPortでATコマンド送受信
  
□投稿者/ bossa (1回)-(2022/08/25(Thu) 16:56:12)

分類:[C#] 

VisualStudio 2019 Windowsフォームアプリケーション C# で Tera Termのようなターミナルアプリを作成しています。
ATコマンドを送信して、受信待ちをしていますが、受信がないため困っています。

送信処理は serialPort1.Write("AT");で送信を開始し、
受信は下記のように記載していますが、下記関数内のイベントが発生していません。
 serialPort1_DataReceived(object sender,SerialDataReceiveEventArgs e){
string data = serialPort1.ReadExisting();
}

TeraTermで"AT"と入力すれば、"OK"と返信されます。
ボーレートなどの設定は、TeraTermと同じ設定です。

ATコマンドなどは、特別な設定が必要でしょうか
だれか教えてください


引用返信 編集キー/
■100506 / inTopicNo.2)  Re[1]: VC# のSerialPortでATコマンド送受信
□投稿者/ KOZ (314回)-(2022/08/25(Thu) 19:28:04)
No100505 (bossa さん) に返信
> 送信処理は serialPort1.Write("AT");で送信を開始し、

接続する機器のデリミタについて確認してください。

Tera Term のデフォルトは CR ですので、

serialPort1.NewLine = "\r"; // SerialPort のデフォルトは "\n"

としたうえで、

serialPort1.WriteLine("AT");

だとどうでしょう?

引用返信 編集キー/
■100507 / inTopicNo.3)  Re[2]: VC# のSerialPortでATコマンド送受信
□投稿者/ bossa (2回)-(2022/08/26(Fri) 08:13:58)
No100506 (KOZ さん) に返信
ありがとうございます。

文字列の後ろに"\r"を付けて送信したらできました。


引用返信 編集キー/
■100508 / inTopicNo.4)  Re[3]: VC# のSerialPortでATコマンド送受信
□投稿者/ bossa (3回)-(2022/08/26(Fri) 08:15:27)
No100507 (bossa さん) に返信
> ■No100506 (KOZ さん) に返信
> ありがとうございます。
>
> 文字列の後ろに"\r"を付けて送信したらできました。
>
>
解決済み
引用返信 編集キー/

このトピックをツリーで一括表示


トピック内ページ移動 / << 0 >>

このトピックに書きこむ