From b7d489e69d8dcd2f91353c035c51ef0f165a530a Mon Sep 17 00:00:00 2001 From: Claudio Micheli Date: Thu, 8 Aug 2019 17:37:39 +0200 Subject: [PATCH] uavcan esc: use time literals for timeout checks. Signed-off-by: Claudio Micheli --- src/drivers/uavcan/actuators/esc.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/drivers/uavcan/actuators/esc.cpp b/src/drivers/uavcan/actuators/esc.cpp index 6a4146cc9743..81ca4cba1005 100644 --- a/src/drivers/uavcan/actuators/esc.cpp +++ b/src/drivers/uavcan/actuators/esc.cpp @@ -43,6 +43,8 @@ #define MOTOR_BIT(x) (1<<(x)) +using namespace time_literals; + UavcanEscController::UavcanEscController(uavcan::INode &node) : _node(node), _uavcan_pub_raw_cmd(node), @@ -234,11 +236,11 @@ void UavcanEscController::orb_pub_timer_cb(const uavcan::TimerEvent &) uint8_t UavcanEscController::check_escs_status() { int esc_status_flags = 0; - + hrt_abstime now = hrt_absolute_time(); for (int index = 0; index < esc_status_s::CONNECTED_ESC_MAX; index++) { - if (_esc_status.esc[index].timestamp > 0 && hrt_elapsed_time(&_esc_status.esc[index].timestamp) < 800000.0f) { + if (_esc_status.esc[index].timestamp > 0 && now - _esc_status.esc[index].timestamp < 800_ms) { esc_status_flags |= (1 << index); }