Microchip® Advanced Software Framework

•All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Busy-Wait Delay Routines

This module provides simple loop-based delay routines for those applications requiring a brief wait during execution.

Common API for UC3, XMEGA, and AVR MEGA.

Macros

#define delay_init(fcpu_hz)
 Initialize the delay driver. More...
 
#define delay_ms(delay)   ((delay) ? cpu_delay_ms(delay, F_CPU) : cpu_delay_us(1, F_CPU))
 Delay in milliseconds. More...
 
#define delay_s(delay)   ((delay) ? cpu_delay_ms(1000 * delay, F_CPU) : cpu_delay_us(1, F_CPU))
 Delay in seconds. More...
 
#define delay_us(delay)   ((delay) ? cpu_delay_us(delay, F_CPU) : cpu_delay_us(1, F_CPU))
 Delay in microseconds. More...
 

#define delay_init (   fcpu_hz)

Initialize the delay driver.

Parameters
fcpu_hzCPU frequency in Hz
Deprecated:
This function is provided for compatibility with ASF applications that may not have been updated to configure the system clock via the common clock service; e.g. sysclk_init() and a configuration header file are used to configure clocks.

The functions in this module call sysclk_get_cpu_hz() function to obtain the system clock frequency.

Referenced by main().

#define delay_s (   delay)    ((delay) ? cpu_delay_ms(1000 * delay, F_CPU) : cpu_delay_us(1, F_CPU))

Delay in seconds.

Parameters
delayDelay in seconds