test

Dependencies:   mbed TB6612FNG HMC6352

Committer:
ushiroji
Date:
Wed Oct 13 10:49:38 2021 +0000
Revision:
0:4c10d798d1bb
test

Who changed what in which revision?

UserRevisionLine numberNew contents of line
ushiroji 0:4c10d798d1bb 1 #ifndef __US015_H
ushiroji 0:4c10d798d1bb 2 #define __US015_H
ushiroji 0:4c10d798d1bb 3
ushiroji 0:4c10d798d1bb 4 #include "mbed.h"
ushiroji 0:4c10d798d1bb 5
ushiroji 0:4c10d798d1bb 6
ushiroji 0:4c10d798d1bb 7 //====================================
ushiroji 0:4c10d798d1bb 8 // define定義
ushiroji 0:4c10d798d1bb 9 //====================================
ushiroji 0:4c10d798d1bb 10 #define US015_TRIGER_ON 1 // トリガーON
ushiroji 0:4c10d798d1bb 11 #define US015_TRIGER_OFF 0 // トリガーOFF
ushiroji 0:4c10d798d1bb 12 #define US015_TRIGER_PALUSE_WIDTH 10 // トリガーの幅
ushiroji 0:4c10d798d1bb 13 #define US015_PERIODIC_TRIGER 100000 // 音響測距トリガー
ushiroji 0:4c10d798d1bb 14 #define US015_SOUND_OF_SPEED 0.340 // 音速[mm/us]
ushiroji 0:4c10d798d1bb 15
ushiroji 0:4c10d798d1bb 16
ushiroji 0:4c10d798d1bb 17 //====================================
ushiroji 0:4c10d798d1bb 18 // 音響測距センサ(US015)の制御クラス
ushiroji 0:4c10d798d1bb 19 //====================================
ushiroji 0:4c10d798d1bb 20 class US015
ushiroji 0:4c10d798d1bb 21 {
ushiroji 0:4c10d798d1bb 22 public:
ushiroji 0:4c10d798d1bb 23 US015(PinName trg, PinName ech);
ushiroji 0:4c10d798d1bb 24 US015(PinName trg, PinName ech, float tkTime);
ushiroji 0:4c10d798d1bb 25 float GetDistance();
ushiroji 0:4c10d798d1bb 26 void TrigerOut(); // トリガー出力
ushiroji 0:4c10d798d1bb 27
ushiroji 0:4c10d798d1bb 28 private:
ushiroji 0:4c10d798d1bb 29 DigitalOut _trigerOut; // U015トリガー出力
ushiroji 0:4c10d798d1bb 30 InterruptIn _interruptEcho; // U015エコー入力
ushiroji 0:4c10d798d1bb 31 Timer timer; // 時間計測用のタイマ
ushiroji 0:4c10d798d1bb 32 Ticker tk; // 周期処理用のチッカー
ushiroji 0:4c10d798d1bb 33 float tmBegin; // エコーの立ち上がり時間
ushiroji 0:4c10d798d1bb 34 float tmEnd; // エコーの立ち下がり時間
ushiroji 0:4c10d798d1bb 35 float distance; // 距離測定
ushiroji 0:4c10d798d1bb 36 void EchoFall(); // エコーの立ち下がり処理
ushiroji 0:4c10d798d1bb 37 void EchoRise(); // エコーの立ち上がり処理
ushiroji 0:4c10d798d1bb 38 };
ushiroji 0:4c10d798d1bb 39
ushiroji 0:4c10d798d1bb 40 #endif