Yann Sierro - RĂ©mi Heredero AdvEmbSoft/HESSO-Master/2024 # BikeComputer This is a project done in the course of AdvEmbSoft during the master's degree. It contains a program for spinning bikes. # Configuration ## Libraries Add disco libraries : ```terminal mbed add https://github.com/SergeAyer/DISCO_H747I.git ``` Add sensor libraries : ```terminal mbed add https://github.com/SergeAyer/advdembsof_library.git ``` Test sensor libraries : ```terminal mbed test -m DISCO_H747I -t GCC_ARM -n advdembsof_library-tests-sensors-hdc1000 --compile --run ``` ## Run static scheduling On `.mbedignore` put at the end of the file ``` static_scheduling_with_event/* ``` On main.cpp include `"static_scheduling/bike_system.hpp"` and use : ```cpp static_scheduling::BikeSystem bikeSystem; bikeSystem.start(); ``` ## Run static scheduling with event queue On `.mbedignore` put at the end of the file : ``` static_scheduling_with_event/* ``` On main.cpp include `"static_scheduling/bike_system.hpp"` and use : ```cpp static_scheduling::BikeSystem bikeSystem; bikeSystem.startWithEventQueue(); ``` ## Run static scheduling with event scheduling On `.mbedignore` put at the end of the file ``` static_scheduling/* ``` On main.cpp include `"static_scheduling_with_event/bike_system.hpp"` and use : ```cpp static_scheduling_with_event::BikeSystem bikeSystem; bikeSystem.start(); ``` # Some questions ## If you print CPU statistics at the end of every major cycle (in the super-loop), what CPU usage do you observe? How can you explain the observed CPU uptime? We observe a 100% usage because on each CPU cycle it compare if time is done. ## If you run the program after the change from busy wait to sleep calls, what CPU usage do you observe? How can you explain the observed CPU uptime? We can observe only a usage of 75% because the CPU is more on Idle with Thread sleep.