3DSで音関係は内部のDSPが処理してる。 サンプリングされた音のデータはDSPからCPUにバッファをかまして少しずつ送られてきてる。 負荷を減らすために、サンプリングのたびに送るんじゃなくて、16点程度をまとめてからCPUに送るような仕組みになってる。 DSPのサンプリングは32728HzでCPUと全然違うし、バッファで一度蓄えられたりするので、 MICPOSで時間を計る場合、この「まとめて送る」のが精度を決めてて、16/32727=488.9usec程度になる。 タイミングによってはバッファにたまってる分を数えちゃうので、最大488.9usec、平均249usec短く数えてしまう。