2023/08/21(月)Arduino Nano Everyの挙動
Arduino Nano Everyになってから、UNO R3と違ってタイマ/カウンタが盛りだくさんになった。
その挙動を調べていて使ってるところ使ってないところなどの確認。
とりあえず起動時のTCA0周りを一覧
TCA0.SINGLE.INTCTRL = 0b0 TCA0.SINGLE.CTRLA = 0b1011 TCA0.SINGLE.CTRLB = 0b11 TCA0.SINGLE.CTRLC = 0b0 TCA0.SINGLE.CTRLD = 0b0 TCA0.SINGLE.CTRLECLR = 0b0 TCA0.SINGLE.CTRLESET = 0b0 TCA0.SINGLE.CTRLFCLR = 0b0 TCA0.SINGLE.CTRLFSET = 0b0 TCA0.SINGLE.EVCTRL = 0b0 TCA0.SINGLE.INTCTRL = 0b0 TCA0.SINGLE.PER = 255 TCA0.SINGLE.CMP0 = 128 TCA0.SINGLE.CMP1 = 128 TCA0.SINGLE.CMP2 = 128TCA0.SINGLE.CTRLCなのですが、起動時は0b0だがtone()実行中は0b111になっています。
比較一致(Compare) CMP2OV CMP1OV CMP0OV 出力ですね。なぜ全部?
あと、この記事がすごく役立ちました。
@CoTechWorks さん
Arduino Nano Everyのタイマー割り込み機能について
この記事を参考に進めています。