

VB2010で、シリアル通信の方法を教えてください。
ツールボックスの「Serial Port」を使っています。
送信までは難なくできたのですが、受信が旨くいきません。
参考にしたサイトは、
http://msdn.microsoft.com/ja-jp/library/cc720852 … です。
これを実行すると、受信が出来ないだけでなく、フリーズしてしまいます。
どうやったら、受信できるのでしょうか?
No.3
- 回答日時:
>受信するデータの終端の仕様が、ETX(&h02)でした。
NewLine プロパティにChr(2)を入れたらどうですか?
御解答、ありがとうございます。
>NewLine プロパティにChr(2)を入れたらどうですか?
改行コードの代わりになるものを、追加できるということですよね。
何処で、宣言をしたら良いですか?
また、参考になりそうなサイトを教えてください。
よろしくお願いします。
No.2
- 回答日時:
どのようなデータを受信しているのでしょうか?
ReadLine()メソッドのヘルプを見ると
『入力バッファ内の NewLine 値まで読み取ります。
既定では、ReadLine メソッドは行を受け取るまでブロックします。
この動作が不適切な場合は、ReadTimeout プロパティに 0 以外の値を設定して、ポート上に行が存在しない場合は ReadLine メソッドで強制的に TimeoutException がスローされるようにします。』
となっていて、なおかつ NewLine の既定値はラインフィード(CTRL+J)なので
受信するデータにラインフィード(CTRL+J)が含まれていない場合には戻ってきません。
受信するデータの終端がキャリッジリタン(CTRL+M)なら
NewLineプロパティにChar(13)を設定してみてください。
参考URL:http://www.robotsfx.com/robot/robohow/RoboHow60/ …
御解答を戴きまして、ありがとうございます。
>NewLineプロパティにChar(13)を設定してみてください。
これが、原因のようです。
受信するデータの終端の仕様が、ETX(&h02)でした。
こうなると、面倒でも、一文字ずつ受信させるしかなさそうですね。
No.1
- 回答日時:
・ハイパーターミナルで受信できるかテストしてみる
→できない場合はCOMポートの設定がおかしいか、
パーソナルファイアーウォールの設定を見てみる
※特定IPアドレスからの送信ならブロックしないようにする
・COMポートの設定を見直す
CPR managerとかでポートを作り、テストしてみる
・Serial Portの通信設定のプロパティを見直す
・SerialPort1.ReadLine
をReadExistingに変えてみる
とかでしょうか?
参考URL:http://social.msdn.microsoft.com/Forums/ja-JP/vb …
御解答を戴きまして、ありがとうございます。
ReadExistingで返事が返ってきました。
ただ、送られた通信プロトコルが分離されて受信しているようです。
(2度の受信イベントで、通信プロトコルが成立する)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- LANケーブル・USBケーブル スマホを充電せずに通信だけさせたい 4 2022/07/02 15:24
- その他(プログラミング・Web制作) シリアル通信 2 2022/05/07 17:14
- Outlook(アウトルック) Windows11にしてからOutlook2019がすぐに固まってしまう件に関して。 2 2023/01/21 11:52
- その他(メールソフト・メールサービス) メール受信できません(アンドロイドスマホ) 2 2023/02/28 07:56
- Outlook(アウトルック) メールの受信設定 1 2023/03/28 09:20
- PHP どうして送信されないのでしょうか? 1 2022/12/09 05:23
- au(KDDI) AUメールが受信できなくなった件 1 2022/08/16 10:35
- Y!mobile(ワイモバイル) ワイモバイルケータイベーシックプランSSのSIMを使ってSIMフリースマホでメールをしたい 2 2022/08/11 23:18
- Yahoo!メール ぷららメールの送受信が出来なくなった 2 2023/07/16 11:48
- Outlook(アウトルック) メール送信できない 3 2022/07/20 09:07
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Outlookの「受信日時」「送信者...
-
ASP.NET C#でPOST受信
-
TcpClientとWebbrowser
-
LINE APIからasp.net の web サ...
-
UDP受信時の通信異常検知について
-
Outlookの「受信日時」「件名」...
-
winsockを使ったTCP及びUDP通信...
-
VB2005でTCP/IPソケット通信で...
-
パソコンに詳しい方教えて下さ...
-
バッチファイルでディレクトリ...
-
[Subversion]IDENTについて
-
インターネット応答なし
-
CSVファイルのマッピング処理の...
-
別のフォルダにファイルを移動...
-
データベースファイル 機種変の...
-
CD-Rに移動したデーターが...
-
MSアクセスのテーブルインポ...
-
iPhoneとWindowsパソコン間での...
-
robocopyの失敗について
-
Win Zipの使い方
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Outlookの「受信日時」「件名」...
-
TCP/IP のパケットの分断と結合...
-
UDP受信時の通信異常検知について
-
Outlookの「受信日時」「送信者...
-
C#にてCTI。RS232Cの受信と送信...
-
VC++メッセージの送受信につい...
-
recv関数の戻り値について
-
RS232cを用いた送信プログラム
-
メーラー
-
PC98で232c送信winndowで受信で...
-
「TCPは全二重可能」の意味
-
VBのMSCommコントロールを使っ...
-
シリアル通信時のデータ受信方法
-
WinSockとWinPcapについて
-
マルチスレッドに挑戦したい
-
VC++ 2010 メッセージが文字化...
-
ネットワークでの受信バイト数
-
無線LAN、SIFSについて
-
winsockを使ったTCP及びUDP通信...
-
DHCPOFFERの受信について
おすすめ情報