000000 ランダム
 HOME | DIARY | PROFILE 【お気に入りブログ登録】 【ログイン】

CPUを作ろう ~計算機教材とマイコンと電子工作~

H8で超音波センサの実験

MX001 LV-MaxSonarをメカロボショップさんから購入しました.

DSC01350.JPG

動作チェック.

DSC01368.JPG

動画はyoutubeにアップ,超音波センサのテスト.

電源5VとGNDをつなぐだけで,アナログ出力で距離がわかります.
ただし,静止画を見るとわかるように,アナログ出力は不安定,時々パルス状に
レベルが変化したり,大きな距離変化を加えるとアナログ信号が乱れるようです.
2.54cm単位の出力なので長距離レンジでの用途には使えそうです.

英語マニュアルをよく読んだら,パルス幅出力もあることがわかりました.
早速テストしてみると,安定してていい感じです.分解能もちょっといいかも・・・?

DSC01391.JPG

そこで,H8で読み取りプログラムを作りました.
アナログよりパルス幅出力(PW)の方が安定してます.
H8のデジタル入力からパルス幅をカウントしてLCDに表示させてみました.
こんな感じ↓

DSC02565.JPG

プログラムは,前に書いたラジコンの送信機の信号自動切換えのタイマVの割込みのなかに
もう一つソフトウェアカウンタを2行追加し,LCD表示の関数を組み込んだけ.
パルス幅が147μS/inchらしいので,100μsくらいでカウンタを回すと丁度いい感じです.

if (IO.PDR8.BIT.B6==1) cntU++; // P86 にPW信号入力
else if (cntU!=0){ disO=cntU; cntU=0;} // cntUでカウンタ,disOに保持



Copyright (c) 1997-2018 Rakuten, Inc. All Rights Reserved.