シリアル通信インターフェース-SPI In Embedded Hardware Communication Interface Protocol

Sep 16, 2019

伝言を残す

このセクションは続きます。 ハードウェア通信インターフェイスプロトコルのもう1つのシリアル通信インターフェイス-SPI。UARTシリアルポートプロトコルと比較して、 これには独自の独自性があります。

アドレスは次のように引用されます: Http : //www.eepw.com.cn/article/201812/396060.htm

簡単な紹介

(シリアルペリフェラルインターフェイス)、シリアルペリフェラルインターフェイス。

SPIはSerialPeripheral Interfaceの略語です。 SPIは高速、全二重、同期通信バスであり、チップのピンで4本のラインのみを占有します。 チップのピンを節約し、PCBレイアウトのスペースと利便性を節約します。 このシンプルで使いやすい特性により、AT91RM9200などのこの通信プロトコルを統合するチップが増えています。

-バイドゥ百科事典より

インターフェイスは、1980年代半ばにモトローラによって開発され、事実上の標準になりました。

-ウィキから

ウィキペディアが相談した「事実基準」から、科学の知識の盲点を得ることができます。

事実上の標準とは、標準化団体によって策定されたものではなく、テクノロジーの主導的地位にある企業やビジネスグループによって策定されたものを指します。 また、DVDフォーラムで承認される必要があるDVD規格や、市場で受け入れられている技術規格など、一部の業界団体の承認も必要です。

-バイドゥ百科事典より

SPIインターフェースは、ホストとより多くの通信アーキテクチャを定義します。 同じSPIバスには、ホストが1つだけあり、複数のスレーブコンピューターがあります。 このようなアーキテクチャは、ホスト側でのみ通信のイニシアチブを制限し、ホストが通信を開始し、スレーブが目的を達成します。

信号線

SPIは4線式シリアルバスと呼ばれ、信号線は次のとおりです。

SCLK:シリアルクロック(ホスト出力)

MOSI:スレーブ入力またはホスト出力スレーブ入力からのメイン出力(ホストからの出力データ)。

MISO:出力からのメイン入力または出力からのメイン入力(出力データ出力から)。

SS:スレーブ選択(通常は低効率、ホスト出力)。

信号線の命名もさまざまです。

シリアルポートクロック:

SCLK:SCK

メイン出力->入力から(MOSI):

SIMO、MTSR-メインデバイスとスレーブデバイス間のMOSIに対応します。

SDI、DI、DIN、SI-デバイスから。 メインデバイスのMOSIに接続するか、次の接続に接続します。

SDO、DO、DOUT、SO-メインデバイス上。 スレーブステーションのMOSIに接続するか、上記の接続に接続します。

主入入<>

SOMI、MRST-メインデバイスとスレーブデバイス間のMISOに対応します。

SDO、DO、DOUT、SO-デバイスから。 メインデバイスのMISOに接続するか、次の接続に接続します。

SDI、DI、DIN、SI-メインデバイス。 スレーブまたは上位接続に接続されたMISO。

スレーブ選択:

SS:SSEL、CS、CE、nSS、/ SS、SS#

上記の紛らわしい名前はSDO、SDI、DOUT、DINなどです。これらはすべて、メイン機器または機器だけで別々に見る必要があります。 ただし、一般的には、明確な仕様を作成するようにしてください。明確な仕様を作成するのは容易ではありません。

同期シリアルインターフェイスとしてのSPIは、2つの同期信号を持っていると考えることができます。 1つ目は、スレーブマシンからSS信号を選択し、選択したスレーブに通知し、SPI通信の準備をすることです。2つ目は、クロック信号SCLKを同期することです。 トランシーバー側がデータと対話するとき、SCLKのホッピングに基づいてビットごとに出力およびサンプリングされます。

4本の信号線はすべて必要なわけではありません。動作モードに応じて、2本の線と3本の線に構成できます。

STM32CubeMXツールの構成ページで、異なる動作モードに対してチップピンがどのように異なるかを明確に確認できます。







この比較により、全二重の4行と3行の差がスレーブ信号NSSであることがわかりました。 通常、この状況は、SPIバスにはメイン通信アーキテクチャとスレーブ通信アーキテクチャが1つしかなく、スレーブNSS信号は常に低レベルであるためです。

信号タイミング

4線式SPIインターフェースのタイムシーケンスは常に最初に常にローであり、マシンから信号ラインSSを選択してからSCLKを出力し、データMOSIを取得します。この時点でMISOは高インピーダンス状態です。 次のように:



通常、SPIインターフェイスデバイスがあり、仕様に対応するシーケンス図があります。 SPIインターフェースはそれぞれインターセプトされます。 FLASHモデルはGD25Q32C、SPIインターフェイスOLEDモデルはQG-2832TLBFG04であり、2つのデバイスの仕様部分は次のように導入されています。2つのスクリーンショット:





タイミング図の仕様が各信号線出力レベルの順序と時間遅延を定義し、データ信号とともにクロック信号ホッピングの「整列」を定義することを見つけることは難しくありません。 ここでの「アライメント」は、実際にはデータの出力とサンプリングです。

同様に、このタイミング仕様は、クロックの立ち上がり、立ち下がりエッジの時間、チップ選択とクロックホッピングエッジ間の遅延、クロックエッジとデータラインの持続時間など、SPIデバイスのSPIインターフェイス信号特性を指定します。

これらのタイミング特性は、SPIホストとの通信時にSPIホストのスコープを定義します。または、定義のスコープを超えない場合、マシンホストの応答から異常な通信が発生します。

デバイスによって、SPIインターフェイスのタイミング要件が異なります。 最初の単純なシーケンス図であり、このシーケンス図に基づいて、SPIインターフェースは異なるインターフェース構成パラメーターを構成することもできます。

インターフェイス構成項目

一般に、インターフェイスのオプションの構成は次のとおりです。インターフェイスモード(実際の構成はシングルおよびデュプレックスモード選択)、デバイスマスタースレーブモード、データ幅、クロック極性(CPOL :)、クロック位相(CPHA)、クロックレート、データビットビットサイズと端末の選択。

インターフェースモード

標準の4線式SPIインターフェイスは、データのやり取りにホストとスレーブ間の通信を使用し、2者はデータの送受信プロセスを備えています。 LCD / OLED SPIインターフェースでは、デバイスのデバイスとしてホストにデータを返す必要はありません。 ホストから制御情報を受け取り、データを表示するだけです。

このシナリオに基づいて、3線式シンプレックス通信として構成できます。つまり、SS、クロックSCLK、およびデータ出力MOSIのみをマシンから選択できます。

デバイスマスタースレーブモード

通常、この構成では、チップがサポートするかどうかを確認する必要があり、SPIホストまたはスレーブマシンとして構成できるため、プロジェクトシステムに統合しやすくなります。

データ幅

名前が示すように、送信データは8ビット、16ビットなどに構成でき、これもチップに応じて決定されます。

クロック極性とクロック位相

2つはCPOL(クロック極性)とCPHA(クロックフェーズ)です。 極性とは、高レベルと低レベルを意味します。 これは、SPI通信に関しては最初のクロックホッピングエッジが立ち上がりエッジと立ち下がりエッジであるため、アイドル状態のSPIバスを定義し、クロックは高レベルまたは低レベルを維持します。 位相とは、クロックのジャンプエッジを指し、データ信号の出力と、サンプリングをクロックに合わせる方法を指定します。

この2つの構成は、Wikiおよび百度百科事典で非常に明確に解釈されています。





クロックレート

レート選択は、データ伝送におけるクロック信号ラインのターンレートを定義します。これは、各チップで定義されたインターフェイスシーケンス図で維持できるレート範囲です。 ホストの速度の設定が速すぎ、スレーブマシンの応答が遅すぎる場合、通信は失敗します。

データビットビットサイズと終了選択

データ送信優先度ビットは、最初のUARTプロトコルから知ることができ、UARTが指定したデータ優先度bit0から設定でき、このSPIは送信ビットに設定可能な優先度であり、最低または最高の位置を設定できます。

FLASHモデルGD25Q32およびOLED QG-2832TLBFG04の時系列のスクリーンショットから、これら2つのデバイスはすべてMSBに優先順位、つまり最高の優先順位を与えていることがわかります。

次に、フォントチップGT21L16S2Wの指示を読んで比較します。



SPIデバイスでは、MSBの送信優先度が一般的に採用されていることがわかります。

SPI通信インターフェース、1つのホスト、および複数のスレーブ通信アーキテクチャを要約します。 標準モードには4本の信号線があり、選択された信号SSとの通信を開始し、クロック信号SCLKはビット出力とサンプリングを実行し、サンプリング時間を設定し、ビットを発行することを優先します。


お問い合わせを送る