summaryrefslogtreecommitdiff
path: root/n/avr/modules/utils/utils.h
diff options
context:
space:
mode:
Diffstat (limited to 'n/avr/modules/utils/utils.h')
-rw-r--r--n/avr/modules/utils/utils.h36
1 files changed, 36 insertions, 0 deletions
diff --git a/n/avr/modules/utils/utils.h b/n/avr/modules/utils/utils.h
index 71731b3..535036a 100644
--- a/n/avr/modules/utils/utils.h
+++ b/n/avr/modules/utils/utils.h
@@ -31,4 +31,40 @@
# include "utils.host.h"
#endif
+/** Shortcut for delay (ns * 1e-9). */
+extern inline void
+utils_delay_ns (double ns) __attribute__ ((always_inline));
+extern inline void
+utils_delay_ns (double ns)
+{
+ utils_delay (ns * 1e-9);
+}
+
+/** Shortcut for delay (us * 1e-6). */
+extern inline void
+utils_delay_us (double us) __attribute__ ((always_inline));
+extern inline void
+utils_delay_us (double us)
+{
+ utils_delay (us * 1e-6);
+}
+
+/** Shortcut for delay (ms * 1e-3). */
+extern inline void
+utils_delay_ms (double ms) __attribute__ ((always_inline));
+extern inline void
+utils_delay_ms (double ms)
+{
+ utils_delay (ms * 1e-3);
+}
+
+/** Bound a value between MIN and MAX. */
+#define UTILS_BOUND(v, min, max) \
+ do { \
+ if (v < min) \
+ v = min; \
+ else if (v > max) \
+ v = max; \
+ } while (0)
+
#endif /* utils_h */