テスト

Dependents:   Avoid CanSat-C LSI_Compass loop_test ... more

Committer:
firlight1034
Date:
Sat Oct 14 09:24:12 2017 +0000
Revision:
1:ac45a449d413
Parent:
0:fec7088c8dcb
?????U015

Who changed what in which revision?

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