chottoshitahanashi’s diary

基本的に間違ったことばかり書いてるブログ。検索ひっかかるな

PWMサーボはもっと続くよ

PWMサーボは続くよ - chottoshitahanashi’s diary
こちらは1MHzクロックを前提にしてたので8Mで再計算。

1)の計算。周期20msecでおよそ0.1msec=10kHz毎にHIGH期間をコントロールしたい。クロック8M/10k=800分周に一番近いのは1024分周。このときPWMサイクルは8M/1024Hzつまり1000/(8M/1024)=0.128msec。このPWMサイクルで20/0.128=156.25カウント(正確には156-1カウント)するとタイマリセットするようにすれば20msec(正確には156*0.128=19.968msec)毎のPWMサイクルができる。


Boldにした部分が修正箇所、てことで分周比を128から1024に変更すればいいだけ。

レジスタの変更はTCCR1のCS13 CS12 CS11 CS10を
CS13 CS12 CS11 CS10=1000: 128分周
から
CS13 CS12 CS11 CS10=1011: 1024分周
に変更する。


たまにサーボが変に大きく動くのを除いてほぼ完璧に動いた。サーボが大きく動くのはよくわからないけどまあいいや。