#include <stdio.h>
#include <stdint.h>
#define TAB_TIMER_FREQUENCY ((int) 500e6)
#define TIMEOUT_STOPPED_IN_TAB_TIMER_CLOCKS (TAB_TIMER_FREQUENCY / 2) /* 1/2 second to detect stop */
int main(void) {
// your code goes here
int stoppedFlag = 6;
uint32_t period = 187400000;
if (stoppedFlag && TIMEOUT_STOPPED_IN_TAB_TIMER_CLOCKS * 3 / 4 > period)
{
stoppedFlag--; /* We may be turning again */
}
printf("Stopped Flag=%d", stoppedFlag
); printf("\nTIMEOUT time=%u", TIMEOUT_STOPPED_IN_TAB_TIMER_CLOCKS
* 3 / 4); printf("\bTIMEOUT time full=%u", TIMEOUT_STOPPED_IN_TAB_TIMER_CLOCKS
); return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRpbnQuaD4KCiNkZWZpbmUgVEFCX1RJTUVSX0ZSRVFVRU5DWSAoKGludCkgNTAwZTYpCiNkZWZpbmUgVElNRU9VVF9TVE9QUEVEX0lOX1RBQl9USU1FUl9DTE9DS1MgKFRBQl9USU1FUl9GUkVRVUVOQ1kgLyAyKSAvKiAxLzIgc2Vjb25kIHRvIGRldGVjdCBzdG9wICovCgppbnQgbWFpbih2b2lkKSB7CgkvLyB5b3VyIGNvZGUgZ29lcyBoZXJlCglpbnQgc3RvcHBlZEZsYWcgPSA2OwoJdWludDMyX3QgcGVyaW9kID0gMTg3NDAwMDAwOwogICAgaWYgKHN0b3BwZWRGbGFnICYmIFRJTUVPVVRfU1RPUFBFRF9JTl9UQUJfVElNRVJfQ0xPQ0tTICogMyAvIDQgPiBwZXJpb2QpCiAgICB7CiAgICAgICAgc3RvcHBlZEZsYWctLTsgLyogV2UgbWF5IGJlIHR1cm5pbmcgYWdhaW4gKi8KICAgIH0KICAgIHByaW50ZigiU3RvcHBlZCBGbGFnPSVkIiwgc3RvcHBlZEZsYWcpOwogICAgcHJpbnRmKCJcblRJTUVPVVQgdGltZT0ldSIsIFRJTUVPVVRfU1RPUFBFRF9JTl9UQUJfVElNRVJfQ0xPQ0tTICogMyAvIDQpOwogICAgcHJpbnRmKCJcYlRJTUVPVVQgdGltZSBmdWxsPSV1IiwgVElNRU9VVF9TVE9QUEVEX0lOX1RBQl9USU1FUl9DTE9DS1MpOwoJcmV0dXJuIDA7Cn0K