四、提高PWM速度
由上面可以看出,多引腳PWM的周期大致為
每引腳PWM周期=每引腳判定后延時*要PWM的引腳數*每周期PWM判定次數(PWM精度)
上面的代碼不包括指令執行時間,大概是2us x 14 x 255≈7ms=一個周期,頻率142Hz。如果使用Arduino Mega 2560這樣的大板,我們或者會用更多的引腳,比如32個。周期就變成2us x 32 x 255≈16ms一個周期,頻率就是62Hz了。大概實驗可以看到,如果周期超過12ms以上,驅動LED我們會看到明顯的閃爍。所以必須降低三個值中的隨便一個加快PWM速度。