0

Linuxを搭載した2台のPCがRS232シリアルおよびイーサネットと通信しようとしているセットアップがあります。PCの1つであるPC(B)は、USB<->RS232コネクタを使用しています。PC(A)が再起動するコマンドを発行すると、PC(B)は再起動しますが、再起動中にPC(B)からPC(A)でガベージメッセージを受信しました。PC(A)はまだシリアルポートでリッスンしています。これらのゴミメッセージのいくつかは、たまたま私が聞いているものですが、それは良くありません!

誰かがそれらのメッセージが何であるか知っていますか?それらを削除する方法はありますか?Centosはテスト目的で初期化メッセージを送信しますか?Linuxの他のディストリビューションはどうですか?

誰かが何が起こっているのか知っているなら、事前に感謝します。=)

4

3 に答える 3

1

USBシリアルコンバータがシステムの再起動を通じて正常に動作することは期待できません。デバイスが初期化されていない期間があり、データラインにグリッチが発生する可能性があります。データラインのトグルは、AのガベージRxデータとして表示されます。

意図したとおりに実行したい場合は、Aにコードを記述して、既知の起動メッセージを探し、先頭に追加されたガベージバイトを破棄する必要があります。

于 2012-09-04T16:46:56.153 に答える
1

ゴミにも気づきました。いくつかのボーレートを試した後、オシロスコープ*を使用して信号を確認しました。メッセージは有効な出力であり、ランダムな信号の結果ではないことが判明しました。これは9600ボー、8N1で送信され、バイナリカウントダウンのようなものです。具体的には、次のバイトが(16進数で)送信されます:11、10、0F、0E、0D、0C、0B、0A、09、08、07、06、05、04、03、02、01、00

これらのバイトは、ログインプロンプトが(ビデオ)コンソールに表示されるのとほぼ同時に送信されます。ブートプロセスのかなり早い段階で別の非常に短い信号シーケンスがあります。高速の20usインパルスの後に、10usインパルスが続きます。このシーケンスは短すぎて、それが実際のデータなのか、ある種の切り替えの副産物だけなのかを判断できません。

ドキュメントによるとMCS9865チップを使用するPCIシリアルコントローラーカードを搭載したWindows7デスクトップでは何も気づいていません。

  • ボックスはUbuntu12.10を実行しています。Linuxカーネルのバージョンは3.5.0です。シリアルポートコントローラーはPCIExpressカード上にあり、lspciはそれを「NetMosテクノロジーPCIe9922マルチI/Oコントローラー」として識別します。
于 2013-01-29T22:45:16.133 に答える
0

BIOSの可能性があります。私の同僚は、彼のラップトップが起動時に115200bpsでRS-232を介してBIOSバージョン番号といくつかの詳細情報を提供していることに気づきました。さまざまなボーレートでRS-232を試してみてください。あなたは理にかなっている何かを見るかもしれません。

于 2012-11-08T14:16:20.153 に答える