csとclkは共有されます。
20本のMOSIラインが20本のDACチップに接続されていますが、この環境下でFlexio Muilt-BeatはCAN動作しますか?
私が使用したチップはMCN947です。
FlexIOを使用して、24ビットDACを20個SPI制御するシミュレーションを行う必要があります。
これら20個のDACのCSおよびCCKパラメータは共通ですが、各チップはそれぞれ独立したMOSIを備えています。MISOは存在しません。したがって、厳密に言えばSPIではなく、20個のMOSIを備えたSPIと言えます。
出力が生成されるたびに、20個のDACの値が同時に更新される。
私の考えは、20個のDACから1ビットずつSHIFBUFに格納し、8個のSHIFBUFでそれぞれ8ビットを格納するというものです。
1回のDMA転送で、20個のDACに対する8ビットデータの更新が完了する。
DMA処理では、24ビットのデータを3回同期および更新します。最後に、チップセレクト信号が立ち上がります。
アイデアはあったものの、Flexioのサンプルコードを見ても、どこからコードを書き始めればいいのか分からなかった。
関連する事例をお持ちかどうか分かりません。また、私のやり方が最適かどうかも分かりません。
こんにちは@justdomyself
質問についてもう少し詳しく説明していただけますか?
お知らせください:
中国語で問題を説明していただいても構いません。
よろしくお願いします。
BR
アリス
こんにちは@justdomyself
ご返信ありがとうございます。
申し訳ありませんが、 20個のMOSI出力でDACを駆動するMCXN947のサンプルはご用意しておりません。利用可能なFlexIOの例は主に標準的なSPIインターフェースをエミュレートするよう設計されています。
あなたのアプリケーションでは、ご自身の特定の要件に基づいたカスタムFlexIOドライバを開発する必要があるでしょう。
以下の例を参考にしてください。
AN14175: FlexIOを使ってQuad SPIコントローラをエミュレートする方法 |NXP Semiconductors
よろしくお願いします。
BR
アリス