パルス幅入力(1)

超音波距離センサを使ってみたいと思い、パルス幅入力を 試しました。使ったセンサはこれ:

akizukidenshi.com

超音波を出して反射して戻ってくるまでの間センサからHighを 出力します。このセンサ出力がHighになっている時間を 測定すると、音速を使って距離を計算できます。

最近はやりのToFセンサは光を使うので反射して帰ってくるまでの 時間が短すぎてマイコンで測るのは難しいのですが、超音波なら 問題ないはずです。

先人の知恵を検索したところ、次のようなサイトが関係しそうな 気がします。いや、他にも参考になるサイトがあったのですが URLがわからなくなってしまいました。

letanphuc.net

カウンタを直接クリアできる、という点が特に目を引きました。

github.com

このセンサを動かしてみるとわかるのですが、距離の計測を失敗する ときがあって、その場合はキャプチャできなくてタイマが オーバフローします。そういう時の処理のか参考になるかも。

www.programering.com

CubeMXではありませんが、これもupdateイベントの参考になりそう です。

というような情報を参考にプログラムを作ってみると、 動作が正しいような正しくないような、微妙な感じに なってしまいました。 引き続き取り組みます。