a
us015.h@0:fec7088c8dcb, 2017-09-09 (annotated)
- Committer:
- firlight1034
- Date:
- Sat Sep 09 00:47:13 2017 +0000
- Revision:
- 0:fec7088c8dcb
- Child:
- 1:ac45a449d413
?????
Who changed what in which revision?
User | Revision | Line number | New 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 | 0:fec7088c8dcb | 6 | //==================================== |
firlight1034 | 0:fec7088c8dcb | 7 | // define定義 |
firlight1034 | 0:fec7088c8dcb | 8 | //==================================== |
firlight1034 | 0:fec7088c8dcb | 9 | #define US015_TRIGER_ON 1 // トリガーON |
firlight1034 | 0:fec7088c8dcb | 10 | #define US015_TRIGER_OFF 0 // トリガーOFF |
firlight1034 | 0:fec7088c8dcb | 11 | #define US015_TRIGER_PALUSE_WIDTH 10 // トリガーの幅 |
firlight1034 | 0:fec7088c8dcb | 12 | #define US015_PERIODIC_TRIGER 100000 // 音響測距トリガー |
firlight1034 | 0:fec7088c8dcb | 13 | #define SOUND_OF_SPEED 0.340 // 音速[mm/us] |
firlight1034 | 0:fec7088c8dcb | 14 | |
firlight1034 | 0:fec7088c8dcb | 15 | |
firlight1034 | 0:fec7088c8dcb | 16 | //==================================== |
firlight1034 | 0:fec7088c8dcb | 17 | // 音響測距センサ(US015)の制御クラス |
firlight1034 | 0:fec7088c8dcb | 18 | //==================================== |
firlight1034 | 0:fec7088c8dcb | 19 | class US015 |
firlight1034 | 0:fec7088c8dcb | 20 | { |
firlight1034 | 0:fec7088c8dcb | 21 | public: |
firlight1034 | 0:fec7088c8dcb | 22 | US015(PinName trg, PinName ech); |
firlight1034 | 0:fec7088c8dcb | 23 | US015(PinName trg, PinName ech, float tkTime); |
firlight1034 | 0:fec7088c8dcb | 24 | float GetDistance(); |
firlight1034 | 0:fec7088c8dcb | 25 | |
firlight1034 | 0:fec7088c8dcb | 26 | private: |
firlight1034 | 0:fec7088c8dcb | 27 | DigitalOut _trigerOut; // U015トリガー出力 |
firlight1034 | 0:fec7088c8dcb | 28 | InterruptIn _interruptEcho; // U015エコー入力 |
firlight1034 | 0:fec7088c8dcb | 29 | Timer timer; // 時間計測用のタイマ |
firlight1034 | 0:fec7088c8dcb | 30 | Ticker tk; // 周期処理用のチッカー |
firlight1034 | 0:fec7088c8dcb | 31 | float tmBegin; // エコーの立ち上がり時間 |
firlight1034 | 0:fec7088c8dcb | 32 | float tmEnd; // エコーの立ち下がり時間 |
firlight1034 | 0:fec7088c8dcb | 33 | float distance; // 距離測定 |
firlight1034 | 0:fec7088c8dcb | 34 | void EchoFall(); // エコーの立ち下がり処理 |
firlight1034 | 0:fec7088c8dcb | 35 | void EchoRise(); // エコーの立ち上がり処理 |
firlight1034 | 0:fec7088c8dcb | 36 | void TrigerOut(); // トリガー出力 |
firlight1034 | 0:fec7088c8dcb | 37 | }; |
firlight1034 | 0:fec7088c8dcb | 38 | |
firlight1034 | 0:fec7088c8dcb | 39 | #endif |