eDMA ping-pong buffer sorting

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

eDMA ping-pong buffer sorting

ソリューションへジャンプ
1,925件の閲覧回数
Sandroom
Contributor III

Good day to all!
I use IMX8ULPIEC processor and i programming SAI interface under m-33 core.
I receive data in the format ABC_ABC_ABC_ABC... via eDma using the SAI_TransferReceiveLoopEDMA() function and thus receive a ping-pong buffer for two arrays storing ABCABCABC alternately.
However, I would like the data after reception to look like this: AAAA......BBBB......CCCC...(end) and also issued alternately in two buffers as in the ping-pong buffer.
Is it possible to do this within one eDMA stream without stopping reception? Are there any examples of similar packaging?

Thanks in advance.

タグ(4)
0 件の賞賛
返信
1 解決策
1,871件の閲覧回数
Sandroom
Contributor III

I figured out the problem.
I had to change the function SAI_TransferReceiveLoopEDMA() a little, called it SAI_TransferReceiveLoopEDMASetuped().
If someone encounters a similar problem, I am attaching a file with the source code of the modified function and its application.

元の投稿で解決策を見る

0 件の賞賛
返信
1 返信
1,872件の閲覧回数
Sandroom
Contributor III

I figured out the problem.
I had to change the function SAI_TransferReceiveLoopEDMA() a little, called it SAI_TransferReceiveLoopEDMASetuped().
If someone encounters a similar problem, I am attaching a file with the source code of the modified function and its application.

0 件の賞賛
返信
%3CLINGO-SUB%20id%3D%22lingo-sub-1991978%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3EeDMA%20%E3%83%94%E3%83%B3%E3%83%9D%E3%83%B3%20%E3%83%90%E3%83%83%E3%83%95%E3%82%A1%E3%83%BC%E3%81%AE%E3%82%BD%E3%83%BC%E3%83%86%E3%82%A3%E3%83%B3%E3%82%B0%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1991978%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E7%9A%86%E3%81%95%E3%82%93%E3%80%81%E3%81%93%E3%82%93%E3%81%AB%E3%81%A1%E3%81%AF!%3CBR%20%2F%3E%E7%A7%81%E3%81%AFIMX8ULPIEC%E3%83%97%E3%83%AD%E3%82%BB%E3%83%83%E3%82%B5%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%A6%E3%81%8A%E3%82%8A%E3%80%81%3CSPAN%3Em-33%E3%82%B3%E3%82%A2%E3%81%AE%E4%B8%8B%E3%81%A7SAI%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%BC%E3%83%95%E3%82%A7%E3%83%BC%E3%82%B9%E3%82%92%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%3CBR%20%2F%3EI%20receive%20data%20in%20the%20format%20ABC_ABC_ABC_ABC...%20%3CSTRONG%3E%3CEM%3EeDma%20%E7%B5%8C%E7%94%B1%E3%81%A7%20SAI_TransferReceiveLoopEDMA()%3C%2FEM%3E%3C%2FSTRONG%3E%20%E9%96%A2%E6%95%B0%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%A6%E3%80%81ABCABCABC%20%E3%82%92%E4%BA%A4%E4%BA%92%E3%81%AB%E6%A0%BC%E7%B4%8D%E3%81%99%E3%82%8B%202%20%E3%81%A4%E3%81%AE%E9%85%8D%E5%88%97%E3%81%AE%E3%83%94%E3%83%B3%E3%83%9D%E3%83%B3%E3%83%90%E3%83%83%E3%83%95%E3%82%A1%E3%82%92%E5%8F%97%E3%81%91%E5%8F%96%E3%82%8A%E3%81%BE%E3%81%99%E3%80%82%3CBR%20%2F%3E%E3%81%9F%E3%81%A0%E3%81%97%E3%80%81%E5%8F%97%E4%BF%A1%E5%BE%8C%E3%81%AE%E3%83%87%E3%83%BC%E3%82%BF%E3%81%AFAAAA%E3%81%AE%E3%82%88%E3%81%86%E3%81%AB%E3%81%97%E3%81%9F%E3%81%84%E3%81%A8%E6%80%9D%E3%81%84%E3%81%BE%E3%81%99......BBBB......CCCC...(end)%20%E3%81%A8%20ping-pong%20%E3%83%90%E3%83%83%E3%83%95%E3%82%A1%E3%81%AE%E3%82%88%E3%81%86%E3%81%AB%202%20%E3%81%A4%E3%81%AE%E3%83%90%E3%83%83%E3%83%95%E3%82%A1%E3%81%A7%E4%BA%A4%E4%BA%92%E3%81%AB%E7%99%BA%E8%A1%8C%E3%81%95%E3%82%8C%E3%81%BE%E3%81%99%E3%80%82%3CBR%20%2F%3E%E5%8F%97%E4%BF%A1%E3%82%92%E5%81%9C%E6%AD%A2%E3%81%9B%E3%81%9A%E3%81%AB1%E3%81%A4%E3%81%AEeDMA%E3%82%B9%E3%83%88%E3%83%AA%E3%83%BC%E3%83%A0%E5%86%85%E3%81%A7%E3%81%93%E3%82%8C%E3%82%92%E8%A1%8C%E3%81%86%E3%81%93%E3%81%A8%E3%81%AF%E5%8F%AF%E8%83%BD%E3%81%A7%E3%81%99%E3%81%8B%3F%E5%90%8C%E6%A7%98%E3%81%AE%E3%83%91%E3%83%83%E3%82%B1%E3%83%BC%E3%82%B8%E3%81%AE%E4%BE%8B%E3%81%AF%E3%81%82%E3%82%8A%E3%81%BE%E3%81%99%E3%81%8B%3F%3CBR%20%2F%3E%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3E%E3%82%88%E3%82%8D%E3%81%97%E3%81%8F%E3%81%8A%E9%A1%98%E3%81%84%E3%81%84%E3%81%9F%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%3CBR%20%2F%3E%3C%2FSPAN%3E%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-LABS%20id%3D%22lingo-labs-1991978%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CLINGO-LABEL%3Ei.MX%208%E3%83%95%E3%82%A1%E3%83%9F%E3%83%AA%20%7C%20i.MX%208QuadMax%E2%80%AF(8QM)%20%7C%208QuadPlus%3C%2FLINGO-LABEL%3E%3CLINGO-LABEL%3Ei.MX8ULP%3C%2FLINGO-LABEL%3E%3C%2FLINGO-LABS%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1994639%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%E6%97%A5%E6%99%82%3AeDMA%E3%83%94%E3%83%B3%E3%83%9D%E3%83%B3%E3%83%90%E3%83%83%E3%83%95%E3%82%A1%E3%82%BD%E3%83%BC%E3%83%88%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1994639%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E7%A7%81%E3%81%AF%E5%95%8F%E9%A1%8C%E3%82%92%E7%90%86%E8%A7%A3%E3%81%97%E3%81%BE%E3%81%97%E3%81%9F%E3%80%82%3CBR%20%2F%3E%E9%96%A2%E6%95%B0%20%3CSTRONG%3ESAI_TransferReceiveLoopEDMA()%3C%2FSTRONG%3E%20%E3%82%92%E5%B0%91%E3%81%97%E5%A4%89%E6%9B%B4%E3%81%97%E3%81%A6%E3%80%81%20%3CSTRONG%3ESAI_TransferReceiveLoopEDMASetuped()%3C%2FSTRONG%3E%E3%81%A8%E5%91%BC%E3%81%B0%E3%81%AA%E3%81%91%E3%82%8C%E3%81%B0%E3%81%AA%E3%82%8A%E3%81%BE%E3%81%9B%E3%82%93%E3%81%A7%E3%81%97%E3%81%9F%E3%80%82%3CBR%20%2F%3E%E8%AA%B0%E3%81%8B%E3%81%8C%E5%90%8C%E6%A7%98%E3%81%AE%E5%95%8F%E9%A1%8C%E3%81%AB%E9%81%AD%E9%81%87%E3%81%97%E3%81%9F%E5%A0%B4%E5%90%88%E3%80%81%E5%A4%89%E6%9B%B4%E3%81%95%E3%82%8C%E3%81%9F%E9%96%A2%E6%95%B0%E3%81%A8%E3%81%9D%E3%81%AE%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%81%AE%E3%82%BD%E3%83%BC%E3%82%B9%E3%82%B3%E3%83%BC%E3%83%89%E3%82%92%E5%90%AB%E3%82%80%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%82%92%E6%B7%BB%E4%BB%98%E3%81%97%E3%81%A6%E3%81%84%E3%81%BE%E3%81%99%E3%80%82%3C%2FP%3E%3C%2FLINGO-BODY%3E