avr-libc  2.0.0
Standard C library for AVR-GCC

AVR Libc Home Page

AVRs

AVR Libc Development Pages

Main Page

User Manual

Library Reference

FAQ

Example Projects

Modules
Here is a list of all modules:
[detail level 12]
 <alloca.h>: Allocate space in the stack
 <assert.h>: Diagnostics
 <ctype.h>: Character OperationsThese functions perform various operations on characters
 <errno.h>: System Errors
 <inttypes.h>: Integer Type conversions
 <math.h>: Mathematics
 <setjmp.h>: Non-local gotoWhile the C language has the dreaded goto statement, it can only be used to jump to a label in the same (local) function. In order to jump directly to another (non-local) function, the C library provides the setjmp() and longjmp() functions. setjmp() and longjmp() are useful for dealing with errors and interrupts encountered in a low-level subroutine of a program
 <stdint.h>: Standard Integer Types
 <stdio.h>: Standard IO facilities
 <stdlib.h>: General utilities
 <string.h>: Strings
 <time.h>: Time
 <avr/boot.h>: Bootloader Support Utilities
 <avr/cpufunc.h>: Special AVR CPU functions
 <avr/eeprom.h>: EEPROM handling
 <avr/fuse.h>: Fuse Support
 <avr/interrupt.h>: Interrupts
 <avr/io.h>: AVR device-specific IO definitions
 <avr/lock.h>: Lockbit Support
 <avr/pgmspace.h>: Program Space Utilities
 <avr/power.h>: Power Reduction Management
 ▼<avr/sfr_defs.h>: Special function registersWhen working with microcontrollers, many tasks usually consist of controlling internal peripherals, or external peripherals that are connected to the device. The entire IO address space is made available as memory-mapped IO, i.e. it can be accessed using all the MCU instructions that are applicable to normal data memory. For most AVR devices, the IO register space is mapped into the data memory address space with an offset of 0x20 since the bottom of this space is reserved for direct access to the MCU registers. (Actual SRAM is available only behind the IO register area, starting at some specific address depending on the device.)
 Additional notes from <avr/sfr_defs.h>
 <avr/signature.h>: Signature Support
 <avr/sleep.h>: Power Management and Sleep Modes
 <avr/version.h>: avr-libc version macros
 <avr/wdt.h>: Watchdog timer handling
 <util/atomic.h> Atomically and Non-Atomically Executed Code Blocks
 <util/crc16.h>: CRC Computations
 <util/delay.h>: Convenience functions for busy-wait delay loops
 <util/delay_basic.h>: Basic busy-wait delay loops
 <util/parity.h>: Parity bit generation
 <util/setbaud.h>: Helper macros for baud rate calculations
 <util/twi.h>: TWI bit mask definitions
 <compat/deprecated.h>: Deprecated itemsThis header file contains several items that used to be available in previous versions of this library, but have eventually been deprecated over time
 <compat/ina90.h>: Compatibility with IAR EWB 3.x
 ▼Demo projectsVarious small demo projects are provided to illustrate several aspects of using the opensource utilities for the AVR controller series. It should be kept in mind that these demos serve mainly educational purposes, and are normally not directly suitable for use in any production environment. Usually, they have been kept as simple as sufficient to demonstrate one particular feature
 Combining C and assembly source files
 A simple project
 A more sophisticated project
 Using the standard IO facilities
 Example using the two-wire interface (TWI)