stm32f103 usart の 4Mb ボーレートを使いたかった。PC で受信したデータが正しいことを確認するにはどうすればよいですか? ハイパー ターミナルを使用しましたが、その設定では 4Mb のボー レートがなく、コードを実行すると間違った文字が表示されますが、115200b のような低いボー レートではデータが正しく受信されました。
1361 次
2 に答える
1
送信機と受信機が同じ速度で送信していない場合、受信機は誤ってデータを読み取ります。各バイトには受信機を同期させる開始ビットがあり、残りのビットは時間によって決定されます。
一般的な PC RS-232 シリアル ポートは、115200 bps までしか動作しません。お使いの PC が 4 Mbps の速度を処理できない可能性があります。115200 以下の速度を使用することをお勧めします。
デバイス間で通信していて、より高速な速度が必要で、PC を使用してデバッグするだけの場合は、デバッグ目的で速度を変更し、通信が機能したら高速に設定できます。または、ロジック アナライザーを使用することもできます。手動で行うのは面倒ですが、シリアル データを読み取る機能を備えているものもあります。
于 2014-08-20T16:30:26.347 に答える
0
stm32f19 モジュールが 2 つある場合は、4Mb で USART を使用してそれらを接続し、チェックサム (または比較可能なハードコードされたブロック) を含むデータ ブロックを送信します。受信ユニットで、チェックサムを確認するか、データを比較してリンクが機能しているかどうかを確認します。
于 2014-08-10T09:15:22.030 に答える