Arduinoシリアル:Arduinoによるシリアル通信
Arduinoシリアル:Arduinoによるシリアル通信
シリアル通信の背景:
マイクロコントローラまたはマイクロプロセッサが外界と通信する必要がある場合、それらは8ビットパケットの形式でデータを提供するため、一方のシステムが他方のシステムと通信する必要がある場合は、合計8本のワイヤケーブルが使用され、常に長距離を移動すると信号が歪むため、実用的な解決策です。また、8線のバンドルのコストが高いため、このプロトコルはパラレル通信と呼ばれます。この後、新しいプロトコルの必要性が目覚め、設計者は3線のみを使用したシリアルプロトコルと呼ばれる新しいプロトコルを導入します。 8回線のすべてのデータを送信します。また読む:Arduinoプログラミング:Arduinoとは何ですか?それをプログラムする方法は?シリアルプロトコル:
シリアルプロトコルでは、8ビットデータはパラレル入力シリアル出力シフトレジスタによってビットのシリアルストリームに変換されます。受信側では、シリアルインパラレルアウトシフトレジスタによりパラレル8ビットデータに変換されます。シリアルデータ通信は、同期と非同期の2つの方法を使用します。非同期方式でバイト単位で転送しながら、その時点でのデータの同期方式転送ブロック。シリアル通信で使用されるほとんどの非同期動作モード。シリアル通信には3種類の通信システムがあります
- シンプレックス(データの送信のみ)
- 半二重(データを送受信できますが、同時にはできません)
- 全二重(データの送受信を同時に行うことができます)
シリアル通信用のArduinoのプログラミング:
ArduinoにはRs232プロトコルを使用するライブラリが組み込まれているため、RS232ライブラリが処理するため、プロトコル全体を記述してデータの信頼性を処理する必要はありません。最も重要な機能を確認してください。 Rs232通信で使用されます。 Serial.begin(x)
注:Xはボーレートであり、デバイスごとにボーレートの要件が異なります。ほとんどの場合、9600がボーレートとして使用され、データの送受信速度を定義します。この関数はvoidSetup()に含まれています。 Serial.available()
この関数は、シリアルデータを受信できるかどうかをチェックします。この関数の戻り値が0の場合、フェッチできるシリアルデータがないことを意味し、1を返す場合は、使用可能な平均シリアルデータを返します。 Serial.read()
この関数は、データを送信するときにデフォルトでバッファで使用可能なデータを読み取ります。そのデータ型はcharであり、読み取ると10進値を読み取ります。たとえば、1を送信すると、49として読み取られます。 char1に相当する10進数。Serial.println(x)
この関数は、aurdinu IDEのシリアルウィンドウのx変数で使用可能なデータを出力し、ポートに送信します。 Serial.flush()
この関数は、シリアルバッファ内のすべてのガベージ値をフラッシュします。
Arduinoでのシリアルポートプログラミングの例:
このプログラムを実行し、理解と実践のために変更してください。今後のチュートリアルについては、接続を維持してください。
あなたも読むかもしれません:
- PIC18マイクロコントローラーをプログラムする方法。ステップバイステップのチュートリアル。
- MAX232:構造、操作、タイプ、およびアプリケーション。
- オンラインの電気/電子エンジニア向けの10以上の設計およびシミュレーションツール。
- 15電気電子技術者および学生向けのAndroidアプリが必要です。
- 555タイマーを使用した拍手スイッチ回路電子プロジェクト。
- 焼けた抵抗器の値を見つける方法(3つの便利な方法による)
産業技術