« EC20 テスト | トップページ | 一般公開 »

2014年2月17日 (月)

STM32F3のタイマ

ポーリングでホールICの信号を読み取っていたのを、割り込みイベントに変更。

STM32のタイマーは、ブラシレスモーターのホールIC入力に対応している。
3相分の信号をつなげると、それぞれのXORをとって、タイマーのイベント入力につなげられる。

F1のときは、その信号のエッジが立ち上がりか立下り、どちらかしか設定できず、目的の動作をさせるには、イベント/レジスタを2つ用意しないとだめだった。
(設定自体はできるので、ぎりぎり所望の動作はできる。)

------

F3のタイマは、レジスタはF1の同名のタイマとそっくりで、設定もほとんど同じだ。

だがよくよくデータシートを見ると、イベント設定のレジスタに新しいフラグビットが追加されていて、両エッジのイベントを取れるように変更されている。

これはありがたい....が、そのつもりで見ないと、変わってることに気付かないよなあ。

同じTIM2と名づけるなら、全く同じにしてほしいものだ。
変わったんなら、TIM2aとかにしてくれればいいのに。

STM32は全般的に、こういった傾向がある。

設計の方向性なんだろうけど、新しい品種が出ると、ペリフェラルは今までと一見同じように見えても、地味~~に改良されていることがある。

まあ、おかげで助かることも多いけど、古い世代のチップに戻ろうとしてハマったりもする。

------

割り込みでも動くようになった....がちょっと変だ。

モーターから異音がする。

割り込みがうまくいってないようだ。
デジタルフィルタは最大に設定されているんだけれど、まだ足りてないのかな。

|

« EC20 テスト | トップページ | 一般公開 »

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック


この記事へのトラックバック一覧です: STM32F3のタイマ:

« EC20 テスト | トップページ | 一般公開 »