GR-SAKURAのタイマについて


(2020/11/10追記)
【注意!】この記事は特電HAL時代のGR-SAKURAについて述べています。
現在のV2ライブラリについてはこちら → GR-SAKURA/GR-CITRUSのタイマリソース - 滴了庵日録

GR-SAKURAはライブラリのソースが公開されてないので、ライブラリがハードウェアのリソースをどんなふうに使っているのかいまいち不透明です。とある資料によると、タイマに関しては下記のようになっているようです。

CMT0 システムタイマ(1ms周期)
CMT1〜3 トーン出力(tone)用
MTU0〜MTU5 ラジコンサーボ制御(Servo)用
TMR0〜TMR1 未使用
TPU0〜TPU5 PWM出力(analogWrite)用
TPU6〜TPU11 未使用(割り込み使用不可)

というわけで、タイマ割り込みをするならTMR0〜TMR1を使うのがよさそうですね。8ビットタイマですが、2本連結して16ビットタイマにもできます。


※ ms単位の周期の処理でよいなら、特電HALのtimer_regist_userfunc()関数関数を使って、システムタイマによる1ms周期のコールバックを登録するのが簡単です。