タグ付けされた質問 「spi」

SPIは、クロック(SCLK)、データ入力(MISO)、およびデータ出力(MOSI)を備えた低レベル3または4線シリアルバスインターフェイスです。4番目のワイヤはスレーブ選択で、バス上のデバイスを一意に選択します。この信号は通常アクティブローです。スレーブ選択、チップ選択、CS#、SS#は通常、同じ機能を表します。ただし、必ずデータシートを確認してください。SPIバスは、正式な仕様を欠いている*デファクト*標準です。

2
PICのSPIクロックが不安定
PIC18F25K22の MSSPモジュールをSPIマスターモードに構成しようとしています。タイミングを見ていると、送信全体を通してクロックが安定していません。写真は言葉よりもそれをよく示しています。 ビットが送信された後、クロックは短くなり、毎回同じ量ではありません。これまでにSPIを使用したことはありませんが、ウィキペディアや他のリソースで見つけた図には、これが表示されていません。私はArduinoも接続しましたが、この動作は見られませんでした。私のコードは: #pragma config FOSC = INTIO67 // Oscillator Selection bits (Internal oscillator block) #pragma config PLLCFG = OFF // 4X PLL Enable (Oscillator used directly) #pragma config BOREN = OFF // Brown-out Reset Enable bits (Brown-out Reset disabled in hardware and software) #pragma config WDTEN = OFF // …
8 pic  spi  timing 

3
MISO / MOSIとTxD / RxDの違い
USARTとSPIの違いは何ですか?USARTには[TXD / RXD]、SPIには[MISO / MOSI / SCK / SS]があります。SPIは同期プロトコルですが、USARTはハードウェアです。しかし、USARTの同期部分とハードウェアの違いは何ですか?
8 spi  uart 

2
自分のバスを設計する
この質問は、前の質問、「EMIのためにSPIに代わるもの」の補足です。私は自分の通信バスをデザインするというアイデアを楽しんでいます。誰かが私の予備設計に目を向けて、私がどこに夢中なのか教えてくれれば幸いです... 私は現在、別々のPCB上の7つのADC(共有CSですが、各ADCには独自のMISOラインがあります。ビットバンギングされています)に10cmを超える長さのワイヤーで運ばれる2MHz SPIを使用していますが、EMIを削減するために何か別のものに置き換えたいと考えています。問題は、差動バスを備えたADCが多くないため、独自のバスを設計できるかどうかです。少なくとも物理層、そしておそらくプロトコルも。 新しいバスの設計目標: 物理的に小さなコンポーネントを使用する 低EMI 4本以下のデータワイヤ(2ペア) 各ADCから300kbpsを超える帯域幅。(合計2.1mbps以上) これについて考えることに頭がおかしくなる前に、PSoC 5で行うのはそれほど難しいことではないことを考慮してください。そのチップでは、Verilogで独自のプロトコルを設計し、ハードウェアに実装することができます。そして、ある程度、物理層コンポーネントも含めることができるかもしれません。さらに、これらすべてを同時にマスターで並列に実行できるため、全体で良好な帯域幅を確保できるように、スレーブごとに1つずつ、これらの7つを同時に実行できる場合があります。 そしてここに私の予備的な考えがあります: I2Cに基づいており、物理層コンポーネントに接続できるように少し変更されています。SDAラインとSCLラインが差動ペアになりました。SDAペアにはOR-ingプロパティがあります。これは、ハイにしか駆動できないピンとローにしか駆動できないピンを使用して実現されます。SCLペアは、マスターによって排他的に駆動されます。データレートは少なくとも1 mbpsになります。 マスターは、7つのマスターモジュールを備えたPSoC5です。スレーブも1つのスレーブモジュールを備えたPSoC5であり、内蔵ADCを使用します。 考え: プルアップ抵抗とスルーレート制限コンポーネントを実装するための最良の方法が何かわからない。 解約は必要ないと思います。スルーレートを約80nsに制限すると、長さ10cmのケーブルに適しています。 それは明らかに適切な差動トランシーバーではありません。ゲートから1つを作成しようとして時間を無駄にしていますか? これらのNotゲートは、スキューを引き起こします。これは問題になりそうですか?

2
SPI:TIまたはMotorolaモード?
Cortex M3ベアメタルをプログラミングしてSPIフラッシュと通信します。SPI制御レジスタの構成ビットの1つはFRF(フレーム形式)です。SPI Motorolaモード(0)またはSPI TIモード(1)に設定できます。(こちらのARMリファレンスマニュアルページ695をご覧ください。) SPIフラッシュのデータシート(こちらから入手可能)には、どのモードを使用する必要があるかが示されていません。 2つの異なるモードとは何ですか?使用している特定のフラッシュチップにはどちらを使用する必要がありますか?
8 embedded  arm  spi  flash 

4
SPIはビットバンギングよりも大幅に高速ですか?
写真18f4550に基づくプロジェクトがあります。'595シフトレジスタに書き込むために、通常のioピンよりもspiを使用することには明確な利点がありますか?spiの方が速いと聞きましたが、どうだかわかりません。それはチップの他の部分とは異なる、より速いクロックを使用していますか、それとも単により効率的ですか?かなり少ない数の命令で、通常のioピンを介してバイトをビットバンギングできます。spiはより少ない処理能力を使用しますか?かなり激しい計算中にかなり頻繁にシフトアウトするので、できるだけ多くのサイクルを自分のプロセスに割り当て、シフトアウトしないようにします。 spiを使用したくない主な理由は、現在のレイアウトでは必要なピンへのアクセスが少し難しくなるためです。既にいくつかのピンを他のものに使用しており、それらをシャッフルする必要があるためです。物事を解体して移動する前に、どんなメリットがあるのか​​を知りたいと思いました。
8 pic  spi 

5
最も一般的な組み込みシリアルバスは何ですか?[閉まっている]
現在のところ、この質問は、Q&A形式には適していません。私たちは回答が事実、参考文献、または専門知識によってサポートされることを期待しますが、この質問はおそらく議論、議論、投票、または拡張された議論を誘います。この質問を改善でき、再開できると思われる場合は、ヘルプセンターにアクセスしてください。 7年前休業。 シリアルバスを介してサードパーティのペリフェラルと相互運用できるようにする組み込みデバイスを設計しています。SPI、I²C、またはその他のバスを選択する必要がありますか? 周辺機器はかなり低い帯域幅(バスを介して通信し、定期的にポーリングされる一部のセンサー)であり、ほとんどの場合コントローラーから1メートル以内です。コントローラーの唯一のタスクは、センサーデータを収集し、何らかの方法でパッケージ化してから、別のバスを介してワイヤレスモジュールに送信することです(ただし、センサーバスもこれに再利用できます)。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.