Keisuke Sehara
/
STM32_Whisking
fast-feedback virtual target task code on STM Nucleo
duration.cpp
- Committer:
- gwappa
- Date:
- 2018-06-21
- Revision:
- 11:897ecd5413e0
File content as of revision 11:897ecd5413e0:
#include "duration.h" Duration::Duration(PinName pin, const uint64_t& duration_us): out_(pin, 0), dur_(duration_us), stat_(Rest) { setDuration(duration_us); } void Duration::setDuration(const uint64_t& value_us) { dur_ = value_us; } void Duration::start() { stat_ = Active; out_.write(1); timer_.attach_us(callback(this, &Duration::stop), dur_); } void Duration::stop() { timer_.detach(); out_.write(0); stat_ = Rest; } Duration::Status Duration::getStatus() { return stat_; } void Duration::wait() { while(stat_ != Rest); }