67 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			67 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| 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. |