表示調整
閉じる
挿絵表示切替ボタン
▼配色
▼行間
▼文字サイズ
▼メニューバー
×閉じる

ブックマークに追加しました

設定
0/400
設定を保存しました
エラーが発生しました
※文字以内
ブックマークを解除しました。

エラーが発生しました。

エラーの原因がわからない場合はヘルプセンターをご確認ください。

ブックマーク機能を使うにはログインしてください。
39/61

5. CPU負荷が高いという話だが実際どうなのか?

picocalcとMP3プレイヤーで検索すると、Pico2 のみとか書かれてるサイトがあった。

ということはCPU負荷が高いということだよな。大丈夫かな?と思いぐぐったり、実測したりしてみた。


rp2040 interrupt latency で検索すると、割り込みでGPIOを反転する処理時間が見つかった。


FLASH上にプログラムがある場合

初回反転:17us

次の反転:2us

RAM上にプログラムがある場合

初回反転:5us

次の反転:100ns


picoの割り込みって思ってた以上に遅い。

サンプリングレート 44kHz だと割り込みは 23us に一度発生するので、全く間に合わない。RP2350だと2~3倍の性能は出るけど、かなりきつそうだ。


インターバルタイマを動かしたときに、どれくらい影響があるかを実測した。

micropythonで

for i in range(100000):

sum += i

みたいなループを走らせた結果


何もしない:約1450ms

44kHz タイマー:約1840ms

オーバーヘッドだけで 25% ぐらい悪化してる。


動画と併用するなら根本的に対策しないとダメそうだ。


割り込み処理が重いならDMA転送にすればいいのに。と昔の人は言いました。

でもDMA終了割り込み処理とか組む必要があるんだよな。

う〜ん。

評価をするにはログインしてください。
ブックマークに追加
ブックマーク機能を使うにはログインしてください。
― 新着の感想 ―
このエピソードに感想はまだ書かれていません。
感想一覧
+注意+

特に記載なき場合、掲載されている作品はすべてフィクションであり実在の人物・団体等とは一切関係ありません。
特に記載なき場合、掲載されている作品の著作権は作者にあります(一部作品除く)。
作者以外の方による作品の引用を超える無断転載は禁止しており、行った場合、著作権法の違反となります。

↑ページトップへ