The header file <inavr.h> defines a number of intrinsic functions of general use for the AVR processor. This file is written to be compatible, and in some cases an enhancement of, the corresponding file in version 3 of IAR's Embedded Workbench for AVR (EWAVR) product.
| Status register manipulation functions | |
| __bic_SR_register | Clear bits in status register |
| __bis_SR_register | Set bits in status register |
| __disable_interrupt | Ddisable interrupts |
| __enable_interrupt | Enable interrupts |
| __save_interrupt | Save interrupt enable flag state |
| __restore_interrupt | Restore interrupt enable flag state |
| Data manipulation | |
| __swap_nibbles | Swap nibbles within a byte |
| __swap_bytes | Swap bytes within a word |
| Miscellaneous functions | |
| __breakpoint | Insert a BREAK instruction into code |
| __delay_cycles | Delay processor for a number of cycles |
| __no_operation | Insert a NOP instruction into code |
| __insert_opcode | Insert an instruction into code |
| __sleep | Insert a SLEEP instruction into code |
| __watchdog_reset | Insert a WDR instruction into code |