summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorBernard Xiong <[email protected]>2020-12-30 17:20:28 +0800
committerGitHub <[email protected]>2020-12-30 17:20:28 +0800
commit4529e9a741f7a1b0b4c822087d06dae43b22e197 (patch)
treeb70207830aa1ba7f0a57f21fc85bc3699cf23f9f /src
parent32cf8678379539e53f88a2b3d462e5449d7b77e6 (diff)
parenta1f4d93fc57364a7b161c6f57a35a8f05df9a401 (diff)
Merge pull request #4198 from mysterywolf/gettick
[bug] add function rt_tick_get_millisecond() and fix bug #4012
Diffstat (limited to 'src')
-rw-r--r--src/clock.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/clock.c b/src/clock.c
index 9fd276cf6f..66923e5c00 100644
--- a/src/clock.c
+++ b/src/clock.c
@@ -13,6 +13,7 @@
* 2010-07-13 Bernard fix rt_tick_from_millisecond issue found by kuronca
* 2011-06-26 Bernard add rt_tick_set function.
* 2018-11-22 Jesven add per cpu tick
+ * 2020-12-29 Meco Man add function rt_tick_get_millisecond()
*/
#include <rthw.h>
@@ -116,5 +117,21 @@ rt_tick_t rt_tick_from_millisecond(rt_int32_t ms)
}
RTM_EXPORT(rt_tick_from_millisecond);
+/**
+ * This function will provide the passed millisecond from boot.
+ *
+ * @return passed millisecond from boot
+ */
+RT_WEAK rt_tick_t rt_tick_get_millisecond(void)
+{
+#if 1000 % RT_TICK_PER_SECOND == 0u
+ return rt_tick_get() * (1000u / RT_TICK_PER_SECOND);
+#else
+ #warning "rt-thread cannot provide a correct 1ms-based tick any longer,\
+ please redefine this function in another file by using a high-precision hard-timer."
+ return 0;
+#endif
+}
+
/**@}*/