ARM/DSP 共有メモリ通信を実装しようとしています。ARM 側はデータのブロックを共有メモリ (array[] と名付けましょう) に配置し、ブロックのアドレスとサイズを DSP 側に送信します。DSP 側はそれらを読み取るだけです。DSP側では、
void * buf //address of block on shared memory
int length //size of block
しかし、私がそれらを読もうとすると、実際に得られるものは次のとおりです。
buf[0] = length
buf[1] = array[1]
buf[2] = array[2]
buf[3] = array[3]
:
:
:
長さ変数が配列の最初のセルを無視しているように見えます (これは奇妙なことです)。または、void ポインターを間違った方法で使用しています。助言がありますか?