AVR32 UC3 Software Framework... User Manual

Similar documents
Rad Hard FPGA. AT40KEL-DK Design Kit Content. Description. Kit Content. Reference Material. Support

CAN Microcontrollers. Application Note. Migrating from T89C51CC01 to AT89C51CC03. Feature Comparison

AT17F Series. Application Note. Programming Circuits for AT17F Series Configurators with Xilinx FPGAs. 1. Introduction

AT89ISP Programmer Cable Introduction AT89ISP Programmer Cable Parallel Port Settings Application Note AT89ISP Software AT89ISP Cable polarized

Application Note. Microcontrollers. Using Keil FlashMon Emulator with AT89C51CC01/03 AT89C51CC01/ Summary. 2. Background overview

AT91 ARM Thumb Microcontrollers. Application Note. AT91 Host Flash Loader. 1. Package Contents. 2. Definition of Terms. 3.

8-bit Microcontroller. Application Note. AVR320: Software SPI Master

CAN, 80C51, AVR, Microcontroller. Application Note

Section 1 ATAVRAUTOEK1 Getting Started

TSC695. Application Note. Annulled Cycle Management on the TSC695. References

8051 Microcontrollers. Application Note. Migration from AT89C5131 & AT89C5131A-L to AT89C5131A-M

AT17 Series FPGA. Configuration Memory. Application Note. In-System Programming Circuits for AT17 Series Configurators with Atmel and Xilinx FPGAs

8-bit Microcontroller. Application Note. AVR031: Getting Started with ImageCraft C for AVR

Interfacing the internal serial EEPROM

8-bit Microcontroller. Application Note. AVR030: Getting Started with C for AVR

AT91 ARM Thumb Microcontrollers. Application Note. AT91M55800A Clock Switching Considerations using Advanced Power Management Controller.

FPGA Configuration EEPROM Memory. Application Note. Programming Atmel s EEPROMs: AT17LV020(A) vs. AT17LV002(A) Introduction.

AT89C5131 Starter Kit... Software User Guide

8-bit RISC Microcontroller. Application Note. AVR 305: Half Duplex Compact Software UART

MP3 Player Reference Design Based on AT89C51SND1 Microcontroller... User Guide

AT17(A) Series FPGA Configuration Memory. Application Note

System Designer. Programmable SLI AT94K/AT94S Series. Features. Description

SAM Boot Assistant (SAM-BA)... User Guide

System Designer. Programmable SLI AT94K/AT94S Series. Features. Description

Trusted Platform Module AT97SC3203S. SMBus Two-Wire Interface. Summary

AT89STK-10 Starter Kit... Hardware User Guide

hex file. The example described in this application note is written for the AT94K using the FPSLIC Starter Kit. Creating a New Project

MARC4. Application Note. Hints and Tips for Hard- and Software Developments with MARC4 Microcontrollers

Application Note Microcontrollers. C Flash Drivers for T89C51RC/RB/IC2 and AT89C51RC/RB/IC2 for Keil Compilers

FPGA Configurator Programming Kit (Enhanced) ATDH2200E. Features. Description

AT94K Series Field Programmable System Level Integrated Circuit. Application Note. FPSLIC Baud Rate Generator

Programmable SLI AT40K AT40KAL AT94K. Application Note. Implementing a Single-coefficient Multiplier

AT89STK-09 Starter Kit for AT83C26... User Guide

ATAVRAUTO User Guide

Migration From AT89C51SND1C to AT83C51SDN1C. Application Note. MP3 Microcontrollers

DatasheetDirect.com. Visit to get your free datasheets. This datasheet has been downloaded by

8-bit RISC Microcontroller. Application Note. AVR151: Setup And Use of The SPI

AVR501: Replacing ATtiny15 with ATtiny25. 8-bit Microcontrollers. Application Note PRELIMINARY. Features. 1 Introduction

ATAVRAUTO User Guide

AT85DVK-07 Demonstration Firmware... User s Manual

AVR1303: Use and configuration of IR communication module. 8-bit Microcontrollers. Application Note. Features. 1 Introduction

8-bit Microcontroller. Application Note. AVR201: Using the AVR Hardware Multiplier

Two-wire Serial EEPROM Smart Card Modules 128K (16,384 x 8) 256 (32,768 x 8) AT24C128SC AT24C256SC. Features. Description VCC NC

8-bit Microcontroller. Application Note. AVR033: Getting Started with the CodeVisionAVR C Compiler

a clock signal and a bi-directional data signal (SCL, SDA)

AVR32752: Using the AVR32 UC3 Static Memory Controller. 32-bit Microcontrollers. Application Note. Features. 1 Introduction

AVR1503: Xplain training - XMEGA Programmable Multi Interrupt Controller 8-bit Microcontrollers Application Note Prerequisites

32-bit Secure. AT91SC CT-USB Summary. Microcontrollers. Features

AT697E. Application Note. Checking AT697E Code for Occurrence of LDF/FPOPd Instructions Sequence with a dependency on an Odd-Numbered Register

GemCore Serial Lite PRO AT83C21GC. Summary

8-bit Microcontroller. Application Note. AVR033: Getting Started with the CodeVisionAVR C Compiler

256K (32K x 8) 5-volt Only Flash Memory AT29C256

Two-Wire Serial EEPROM AT24C164 (1)

Two-wire Serial EEPROM Smart Card Modules 1K (128 x 8) 2K (256 x 8) 4K (512 x 8) 8K (1024 x 8) 16K (2048 x 8)

8-megabyte, 4-megabyte, and 2-megabyte 2.7-volt Only DataFlash Cards AT45DCB008D AT45DCB004D AT45DCB002D. Not Recommended for New Design

2-wire Serial EEPROM Smart Card Modules AT24C32SC AT24C64SC

256K (32K x 8) 5-volt Only Flash Memory AT29C256

AVR based 125kHz RFID Evaluation Kit (Re)Programming Guide ATA2270-EK1. Overview. Fuse Settings: ISP Programming

AVR1315: Accessing the XMEGA EEPROM. 8-bit Microcontrollers. Application Note. Features. 1 Introduction

Bluetooth General Information White Paper

AVR32401: AVR32 AP7 Linux Interfacing DataFlash. 8-bit Microcontrollers. Application Note. Features. 1 Introduction

AVR1922: Xplain Board Controller Firmware 8-bit Microcontrollers Application Note Features 1 Introduction

2-Wire Serial EEPROM AT24C01. Features. Description. Pin Configurations. 1K (128 x 8)

80C51 MCUs T89C51AC2. Errata Sheet

3-Wire Serial EEPROM AT93C46C

2-megabit (256K x 8) 5-volt Only Flash Memory AT29C020

64K (8K x 8) High Speed Parallel EEPROM with Page Write and Software Data Protection AT28HC64BF

AVR1501: Xplain training XMEGA Timer/Counter 8-bit Microcontrollers Application Note Prerequisites 1 Introduction

Preparations. Creating a New Project

1-megabit (128K x 8) 5-volt Only Flash Memory AT29C010A

AT89C5122. Application Note. Preventing Windows XP from Displaying Unknown device Message at Startup

Atmel AVR1619: XMEGA-B1 Xplained Demonstration. 8-bit Atmel Microcontrollers. Application Note. Features. 1 Introduction

256 (32K x 8) High-speed Parallel EEPROM AT28HC256N. Features. Description. Pin Configurations

AVR1518: XMEGA-A1 Xplained Training - XMEGA Clock System. 8-bit Atmel Microcontrollers. Application Note. Prerequisites.

4-megabit (512K x 8) 3-volt Only 256-byte Sector Flash Memory AT29LV040A

Atmel LF-RFID Kit Comparison Chart. Application Note. Atmel LF-RFID Kit Comparison Chart. 1. Description

Atmel QT600 Quick Start Guide Touch Solutions

AT91SAM-ICE... User Guide

8-bit Microcontroller. Application Note. AVR032: Linker Command Files for the IAR ICCA90 Compiler

CryptoRF EEPROM Memory 8 Kbits

AT89C51CC03 UART Bootloader

512K (64K x 8) 5-volt Only Flash Memory AT49F512

Getting Started with the IAR Embedded Workbench for FPSLIC. Application Note. Getting Started with the IAR Embedded Workbench for FPSLIC.

UART. Embedded RISC Microcontroller Core Peripheral

2-wire Serial EEPROM AT24C01A AT24C02 AT24C04 AT24C08 AT24C16

2-wire Serial EEPROM AT24C21. 2-Wire, 1K Serial EEPROM. Features. Description. Not Recommended for New Designs. Pin Configurations.

AVR097: Migration between ATmega128 and ATmega1281/ATmega bit Microcontrollers. Application Note. Features. 1 Introduction

ARM7TDMI - based Microcontroller AT91RM3400. Errata Sheet

1-megabit (64K x 16) 3-volt Only Flash Memory AT49BV1024A AT49LV1024A

APPLICATION NOTE. Atmel AVR1638: XMEGA RTC Calibration. 8-bit Atmel Microcontrollers. Features. Introduction

Atmel AVR32847: Migration from/to the UC3L0 64/32/16 from/to the UC3L0 256/ bit Atmel Microcontrollers. Application Note.

AT89C51SND1 UART Bootloader

4-megabit (512K x 8) Single 2.7-volt Battery-Voltage Flash Memory AT49BV040A

1-megabit (64K x 16) 3-volt Only Flash Memory AT49LV1024 AT49LV1025

T89C5115 UART Bootloader

8-bit Microcontroller with 2K/4K/8K Bytes In-System Programmable Flash. Appendix A. Preliminary. ATtiny261 ATtiny461 ATtiny861 Automotive

T89C51AC2 UART Bootloader

64K (8K x 8) Parallel EEPROM with Page Write and Software Data Protection AT28C64B. Features. Description. Pin Configurations

Atmel FPGA Integrated Development System (IDS)

AVR ONE!... Quick-start Guide. EVK Windows 32103C AVR ONE! 02/10

Transcription:

... User Manual

Section 1 AVR32 UC3 Software Framework 1.1 Features Drivers for each AVR 32 UC3 peripheral Software libraries optimized for AVR32 Hardware components drivers Demo applications that use all libraries RTOS-ready source code Complete software framework in C code Full projects compatible with GNU GCC and IAR Embedded Workbench High level user documentation including examples, getting started and tutorials Designed to run on AVR32 UC3 evaluation kits and easily portable to any other hardware platform Designed to help develop software applications for AVR32 UC3 microcontroller 1.2 Introduction This document describes the software framework developed for the Atmel AVR32 UC3 microcontrollers. This framework provides software drivers and libraries to build any application for AVR32 UC3 devices. This framework has been carefully developed to help develop and glue together the different components of a software design. It also has been designed to be easily integrable into an operating system (OS) as well as to operate in a stand-alone way. AVR32 UC3 Software Framework User Manual 1-1

1.3 Framework Description The framework is divided into several modules. Each module is provided with full source code, example of usage, rich HTML documentation and ready to use project for the IAR EWAVR32 and the GNU GCC compilers. Figure 1. Block Diagram Overview APPLICATIONS / Your Application! SERVICES UTILS COMPONENTS UC3 Software Framework BOARDS DRIVERS AT32UC3 / Target Board 1.3.1 UC3 Drivers /DRIVERS) 1.3.2 Software Services /SERVICES) 1.3.3 Hardware Components /COMPONENTS) 1.3.4 C/C++ Utilities /UTILS) 1.3.5 Demo Applications /APPLICATIONS) This directory contains software drivers such as ADC, GPIO or Timer peripherals. Each driver is composed of a driver.c and driver.h file that provides low level functions to access the peripheral. This directory provides application-oriented piece of software such as a USB mass storage class, a FAT file system and an optimized DSP library. This directory provides software drivers to access hardware components such as external memory (e.g. Atmel Dataflash or SDRAM) or LCD. This directory provides several linker script files and C/C++ files with general usage defines, macros and functions. This directory provides application examples that are based on services, components and drivers modules. 1-2 AVR32 UC3 Software Framework User Manual

1.4 Framework Usage 1.4.1 Installation Download the AT32UC3X-SoftwareFramework-x.y.z.zip. Extract it to a local directory. Open AVR32_Readme.html file in the root directory. The framework contains rich html documentation for all directories and files. Navigate through the documentation. Check the installation section first. There is a uc3softwareframework-releasenote.txt file in the root directory. This file contains all information regarding the revision management of the software framework. 1.4.2 Directory Architecture Below is an example on what the complete AVR32 UC3 software framework folder should look like after a successful and complete installation. Figure 2. AVR32 UC3 Software Framework Architecture Here is the content of the ADC driver directory to introduce the typical organization of a software driver. AVR32 UC3 Software Framework User Manual 1-3

Figure 3. Module File Architecture 1.4.3 Building an Application with the Framework Step1. Defining the application Let s take an example to build an application: the Atmel AT45DB dataflash is a memory that is present on EVK1100 evaluation kit. It is connected to the SPI interface of the AVR32 UC3A microcontroller. We want to access this memory and perform a basic sanity check. Step2. Identifying the blocks AT45DB: We are going to use the AT45DB driver, it is a hardware component: it will be under the /COMPONENTS directory. It is a memory component: it will be stored under the /COMPONENTS/MEMORY directory. It is a dataflash memory type. It will be located under the /COMPONENTS/MEMORY/DATA_FLASH directory. It is an AT45DBX type of dataflash. The driver will be located under the /COMPONENTS/MEMORY/DATA_FLASH/AT45DBX directory. Power manager: to start the external oscillator clock. It is a AVR32 UC3 peripheral. The power manager driver is located under the /DRIVERS/PM/ directory. RS232: the USART will be used as an output for the memory test. It is located under the /DRIVERS/USART directory. GPIO: we will need to configure the UC3 IO to be used by the peripherals. It is located under the /DRIVERS/GPIO directory. Debug: we will need format printing functions to print messages to the RS232. The debug module is located under the /UTILS/DEBUG directory. The application itself will be located under the /APPLICATIONS/MYAPPLICATION. 1-4 AVR32 UC3 Software Framework User Manual

Step3. Building the project We need to create a new project for this application. In order not to start from scratch, we are going to reuse a simple project. Copy the /DRIVERS/GPIO/EXAMPLE content to the /APPLICATIONS/MYAPPLICATION directory. The /DRIVERS/USART/EXAMPLE is also a simple ready-to-use project that you can start from. Rename the gpio_example.c file to myapplication.c file. Implement the application as defined in step1. Modify the GCC or IAR project to match this new application. You will find one or several of examples in each module: 1. /DRIVERS/PM/EXAMPLE1 and /DRIVERS/PM/EXAMPLE2 2. /DRIVERS/USART/USART_EXAMPLE and /DRIVERS/USART/MODEM_EXAMPLE 3. /DRIVERS/GPIO/EXAMPLE The /COMPONENTS/MEMORY/DATA_FLASH/AT45DBX/EXAMPLE directory contains an example of this application. 1.5 Tools 1.5.0.1 IAR All IAR projects are compatible with the latest available version of IAR Embedded Workbench for AVR32. 1.5.0.2 GNU GCC and AVR32Studio All GNU GCC projects are provided with stand alone makefile. 1.5.0.3 Evaluation Kit The projects are designed to run on AVR32 UC3 evaluation kits. All the projects contain board definition files to ease portability to any other hardware platform that use a AVR32 UC3 microcontroller. AVR32 UC3 Software Framework User Manual 1-5

Atmel Headquarters Corporate Headquarters 2325 Orchard Parkway San Jose, CA 95131 TEL 1(408) 441-0311 FAX 1(408) 487-2600 Europe Atmel SarL Route des Arsenaux 41 Casa Postale 80 CH-1705 Fribourg Switzerland TEL (41) 26-426-5555 FAX (41) 26-426-5500 Asia Atmel Asia, Ltd. Room 1219 Chinachem Golden Plaza 77 Mody Road Tsimhatsui East Kowloon Hong Kong TEL (852) 2721-9778 FAX (852) 2722-1369 Japan Atmel Japan K.K. 9F, Tonetsu Shinkawa Bldg. 1-24-8 Shinkawa Chuo-ku, Tokyo 104-0033 Japan TEL (81) 3-3523-3551 FAX (81) 3-3523-7581 Atmel Operations Memory Atmel Corporate 2325 Orchard Parkway San Jose, CA 95131 TEL 1(408) 436-4270 FAX 1(408) 436-4314 Microcontrollers Atmel Corporate 2325 Orchard Parkway San Jose, CA 95131 TEL 1(408) 436-4270 FAX 1(408) 436-4314 Atmel Nantes La Chantrerie BP 70602 44306 Nantes Cedex 3, France TEL (33) 2-40-18-18-18 FAX (33) 2-40-18-19-60 ASIC/ASSP/Smart Cards Atmel Rousset Zone Industrielle 13106 Rousset Cedex, France TEL (33) 4-42-53-60-00 FAX (33) 4-42-53-60-01 Atmel Colorado Springs 1150 East Cheyenne Mtn. Blvd. Colorado Springs, CO 80906 TEL 1(719) 576-3300 FAX 1(719) 540-1759 Atmel Smart Card ICs Scottish Enterprise Technology Park Maxwell Building East Kilbride G75 0QR, Scotland TEL (44) 1355-803-000 FAX (44) 1355-242-743 RF/Automotive Atmel Heilbronn Theresienstrasse 2 Postfach 3535 74025 Heilbronn, Germany TEL (49) 71-31-67-0 FAX (49) 71-31-67-2340 Atmel Colorado Springs 1150 East Cheyenne Mtn. Blvd. Colorado Springs, CO 80906 TEL 1(719) 576-3300 FAX 1(719) 540-1759 Biometrics/Imaging/Hi-Rel MPU/ High Speed Converters/RF Datacom Atmel Grenoble Avenue de Rochepleine BP 123 38521 Saint-Egreve Cedex, France TEL (33) 4-76-58-30-00 FAX (33) 4-76-58-34-80 e-mail literature@atmel.com Web Site http://www.atmel.com Disclaimer: The information in this document is provided in connection with Atmel products. No license, express or implied, by estoppel or otherwise, to any intellectual property right is granted by this document or in connection with the sale of Atmel products. EXCEPT AS SET FORTH IN ATMEL S TERMS AND CONDI- TIONS OF SALE LOCATED ON ATMEL S WEB SITE, ATMEL ASSUMES NO LIABILITY WHATSOEVER AND DISCLAIMS ANY EXPRESS, IMPLIED OR STATUTORY WARRANTY RELATING TO ITS PRODUCTS INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT, INDIRECT, CONSEQUENTIAL, PUNITIVE, SPECIAL OR INCIDEN- TAL DAMAGES (INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF PROFITS, BUSINESS INTERRUPTION, OR LOSS OF INFORMATION) ARISING OUT OF THE USE OR INABILITY TO USE THIS DOCUMENT, EVEN IF ATMEL HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. Atmel makes no representations or warranties with respect to the accuracy or completeness of the contents of this document and reserves the right to make changes to specifications and product descriptions at any time without notice. Atmel does not make any commitment to update the information contained herein. Unless specifically provided otherwise, Atmel products are not suitable for, and shall not be used in, automotive applications. Atmel s products are not intended, authorized, or warranted for use as components in applications intended to support or sustain life. 2007 Atmel Corporation. All rights reserved. Atmel, logo and combinations thereof, DataFlash and others are registered trademarks or trademarks of Atmel Corporation or its subsidiaries. Other terms and product names may be trademarks of others. /xm