You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
KED/ked/oldDevFiles/ideas/delay_structure.cpp

44 lines
586 B

// check it out on Compiler Explorer : https://godbolt.org/
struct Delay
{
virtual void wait() = 0;
};
struct FreeRTOS_Delay : Delay
{
void wait() override
{
_wait();
}
private:
static void _wait()
{
for(volatile int i = 0; i < 10; i++);
}
};
struct STM_Hal_Delay : Delay
{
void wait() override
{
_wait();
}
private:
static void _wait()
{
// systick stuff here
for(volatile int i = 0; i < 1000; i++);
}
};
int main()
{
FreeRTOS_Delay dly;
dly.wait();
return 0;
}