![](/media/cache/img/default_profile.jpg.50x50_q85.jpg)
This is some awesome robot code
Dependencies: mbed-rtos mbed QEI
Fork of ICRSEurobot13 by
System/system.cpp
- Committer:
- madcowswe
- Date:
- 2013-04-10
- Revision:
- 28:4e20b44251c6
- Child:
- 42:6504d85d85b4
File content as of revision 28:4e20b44251c6:
#include "rtos.h" #include "mbed.h" #include "Printing.h" Timer SystemTime; Ticker CPUIdleMeasureTicker; volatile unsigned int nopctr = 0; const float s_per_nopcycle = 1.0f/24000000.0f; float CpuUsage = 0; void nopwait(int ms){ while(ms--) for (volatile int i = 0; i < 24000; i++); } void PostAndResetCPUIdle(){ CpuUsage = 1.0f - (s_per_nopcycle * nopctr); Printing::updateval(10,CpuUsage); nopctr = 0; } void measureCPUidle (void const*){ osThreadSetPriority (osThreadGetId(), osPriorityIdle); Printing::registerID(10, 1); CPUIdleMeasureTicker.attach(PostAndResetCPUIdle, 1); while(1) nopctr++; }