クロック周波数

PWM

サーボ制御用に周期が20msになるように設定

PWM_Period = [(PR2) + 1] * 4 * (Tosc) * (TMR2_Prescale_Value)
= [(155) + 1] * 4 * (1 / 500k) * (16)
= 0.019968s = 19.968ms

Duty_Cycle_Ratio = (CCPR1L:CCP1CON<5:4>) / (4 * (PR2 + 1))

割込み

GP3をGPIO Change Interruptで使う。

mismatch conditionを解消するためにGPIOを読んでからGPIFをクリアする。
仕様書の4.2.3 INTERRUPT-ON-CHANGEを参照。

Posted in PIC.