avr_cpufunc - <avr/cpufunc.h>: Special AVR CPU functions
Contents
Detailed Description
#include <avr/cpufunc.h>
This header file contains macros that access special functions of the AVR CPU which do not fit into any
of the other header files.
Function Documentation
voidccp_write_io(volatileuint8_t*__ioaddr,uint8_t__value)
Write __value to IO Register Protected (CCP) IO register at __ioaddr. . See also _PROTECTED_WRITE().voidccp_write_spm(volatileuint8_t*__ioaddr,uint8_t__value)
Write __value to SPM Instruction Protected (CCP) IO register at __ioaddr. See also
_PROTECTED_WRITE_SPM().Macro Definition Documentation
#define_MemoryBarrier()
Implement a read/write memorybarrier. A memory barrier instructs the compiler to not cache any memory
data in registers beyond the barrier. This can sometimes be more effective than blocking certain
optimizations by declaring some object with a volatile qualifier.
See Problemswithreorderingcode for things to be taken into account with respect to compiler
optimizations.
#define_NOP()
Execute a nooperation (NOP) CPU instruction. This should not be used to implement delays, better use the
functions from <util/delay_basic.h> or <util/delay.h> for this. For debugging purposes, a NOP can be
useful to have an instruction that is guaranteed to be not optimized away by the compiler, so it can
always become a breakpoint in the debugger.
Name
avr_cpufunc - <avr/cpufunc.h>: Special AVR CPU functions
Synopsis
Macros
#define _NOP()
#define _MemoryBarrier()
Functions
void ccp_write_io (volatile uint8_t *__ioaddr, uint8_t __value)
void ccp_write_spm (volatile uint8_t *__ioaddr, uint8_t __value)
