0

pic18f452とuartに問題があります。次のような最も単純なコードを使用します。

 UART1_Init(9600);              // Initialize UART module at 9600 bps
 Delay_ms(100);                 // Wait for UART module to stabilize

そして永遠にwhileループの間に私はこのコードを持っています

  UART1_Write_Text("HELLO2");
  Delay_ms(1000);

また、ハードウェアの液晶モジュールには非常に正常に動作しますが、PCで受信したデータはそのようなスクラップです

???m

私はすべての接続をチェックしましたが、何も問題はありません。MAX232icを変更しましたが、運がありませんか?!私のハードウェアはそのようなものです ここに画像の説明を入力してください

最後に、すべての接続に問題はありません(極性とその他すべて?)編集:mikrocをコンパイラーとして使用します

4

3 に答える 3

2

ボーレートエラーのようです。オシレーターの設定が期待される周波数になっていることを確認しましたか? 使用しているシリアル ライブラリは特定のクロック周波数を想定しており、その周波数で動作していると確信していますか? または、一連の周波数で動作し、使用している周波数をシリアル ライブラリに正しく通知していますか? また、ASCII だけでなく、10 進数または 16 進数として受信したバイトを確認すると便利です。

于 2011-07-18T07:14:13.370 に答える
0

スタート ビット、データ ビット数、パリティ、およびストップ ビットはどうですか? それらは両端で同じですか?

于 2011-07-16T15:41:21.310 に答える
0

これは、最大 232 から Pic へ、最大 232 から PC への接続が緩い場合に発生します。送信ピンまたは usr オシロスコープの変動をチェックして、Hello World アルファベットの ASCII 値を確認してください。

于 2014-01-10T18:32:02.003 に答える