diff options
| author | Bernard Xiong <[email protected]> | 2019-05-20 20:33:07 +0800 |
|---|---|---|
| committer | GitHub <[email protected]> | 2019-05-20 20:33:07 +0800 |
| commit | b2ae7d72f923e1638f72d8eba5c2131389b741b0 (patch) | |
| tree | ab526e2e216f5f656b9c6a53221382d07c7bac2e /src/clock.c | |
| parent | d778c9df25cbbd8e202a0133453e4c8b8e179eff (diff) | |
| parent | 35eff9a85dd1e922f98d36deed84bdfb3c8319f7 (diff) | |
Merge pull request #2703 from armink/lts-v3.1.x
Lts v3.1.x
Diffstat (limited to 'src/clock.c')
| -rw-r--r-- | src/clock.c | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/src/clock.c b/src/clock.c index 36ff398376..e969a19b5e 100644 --- a/src/clock.c +++ b/src/clock.c @@ -98,15 +98,20 @@ void rt_tick_increase(void) * * @return the calculated tick */ -int rt_tick_from_millisecond(rt_int32_t ms) +rt_tick_t rt_tick_from_millisecond(rt_int32_t ms) { - int tick; + rt_tick_t tick; if (ms < 0) - tick = RT_WAITING_FOREVER; + { + tick = (rt_tick_t)RT_WAITING_FOREVER; + } else - tick = (RT_TICK_PER_SECOND * ms + 999) / 1000; - + { + tick = RT_TICK_PER_SECOND * (ms / 1000); + tick += (RT_TICK_PER_SECOND * (ms % 1000) + 999) / 1000; + } + /* return the calculated tick */ return tick; } |
