Atmel Corporation
Products > AVR32 32-bit MCU > Application Notes

AVR32 32-bit MCU -

right arrow AP7 Application Processors   right arrow General Purpose
right arrow Application Example and Algorithms   right arrow Getting Started
right arrow Design Considerations   right arrow OS and OS Drivers
right arrow Flash Programming   right arrow UC3 Flash Microcontrollers
 
AP7 Application Processors
PDF Software Description
AVR32100: Using the AVR32 USART (8 pages, revision A, updated 04/06)
The AVR32 microcontroller has independent USARTs. They can be set to operate in several different modes. This application note describes these modes and provides the drivers to communicate with the USART.
AVR32101: Configuring the AVR32 interrupt controller (8 pages, revision A, updated 04/06)
The flexible AVR32 interrupt controller can be customized to suit different system requirements. The interrupt controller manages interrupt prioritization in hardware, while the setup of these features is done in software.
AVR32102: Using the AVR32 SDRAM controller (11 pages, revision A, updated 05/06)
The AVR32 has a dedicated SDRAM (Synchronous DRAM) controller. This controller is highly flexible and capable of supporting a series of external SDRAMs. Timing values and parameters are calculated from the SDRAMs datasheet and programmed into the SDRAM controller.
AVR32105: Master and Slave SPI Driver (13 pages, revision A, updated 05/06)
A Serial Peripheral Interface (SPI) bus is a synchronous serial data link capable of full-duplex communication with external devices in master or slave mode.
AVR32107: Using TWI as a Master on the AVR32 (7 pages, revision A, updated 04/06)
This application notes describes how to use the AVR32 microcontroller as a master on a half-duplex Two-Wire Interface bus (Philips' I2C Compatible). Up to 127 TWI devices can be connected to each bus.
AVR32108: Peripheral Direct Memory Access Driver (8 pages, revision A, updated 05/06)
This application note includes an example of using the USART with the Peripheral DMA Controller (PDC) with and without interrupt control.
AVR32110: Using the AVR32 Timer/Counter (13 pages, revision A, updated 05/06)
The Timer/Counter Module in the AVR32 consists of 3 identical and independent channels. These channels can be programmed independently of each other to support frequency measurement, event counting, pulse generation, pulse width modulation, among other features.
AVR32111: Using the AVR32 PIO Controller (7 pages, revision A, updated 05/06)
The AVR32 PIO Controller is responsible for selecting functionality on the I/O pins. This I/O can either be controlled by the PIO controller itself or by a module that is connected to the appropriate PIO. Up to two modules can be connected to a PIO for any given port.
AVR32113: Configuration and Use of the Memory Management Unit (11 pages, revision A, updated 09/06)
The AVR32 memory management unit (MMU) provides a highly flexible and configurable memory management solution. The MMU is fully configurable by the user, which allows advanced use for operating systems or simpler use for native applications.
AVR32114: Using the AVR32 LCD Controller (18 pages, revision E, updated 7/08)
This application note explains how to connect the Atmel® AVR®32AP7000 LCD Controller to a TFT display. It includes display selection guidelines, describes the hardware and software configurations and shows examples how to configure the LCD Controller.
Top
Application Example and Algorithms
PDF Software Description
AVR32120: AVR32 ABDAC audio bitstream DAC driver example (8 pages, revision C, updated 3/08)
This application note describes how to use the ABDAC peripheral on AVR®32 devices. This DAC is suitable for generating audio playback. By using the generic clock interface, the ABDAC is capable of supporting a wide range of playback frequencies.
 
AVR32701: AVR32 AP7 USB Performance (5 pages, revision A, updated 2/08)
This application note documents the USB bulk transfer performance of the ATSTK®1000 and ATNGW100 boards running a 2.6.22-amtel.3 Linux® kernel. The tests are based on the Linux USB gadget driver framework.
 
AVR32705: AVR32 AP7 Networking Performance (5 pages, revision A, updated 2/08)
This application note documents the TCP/IP and UDP/IP performance of the ATSTK®1000 and ATNGW100 development boards running the 2.6.23-rc7 version of the Linux® kernel.
AVR32709: AVR32 UC3 Audio Decoder Over USB (29 pages, revision C, updated 7/09)
This application note will help the reader to use the AVR32® UC3 Audio Decoder over USB software. This software includes a software MP3 decoder, a file system, and a USB Host mass storage class support.
AVR32710: Space Vector Modulation using AVR32 UC3 Microcontroller (19 pages, revision B, updated 05/09)
This application note outlines a demonstration using a stand-alone application on an AVR32 target. It is a real-time system that computes Space Vector Modulation on a Brushless DC Motor. This application is designed to work with the EVK1100 evaluation kit.
 
AVR32717: Compatibility Note AT32UC3Ax Revision E to Revision H or later (13 pages, revision C, updated 8/08)
This document outlines the software operations to migrate software from an AT32UC3Ax revision E, also known as engineering sample (ES), to AT32UC3Ax revision H and later.
 
AVR32723: Sensor Field Oriented Control for Brushless DC motors with AT32UC3B0256 (26 pages, revision A, updated 6/09)
This application note delivers an implementation of Sensor Field Oriented Control algorithm for brushless DC motor on Atmel® AVR32 UC3B microcontrollers.
AVR32733: AVR32 UC3 Placing data and the heap in external SDRAM (16 pages, revision A, updated 4/09)
This application note provides a way to place the heap and the variables of a C application in external SDRAM. It first introduces the main concepts involved before proposing the steps to follow to implement a solution. A basic C application implementing the techniques described in this document is provided as a standalone zip package; its content is also presented. This document only applies to AVR32 UC3 products that have a SDRAMC module.
AVR32739: AVR32 UC3 Low power software design (13 pages, revision B, updated 05/08)
This application shall give a developer an overview of available features on the UC3A and UC3B devices that help to decrease power consumption. Most parts of the application note are also applicable for other AVR®32 devices.
 
AVR32747: Compatibility Note AT32UC3Bx Revision B to Revision F or later (12 pages, revision B, updated 8/08)
This document outlines the software operations to migrate software from an AT32UC3Bx revision B, also known as engineering sample (ES), to AT32UC3Bx revision F and later.
AVR32752: Using the AVR32 UC3 Static Memory Controller (12 pages, revision B, updated 1/09)
The purpose of this application note is to understand all features available in the SMC and to deliver guidelines to interface AVR32® UC3 microcontroller and external static memory devices.
AVR32753: AVR32 UC3 How to connect to an SSL-server (12 pages, revision B, updated 10/09)
This application note demonstrates the ability of the UC3 device to exchange messages with a server over TCP/IP connectivity through a secure socket layer connection.
AVR32758: AVR32 UC3 USB Host Mass Storage Bootloader (16 pages, revision B, updated 7/09)
This USB host mass storage class bootloader allows to perform In-System Programming of AVR®32 UC3 parts from a USB device implementing the Mass Storage class (USB Drive), without: - removing the part from the system - any external programming interface other than USB.
 
AVR32760: AVR32 UC3 USB DFU Bootloader Protocol (18 pages, revision A, updated 9/09)
This application note describes the USB DFU Protocol used in the AVR®32 UC3 USB bootloader. In a first part of the document, it gives an overview of the USB DFU class protocol and details the Atmel DFU protocol used by the bootloader in a second part of the document.
AVR32765: AVR32 DSPLib Reference Manual (138 pages, revision A, updated 7/09)
The AVR®32 DSP Library is a compilation of digital signal processing functions. All function availables in the DSP Library, from the AVR32 Software Framework. All the source code (C code and assembly optimized), software example and GCC and IARTM projects are released in the AVR32 UC3 Software Framework. The Atmel AVR32 DSPLib is a library which provides a useful set of digital signal processing functions. All the source code is available and fully compatible with GCC and IAR. This library provides optimized functions for the AT32UC family but also target-independent functions. This document is a listing of the functions currently implemented in the DSP Library and available in the AVR32 Software Framework.
 
AVR32769: How to Compile the standalone AVR32 Software Framework in AVR32 Studio V2 (11 pages, revision A, updated 5/09)
The purpose of this application note is to show how to compile any of the application and driver examples provided in the AVR®32 Software Framework using the AVR32 Studio® V2.
 
AVR32787: AVR32 UC3A3 High Speed USB Design Guidelines (6 pages, revision B, updated 4/09)
This document provides guidelines for integrating an AVR®32 AT32UC3A3x high speed USB device controller onto a 4-layer PCB. The material covered can be broken into two main categories: board design guidelines and layout examples.
 
AVR32788: AVR®32 How to use the SSC in I2S mode (12 pages, revision A, updated 6/09)
This application note describes how the I²S protocol is handled on AVR32 devices and gives important information about how to get the best configuration for different sample rates.
Top
Design Considerations
PDF Software Description
 
AVR32714: UC3A Schematic Checklist (20 pages, revision D, updated 12/08)
This application note describes a common checklist which should be used when starting and reviewing the schematics for a UC3A design.
 
AVR32715: AVR32 UC3B Schematic Checklist (13 pages, revision D, updated 12/08)
This application note describes a common checklist which should be used when starting and reviewing the schematics for a UC3B design.
 
AVR32738: AVR32 AP700X Schematic Checklist (24 pages, revision C, updated 9/08)
This application note describes a common checklist which should be used when starting and reviewing the schematics for an AP7 design.
 
AVR32800: UC3L Schematic Checklist (12 pages, revision A, updated 9/09)
This application note describes a common checklist which should be used when starting and reviewing the schematics for a UC3L design.
 
AVR32801: UC3A3 Schematic Checklist (23 pages, revision A, updated 8/09)
This application note describes a common checklist which should be used when starting and reviewing the schematics for a UC3A3 design.
Top
Flash Programming
PDF Software Description
 
AVR32708: AVR32 UC3A and UC3B Flash JTAG Programming Algorithms (13 pages, revision A, updated 11/07)
The aim of this application note is to provide 3rd party programmer vendors, the JTAG programming specification for AT32UC3x products.
AVR32749: AVR32 UC3 Software Workaround Implementation for the Erratum Flash Read-after-Write... (4 pages, revision B, updated 8/09)
This application note gives the software workaround implementation of the erratum flash-read-after-write present on AT32UC3Ax512 (x=0 or x=1) revision E, H and I.
Top
General Purpose
PDF Software Description
AVR32000: Introduction to AVR32 header files (6 pages, revision A, updated 05/06)
This application note gives a basic introduction to the header files for AVR32 microcontrollers.
 
AVR32718: AT32UC3 Series Software Framework DSPLib (28 pages, revision A, updated 11/07)
This application note describes the DSP Library from the AVR32® Software Framework. It details the main functions (prototype, algorithm and benchmark) of the DSP library: FFT, convolution, FIR and partial IIR using GCC compiler.
 
AVR32722: How to license audio and video codecs (8 pages, revision A, updated 2/08)
This guide shall give Atmel® customers information about, as well as an overview over, the licensing of patents that cover technologies such as MP3 and WMA. This document only applies as a source of information and no responsibility is taken by Atmel for the correctness of the information found herein.
Top
Getting Started
PDF Software Description
 
AVR32006: Getting Started with GCC for AVR32 (13 pages, revision A, updated 12/07)
The goal of this guide is to quickly enlighten the developer on best practices for the development of code for AVR®32 microcontrollers, as well as giving some pointers to specific features of GCC relevant to AVR32.
 
AVR32007: UC3 C-coding Guidelines for ARM7 Developers (11 pages, revision B, updated 3/08)
This document describes differences between the AVR®32 UC3 and ARM7TM CPU architectures, and gives guidelines on developing applications on the AVR32 UC3 architecture for developers with ARM7 experience.
 
AVR32015: AVR32 Studio getting started (24 pages, revision C, updated 4/08)
This application note is a quick start guide for the AVR®32 Studio. It documents on a step by step basis how a simple program can be created as standalone or Linux® application.
 
AVR32018: How to upgrade from GNU Toolchain 2.0.3 to 2.1.5 or later (5 pages, revision A, updated 3/09)
The AVR®32 GNU Toolchain v2.1.5 and the corresponding AVR32 Studio 2.1 introduce incompatibility with the previous revision GNU Toolchain 2.0.3 and AVR32 Studio 2.0. This document outlines the software operations to migrate from a GNU Toolchain 2.0.3 to 2.1.5 or later.
AVR32119: Getting Started with AVR32 UC3A Microcontrollers (13 pages, revision B, updated 9/08)
This application note is aimed at helping the reader become familiar with the Atmel AVR®32 UC3A microcontroller.
 
AVR32736:AVR32 AP7 Getting Started (11 pages, revision A, updated 4/08)
This document shall help you to get started with a development for the AVR32 AP7 application processor series. It introduces available software and hardware tools, lists references to documentation and provides development setup examples.
 
AVR32737: AVR32 AP7 Linux Getting Started (9 pages, revision A, updated 2/08)
This application note is aimed at helping the reader become familiar with Linux® development with the Atmel AVR®32 AP7 Application Processor.
Top
OS and OS Drivers
PDF Software Description
 
AVR32003: AVR32 AP7 linux Buildroot (8 pages, revision E, updated 11/08)
Buildroot is a set of scripts that builds an entire root file system for a given target. A target can be ATNGW100 or ATSTK1000.

For additional information and download see the Buildroot for AVR32.
 
AVR32004: AVR32 AP7 How to add software package to Buildroot (9 pages, revision B, updated 11/08)
This application note describes how a new “user-space” software package can be added to the Buildroot build system. In addition it documents how new software must be modified to fit into the Buildroot system.

For additional information and download see the Buildroot for AVR32.
 
AVR32005: AVR32 AP7 How to add a custom board to Buildroot (6 pages, revision B, updated 11/08)
This application note describes how a custom target board can be added to the Buildroot build system. A custom board is useful if you intend to use Buildroot in combination with your own design.

For additional information and download see the Buildroot for AVR32.
AVR32115: AVR32 AP7 Linux ATA driver (11 pages, revision C, updated 8/08)
This application note describes how to connect parallel ATA devices to the AVR®32 using the built-in CompactFlash® controller, the External Bus Interface (EBI) and a simple EBI to ATA adaptor. This application note describes an example adaptor card for the STK®1000 development board.
 
AVR32401: AVR32 AP7 Linux Interfacing DataFlash (6 pages, revision B, updated 8/08)
This application note serves as an example of how to connect, set up and use DataFlash® from Linux® on the AVR®32. It shows the process of configuring the Linux kernel to set up the SPI communication channel and load the required modules, creating the file system and mounting the DataFlash to be a part of the Linux file system.
AVR32408: AVR32 AP7 Linux GPIO driver (13 pages, revision A, updated 2/08)
This application describes how to use GPIO with Linux on AVR®32AP devices. It gives examples on how to control the GPIO hardware from user-space in an application or from kernel-space in a driver.
AVR32412: AVR32 AP7 TWI driver (12 pages, revision A, updated 8/08)
This application note covers the configuration, setup and usage of the I2C framework on Linux®. The application note gives also examples of how the Linux API can be used to form SMBus™ commands which can be used on I2C compatible hardware.
 
AVR32413: AVR32 AP7 Image sensor interface driver (11 pages, revision B, updated 8/08)
This application note describes how the ISI module can be used with Linux®.
 
AVR32415: AVR32 AP7 Linux PS/2 keyboard and mouse (6 pages, revision A, updated 2/08)
PS/2 protocol is a very common interface for input devices such as keyboard and mouse to a computer. Linux® already supports both PS/2 keyboards and mice, and for AVR®32 AP7 devices with a PSIF peripheral this can be enabled in the Linux kernel.
 
AVR32416: AVR32 AP7 Linux LCD Panel Customization (21 pages, revision A, updated 07/08)
This application note describes all necessary steps to successfully connect a custom LCD display to an AP7 device running the Linux® operating system. The application note contains valuable design considerations, hardware wiring examples and a complete guide to set up the Linux frame buffer environment.
AVR32743: AVR32 AP7 Linux Kernel Module Application Example (10 pages, revision A, updated 07/08)
This application note explains how to write a custom loadable driver module for the Linux® kernel. Common mechanisms like module parameters, initialization and cleanup are explained in detail. The Linux driver model is introduced, and a short introduction on how to write drivers for two common bus types, the platform and spi busses, is given. This application note also explains how to build a custom module using the Linux kernel’s internal build system.
 
AVR32744: AVR32 AP7 Linux Custom Board Support (13 pages, revision A, updated 07/08)
This application note describes how the Linux® kernel must be expanded in order to add support for a new custom board.
Top
UC3 Flash Microcontrollers
PDF Software Description
AVR32134: AVR32 UC3 3D Graphic Rendering Application (17 pages, revision C, updated 4/09)
This application note demonstrates a real time bitmap texture mapping on a 3D rotating Cube. The real time image is processing using DSP instructions without any hardware acceleration.
 
AVR32136: AVR32 UC3 NAND flash GPIO driver (10 pages, revision A, updated 12/08)
This application note describes how to connect a NAND flash device to an AVR®32 UC3 family device and communicate using only GPIO lines. How to configure the driver to match the target hardware is also covered by this application note.
Top