PWM出力用端子
このボードは基板上に加速度センサやマイクロホン、DAコンバータ内蔵アンプなど盛りだくさんなため、使える端子とそうでない端子を確認する必要がある。
ユーザマニュアル UM1472.pdf によれば、タイマ3の ch3, ch4 が未使用であり、自由に使えそう。
PWM用クロック
システムクロックは168MHzとして考える。原発振 8MHz を PLL で 21倍する設定。
タイマ用のプリスケーラは
- AHB Prescaler /1, /2, /4,,,,/512
- APBx Prescaler /1,/2,/4,/8,/16
従って、一番遅くするには (168MHz/512)/16 = 20507.8125 Hz = 20kHz。このときの1周期は 1/20k sec = 0.05 ms
ということは。RCサーボで必要な 1.5ms は 1.5ms/0.05ms = 30カウント。 2.5ms/0.05ms = 50カウント。
- 90°~ +90°を(50-30)=20 というのは、分解能が低すぎる。
(AHB, APBx) = (/16,/16)⇒(168MHz/16)/16 = 656250 Hz = 656.25kHz ⇒周期は1.52us
1.5ms/1.52us = 1000, 2.5ms/1.52us = 1644.7, 1645-1000 = 645。180度を645カウントなので 0.28deg/count となる。
RCサーボのポテンショメータの精度はそんなに無いはずなので、十分な精度。プリスケーラの設定は
(AHB, APBx) = (/16,/16)
を採用。