HALを使用してSPI + DMA経由でマスタからスレーブに10バイトを転送します。受信機がその瞬間にどれくらいのバイト数を持っているかを確認するにはどうすればよいのですか?そして、10バイトすべてが受信されていなければ、プロセスは再び停止します。 10バイトを送信した後のマスターはスレーブから回答を得なければならないが、スレーブがフルバイトを受信していないとシステムが無限に進むと.......HAL SPI DMA動作中に受信したバイト数を確認します。
-1
A
答えて
0
"HALを使用してSPI + DMAでマスタからスレーブに10バイトを転送しています。" DMAを使用するので、転送サイズをDMA受信APIに設定し、DMA割り込みを有効にするだけです。 DMAが10バイトを受信すると、送信側の転送が10バイト未満であることを除いて、DMA受信側の完全な相互接続が到着します。
"10バイトを送信した後のマスターはスレーブから回答を得られるはずですが、スレーブがフルバイトを受信していない場合、システムは不安定になります......." この問題は、スレーブ側のタイムアウトメカニズム。
関連する問題
- 1. PIC32のDMA経由でSPIデータを受信
- 2. NServiceBusとメッセージの確認を正常に受信しました
- 3. NSubstitute:配列引数を使って受信したメソッドを確認する
- 4. android - SMS受信ブロードキャスト受信者が中止されました
- 5. KeychainItemWrapper iPhone SDKを使用中にSIGABRTを受信しました
- 6. Android - ブロードキャストインテントを受信中にエラーが発生しましたか?
- 7. PHP - HTTP経由で送信されたバイト数を確認する
- 8. 相互認証中に致命的なアラートが受信されました:unknown_ca
- 9. ユニフォームで受信トレイからSMSを確認または読む
- 10. Android:エミュレータでSMS配信確認を受信していません
- 11. 確認または返信なしでページのアンロードを中断する方法
- 12. Javaで作成されたオブジェクトの数を確認します
- 13. RabbitMqからのメッセージの受信を確認しない
- 14. Herokuの送受信トラフィックを確認してください
- 15. サーバでのMacアプリストアの受信確認
- 16. MSMQ(C#)を使用したメッセージ配信の確認/確認
- 17. フレックスエラーServer.Acknowledge.Failed:承認メッセージを受信しませんでした
- 18. PHP imapは自動返信を確認します
- 19. ソケットを使用してバイト[]を交互に送受信する
- 20. Bashで受信信号名を確認する
- 21. 受信トレイから受信したSMSをブロードキャストまたは削除します。
- 22. ATMega328p:USARTを介してバイトを送信する奇妙な動作
- 23. IEagを受信した後、IE9の偽のメッセージを受信しました
- 24. JaveryがAjaxで動作していないことを確認しました。
- 25. DMAはNUMAノードを認識していますか?
- 26. DMAを使用してPCにマイクロからの音声を送信するバイト配列
- 27. ユーザー名をjqueryで確認しました。プラグインを確認しました
- 28. C#でサーバーの動作状態を確認します。サーバープロセス(ビジネスオペレーション)の状態を確認します
- 29. ソケット[0]を使用してバイト[]を送受信しています
- 30. javamail apiを使用して、受信者から削除されたメールの受信確認を受け取ることができます
SPIプロトコルでは、マスターは同時にパケットを送信しながら応答を受信します。また、SPIで1バイトを受信する場合は、1バイトを送信する必要があります。コマンドの送信が完了したがスレーブがより長い要求を送信する必要がある場合は、ダミーバイトを送信する必要があります。 – imbearr