From b8e14afe490abb4816e3d3f09b0bbdaa53963c19 Mon Sep 17 00:00:00 2001 From: Nicolas Schodet Date: Sun, 2 Mar 2008 22:30:34 +0100 Subject: * digital/avr/modules/utils: - added utils_nop. --- digital/avr/modules/utils/utils.avr.h | 7 +++++++ digital/avr/modules/utils/utils.host.h | 7 +++++++ 2 files changed, 14 insertions(+) (limited to 'digital/avr') diff --git a/digital/avr/modules/utils/utils.avr.h b/digital/avr/modules/utils/utils.avr.h index bdba7f6f..dc794ac8 100644 --- a/digital/avr/modules/utils/utils.avr.h +++ b/digital/avr/modules/utils/utils.avr.h @@ -43,6 +43,13 @@ | (v3) << 3 | (v2) << 2 | (v1) << 1 | (v0) << 0 \ : -1024 * 1024) +/** No-operation, one instruction delay. */ +extern inline void +utils_nop (void) +{ + asm volatile ("nop" : :); +} + /** Delay in seconds. Do not call this function with a variable parameter. * If you want a variable delay, prefer looping over a fixed delay. * Maximum is about 4 seconds at 20MHz. */ diff --git a/digital/avr/modules/utils/utils.host.h b/digital/avr/modules/utils/utils.host.h index 2e73dc4b..2caae8fa 100644 --- a/digital/avr/modules/utils/utils.host.h +++ b/digital/avr/modules/utils/utils.host.h @@ -25,6 +25,13 @@ * * }}} */ +/** No-operation, one instruction delay. */ +extern inline void +utils_nop (void) +{ + /* Nothing. */ +} + /** Delay in seconds. */ void utils_delay (double s); -- cgit v1.2.3