This library is derived library of DigitalOut. Cumulative counter that detected the Hi edge and I have the operation cumulative time function .
LogDigitalOut.cpp@3:e03cb5ec8912, 2015-02-04 (annotated)
- Committer:
- naseba_atsushi
- Date:
- Wed Feb 04 00:15:01 2015 +0000
- Revision:
- 3:e03cb5ec8912
- Parent:
- 2:3251929c6549
test Doxygen;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
naseba_atsushi | 0:b63c87da380a | 1 | #include "LogDigitalOut.h" |
naseba_atsushi | 0:b63c87da380a | 2 | #include "mbed.h" |
naseba_atsushi | 0:b63c87da380a | 3 | |
naseba_atsushi | 2:3251929c6549 | 4 | |
naseba_atsushi | 0:b63c87da380a | 5 | LogDigitalOut::LogDigitalOut(PinName pin) : _pin(pin) { |
naseba_atsushi | 0:b63c87da380a | 6 | _pin = 0; |
naseba_atsushi | 0:b63c87da380a | 7 | } |
naseba_atsushi | 2:3251929c6549 | 8 | /************************************************************* |
naseba_atsushi | 2:3251929c6549 | 9 | * @fn void LogDigitalOut::CountUp() |
naseba_atsushi | 2:3251929c6549 | 10 | * @breaf 動作回数カウントアップ |
naseba_atsushi | 2:3251929c6549 | 11 | * @param None |
naseba_atsushi | 2:3251929c6549 | 12 | * @return None |
naseba_atsushi | 2:3251929c6549 | 13 | * @sa None |
naseba_atsushi | 2:3251929c6549 | 14 | * @detail off->onを検出し、カウントアップする |
naseba_atsushi | 2:3251929c6549 | 15 | ************************************************************/ |
naseba_atsushi | 0:b63c87da380a | 16 | void LogDigitalOut::CountUp() { |
naseba_atsushi | 0:b63c87da380a | 17 | if (buffer==0) { |
naseba_atsushi | 0:b63c87da380a | 18 | if (_pin) { |
naseba_atsushi | 0:b63c87da380a | 19 | count ++; |
naseba_atsushi | 0:b63c87da380a | 20 | } |
naseba_atsushi | 0:b63c87da380a | 21 | } |
naseba_atsushi | 0:b63c87da380a | 22 | buffer = _pin; |
naseba_atsushi | 0:b63c87da380a | 23 | } |
naseba_atsushi | 3:e03cb5ec8912 | 24 | /** My HelloWorld class. |
naseba_atsushi | 3:e03cb5ec8912 | 25 | * Used for printing "Hello World" on USB serial. |
naseba_atsushi | 3:e03cb5ec8912 | 26 | */ |
naseba_atsushi | 0:b63c87da380a | 27 | void LogDigitalOut::RatiosUp() { |
naseba_atsushi | 0:b63c87da380a | 28 | if (_pin) { |
naseba_atsushi | 0:b63c87da380a | 29 | ratios ++; |
naseba_atsushi | 0:b63c87da380a | 30 | } |
naseba_atsushi | 0:b63c87da380a | 31 | } |
naseba_atsushi | 1:23b306c0a0b2 | 32 | void LogDigitalOut::ResetAccumulate() { |
naseba_atsushi | 1:23b306c0a0b2 | 33 | count = 0; |
naseba_atsushi | 1:23b306c0a0b2 | 34 | ratios = 0; |
naseba_atsushi | 1:23b306c0a0b2 | 35 | } |
naseba_atsushi | 0:b63c87da380a | 36 | int LogDigitalOut::GetCount() { |
naseba_atsushi | 0:b63c87da380a | 37 | return count; |
naseba_atsushi | 0:b63c87da380a | 38 | } |
naseba_atsushi | 0:b63c87da380a | 39 | int LogDigitalOut::GetRatios() { |
naseba_atsushi | 0:b63c87da380a | 40 | return ratios; |
naseba_atsushi | 0:b63c87da380a | 41 | } |
naseba_atsushi | 0:b63c87da380a | 42 | int LogDigitalOut::Read() { |
naseba_atsushi | 0:b63c87da380a | 43 | return _pin; |
naseba_atsushi | 0:b63c87da380a | 44 | } |
naseba_atsushi | 0:b63c87da380a | 45 | void LogDigitalOut::Write(int volume) { |
naseba_atsushi | 0:b63c87da380a | 46 | _pin = volume; |
naseba_atsushi | 0:b63c87da380a | 47 | } |