From 12b6ff672cec8adc70c3514d287e76cd76a16287 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niccol=C3=B2=20Betto?= <niccolo.betto@skywarder.eu> Date: Fri, 1 Dec 2023 17:16:00 +0100 Subject: [PATCH] [EventBroker] Update to Miosix 2.7 API --- src/shared/events/EventBroker.cpp | 13 +++++-------- src/shared/events/EventBroker.h | 1 - 2 files changed, 5 insertions(+), 9 deletions(-) diff --git a/src/shared/events/EventBroker.cpp b/src/shared/events/EventBroker.cpp index 96fe93c76..fee912fa9 100644 --- a/src/shared/events/EventBroker.cpp +++ b/src/shared/events/EventBroker.cpp @@ -66,11 +66,8 @@ uint16_t EventBroker::postDelayed(const Event& ev, uint8_t topic, Lock<FastMutex> lock(mtxDelayedEvents); - // Delay in system ticks - long long delayTicks = - static_cast<long long>(delayMs * miosix::TICK_FREQ / 1000); - - DelayedEvent dev{eventCounter++, ev, topic, getTick() + delayTicks}; + DelayedEvent dev{eventCounter++, ev, topic, + miosix::getTime() + delayMs * Constants::NS_IN_MS}; bool added = false; // Add the new event in the list, ordered by deadline (first = nearest @@ -141,7 +138,7 @@ void EventBroker::run() while (!shouldStop()) { while (delayedEvents.size() > 0 && - delayedEvents.front().deadline <= getTick()) + delayedEvents.front().deadline <= miosix::getTime()) { // Pop the first element DelayedEvent dev = delayedEvents.front(); @@ -157,7 +154,7 @@ void EventBroker::run() // When to wakeup for the next cycle long long sleepUntil = - getTick() + EVENT_BROKER_MIN_DELAY * miosix::TICK_FREQ / 1000; + miosix::getTime() + EVENT_BROKER_MIN_DELAY * Constants::NS_IN_MS; if (delayedEvents.size() > 0) { @@ -173,7 +170,7 @@ void EventBroker::run() Unlock<FastMutex> unlock(lock); StackLogger::getInstance().updateStack(THID_EVT_BROKER); - Thread::sleepUntil(sleepUntil); + Thread::nanoSleepUntil(sleepUntil); } } } diff --git a/src/shared/events/EventBroker.h b/src/shared/events/EventBroker.h index 7437d6230..e9e51f1a0 100644 --- a/src/shared/events/EventBroker.h +++ b/src/shared/events/EventBroker.h @@ -39,7 +39,6 @@ using std::map; using std::vector; using miosix::FastMutex; -using miosix::getTick; using miosix::Lock; using miosix::Thread; using miosix::Unlock; -- GitLab