| PDF |
软件 |
描述 |
|
|
(中文) AVR450: 为SLA、NiCd、NiMH 和Li-Ion 电池设计的充电器 (43 pages, updated 03/02) Chinese version. |
|
|
AVR000: Register and Bit-Name Definitions for the AVR Microcontroller (1 pages, revision B, updated 4/98) This Application Note contains files which allow the user to use Register and Bit names from the databook when writing assembly programs. |
|
|
AVR001: Conditional Assembly and portability macros (6 pages, revision D, updated 03/05) This application note describes the Conditional Assembly feature present in the AVR Assembler version 1.74 and later. Examples of how to use Conditional Assembly are included to illustrate the syntax and concept. |
|
|
AVR030: Getting Started with IAR Embedded Workbench for Atmel AVR (10 pages, revision D, updated 10/04) The purpose of this application note is to guide new users through the initial settings of IAR Embedded Workbench, and compile a simple C-program. |
|
|
AVR031: Getting Started with ImageCraft C for AVR (8 pages, revision B, updated 5/02) The purpose of this Application Note is to guide new users through the initial settings of the ImageCraft IDE and compile a simple C program. |
|
|
AVR032: Linker Command Files for the IAR ICCA90 Compiler (11 pages, revision B, updated 5/02) This Application Note describes how to make a linker command file for use with the IAR ICCA90 C-compiler for the AVR Microcontroller. |
|
|
AVR033: Getting Started with the CodeVisionAVR C Compiler (16 pages, revision B, updated 5/02) The purpose of this Application Note is to guide the user through the preparation of an example C program using the CodeVisionAVR C compiler. The example is a simple program for the Atmel AT90S8515 microcontroller on the STK500 starter kit. |
|
|
AVR034: Mixing C and Assembly Code with IAR Embedded Workbench for AVR (8 pages, revision B, updated 4/03) This Application Note describes how to use C to control the program flow and main program and assembly modules to control time critical I/O functions. |
|
|
AVR035: Efficient C Coding for AVR (22 pages, revision D, updated 01/04) This Application Note describes how to utilize the advantages of the AVR architecture and the development tools to achieve more efficient c Code than for any other microcontroller. |
|
|
AVR040: EMC Design Considerations (17 pages, revision C, updated 01/04) This Application Note covers the most common EMC problems designers encounter when using Microcontrollers. |
|
|
AVR042: AVR Hardware Design Considerations (14 pages, revision B, updated 01/04) This Application Note covers the most common problems encountered when switching to a new microcontroller architecture like the AVR. Solutions and considerations for the most common design challenges are covered. |
|
|
AVR053: Calibration of the internal RC oscillator (13 pages, revision E, updated 03/05) This application note describes a method to calibrate the internal RC oscillator and targets all AVR devices with tunable RC oscillator. Furthermore, an easily adaptable calibration firmware source code is also offered. This firmware allows device calibration using the AVR tools STK500, AVRISP or JTAGICE. It can also be used for 3rd party calibration systems, based on production programmers. |
|
|
AVR054: Run-time calibration of the internal RC oscillator (19 pages, revision A, updated 09/04) This application note describes how to calibrate the internal RC oscillator via the UART. The method used is based on the calibration method used in the Local Interconnect Network (LIN) protocol. |
|
|
AVR060: JTAG ICE Communication Protocol (20 pages, revision B, updated 01/04) This application note describes the communication protocol used between AVR Studio?and JTAG ICE. |
|
|
AVR061: STK500 Communication Protocol (31 pages, revision B, updated 4/03) This document describes the protocol for the STK500 starterkit. This protocol is based on earlier protocols made for other AVR tools and is fully compatible with them in that there should not be any overlapping or redefined commands. |
|
|
AVR064: STK502 - A Temperature Monitoring System with LCD Output (24 pages, revision B, updated 02/03) |
|
|
AVR065: LCD Driver for the STK502 and AVR Butterfly (18 pages, revision B, updated 01/04) In applications where user interaction is required it is often useful to be able to display information to the user. The ATmega169 is a MCU with integrated LCD driver. It can control up to 100 LCD segments. The ATmega169 is therefore, an obvious choice when designing applications that requires both an efficient MCU and an LCD. |
|
|
AVR067: JTAGICE mkII Communication Protocol (80 pages, revision B, updated 03/05) This document describes the communication protocol used between AVR Studio and JTAGICE mkII. |
|
|
AVR068: STK500 Communication Protocol (37 pages, revision B, updated 03/05) The document describes version 2.0 of the Atmel STK500 and the PC controlling the STK500 communication protocol. The firmware is distributed with AVR Studio 4.11 build 401 or later. |
|
|
AVR070: Modifying AT90ICEPRO and ATICE10 to Support Emulation of AT90S8535 (5 pages, revision C, updated 5/02) Older AT90ICEPRO can be upgraded to support the new AVR devices with internal A/D converter. This Application Note describes in detail how to modify the AT90ICEPRO to support emulation of AT90S8535 and other AVR devices with A/D converter. |
|
|
AVR072: Accessing 16-bit I/O Registers (4 pages, revision B, updated 5/02) This Application Note shows how to read and write the 16-bit registers in the AVR Microcontrollers. Since the AVR has an 8-bit I/O bus these registers must be written in two execution cycles. It explains how to safely read and write these 16-bit registers. |
|
|
AVR074: Upgrading AT90ICEPRO to ICE10 (8 pages, revision B, updated 5/02) This Application Note describes how to upgrade the AT90ICEPRO emulator to ATICE10 Version 2.0 |
|
|
AVR080: Replacing ATmega103 by ATmega128 (12 pages, revision D, updated 01/04) This Application Note describes issues to be aware of when migrating from the ATmega103 to the ATmega128 Microcontroller. |
|
|
AVR081: Replacing AT90S4433 by ATmega8 (11 pages, revision D, updated 07/03) This Application Note describes issues to be aware of when migrating from the AT90S4433 to the ATmega8 Microcontroller. |
|
|
AVR082: Replacing ATmega161 by ATmega162 (8 pages, revision D, updated 01/04) This Application Note describes issues to be aware of when migrating from the ATmega161 to the ATmega162 Microcontroller. |
|
|
AVR083: Replacing ATmega163 by ATmega16 (7 pages, revision E, updated 01/04) This Application Note describes issues to be aware of when migrating from the ATmega163 to the ATmega16 Microcontroller. |
|
|
AVR084: Replacing ATmega323 by ATmega32 (6 pages, revision C, updated 7/03) This Application Note describes issues to be aware of when migrating from the ATmega323 to the ATmega32 Microcontroller. |
|
|
AVR085: Replacing AT90S8515 by ATmega8515 (10 pages, revision C, updated 01/04) This Application Note describes issues to be aware of when migrating from the AT90S8515 to the ATmega8515 Microcontroller. |
|
|
AVR086: Replacing AT90S8535 by ATmega8535 (10 pages, revision B, updated 7/03) This Application Note describes issues to be aware of when migrating from the AT90S8535 to the ATmega8535 Microcontroller. |
|
|
AVR087: Migrating between ATmega8515 and ATmega162 (5 pages, revision B, updated 07/03) This application note is a guide to help current ATmega8515 users convert existing designs to ATmega162. The information given will also help users migrating from ATmega162 to ATmega8515. |
|
|
AVR088: Migrating between ATmega8535 and ATmega16 (3 pages, revision C, updated 01/04) This application note is a guide to help current ATmega8535 users convert existing designs to ATmega16. The information given will also help users migrating from ATmega16 to ATmega8535. |
|
|
AVR089: Migrating between ATmega16 and ATmega32 (3 pages, revision A, updated 06/03) This application note is a guide to help current ATmega16 users convert existing designs to ATmega32. The information given will also help users migrating from ATmega32 to ATmega16. |
|
|
AVR090: Migrating between ATmega64 and ATmega128 (2 pages, revision A, updated 05/03) This application note is a guide to help current ATmega64 users convert existing designs to ATmega128. The information given will also help users migrating from ATmega128 to ATmega64. |
|
|
AVR091: Replacing AT90S2313 by ATtiny2313 (11 pages, revision A, updated 10/03) This application note is a guide to help current AT90S2313 users convert existing designs to ATtiny2313. |
|
|
AVR092: Replacing ATtiny11/12 by ATtiny13 (7 pages, revision A, updated 10/03) This application note is a guide to help current ATtiny11/12 users convert existing designs to ATtiny13. |
|
|
AVR093: Replacing AT90S1200 by ATtiny2313 (7 pages, revision A, updated 10/03) This application note is a guide to help current AT90S1200 users convert existing designs to ATtiny2313. |
|
|
AVR094: Replacing ATmega8 by ATmega88 (11 pages, revision B, updated 05/04) This application note is a guide to help current ATmega8 users convert existing designs to ATmega88. |
|
|
AVR095: Migrating between ATmega48, ATmega88 and ATmega168 (5 pages, revision A, updated 02/04) This application note describes issues to be aware of when migrating between the ATmega48, ATmega88 and ATmega168 microcontrollers. |
|
|
AVR097: Migration between ATmega128 and ATmega2561 (6 pages, revision A, updated 09/04) ATmega128 and ATmega2561 are designed to be a pin and functionality compatible sub family. This application note points out the differences to be aware of when porting code between the devices. |
|
|
AVR098: Migration between ATmega169 and ATmega329 (4 pages, revision A, updated 09/04) The ATmega169 and ATmega329 are designed to be a pin and functionality compatible sub family, but there may be a need for some minor modifications in the application when porting code between the devices. |
|
|
AVR099: Replacing AT90S4433 by ATmega48 (11 pages, revision A, updated 07/04) This application note is a guide to assist current AT90S4433 users in converting existing designs to ATmega48. ATmega48 is not designed to be a replacement for AT90S4433, but is pin compatible and has a very similar feature set. |
|
|
AVR100: Accessing the EEPROM (12 pages, revision B, updated 12/98) This Application Note contains assembly routines for accessing the EEPROM for all AVR devices. Includes code for reading and writing EEPROM addresses sequentially and at random addresses. |
|
|
AVR101: High Endurance EEPROM Storage (5 pages, revision A, updated 9/02) Having a system that regularly writes a parameter to the EEPROM can wear out the EEPROM, since it is only guaranteed to endure 100.000 erase/write cycles. This Application Note describes how to make safe high endurance parameter storage in EEPROM. |
|
|
AVR102: Block Copy Routines (5 pages, revision B, updated 5/02) This Application Note contains routines for transfer of data blocks. |
|
|
AVR103: Using the EEPROM Programming Modes (5 pages, revision A, updated 03/05) This application note implements a driver utilizing the programming modes available for the EEPROM in some new AVR parts, involving both time and power savings. |
|
|
AVR104: Buffered Interrupt Controlled EEPROM Writes (9 pages, revision A, updated 07/03) Many applications use the built-in EEPROM of the AVR to preserve and hence restore system information when power is removed from the system. This application note presents a buffered interrupt driven approach, which significantly increases general performance and decreases power consumption compared to a polling implementation. |
|
|
AVR105: Power efficient high endurance parameter storage in Flash memory (10 pages, revision A, updated 9/03) This application note describes how to implement a high endurance parameter storage method in Flash memory using the self-programming feature of the AVR. |
|
|
AVR106: C functions for reading and writing to Flash memory (10 pages, revision A, updated 08/04) Recent AVRs have a feature called Self programming Program memory. This feature makes it possible for an AVR to reprogram the Flash memory during program run and is suitable for applications that need to self-update firmware or store parameters in Flash. This application note provides C functions for accessing the Flash memory. |
|
|
AVR107: Interfacing AVR serial memories (22 pages, revision A, updated 03/05) This application note describes the functionality and the architecture of SPI serial memories drivers as well as the motivation of the selected solution. |
|
|
AVR108: Setup and use of the LPM Instructions (4 pages, revision B, updated 5/02) This Application Note describes how to access constants saved in Flash program memory of the AVR microcontrollers |
|
|
AVR109: Self Programming (11 pages, revision B, updated 06/04) This Application Note describes how an AVR with the SPM instruction can be configured for Self Programming. |
|
|
AVR120: Characterization and Calibration of the ADC on an AVR (13 pages, revision C, updated 05/04) This application note explains various ADC (Analog to Digital Converter) characterization parameters and how they effect ADC measurements. It also describes how to measure these parameters during application testing in production and how to perform run-time compensation. |
|
|
AVR128: Setup and use the Analog Comparator (4 pages, revision B, updated 5/02) This Application Note serves as an example on how to set up and use the AVR's on-chip Analog Comparator. |
|
|
AVR130: Setup and use the AVR Timers (16 pages, revision A, updated 2/02) This Application Note describes how to use the different timers of the AVR. The AT90S8535 is used as an example. The intention of this document is to give a general overview of the timers, show their possibilities and explain how to configure them. The code examples will make this clearer and can be used as guidance for other applications. |
|
|
AVR131: Using the AVR抯 High-speed PWM (8 pages, revision A, updated 09/03) This application note is an introduction to the use of the high-speed Pulse Width Modulator (PWM) available in some AVR microcontrollers. The assembly code example provided shows how to use the fast PWM in the ATtiny26. The ATtiny15 also features a high-speed PWM timer. |
|
|
AVR132: Using the Enhanced Watchdog Timer (15 pages, revision B, updated 01/04) This Application Note describes how to utilize the Enhanced Watchdog Timer (WDT) used on new AVR devices. In addition to performing System Reset, the WDT now also has the ability to generate an interrupt. |
|
|
AVR133: Long Delay Generation Using the AVR Microcontroller (8 pages, revision B, updated 01/04) The solution presented here shows how the AVR AT90 series microcontrollers generate and handle long delays. On-chip timers are used without any software intervention, thus allowing the core to be in a low-power mode during the delay. Since the timers are clocked by the system clock, there is no need for additional components. |
|
|
AVR134: Real-Time Clock using the Asynchronous Timer (12 pages, revision C, updated 01/04) This Application Note describes how to implement a real-time (RTC) on AVR microcontrollers that features the RTC module. |
|
|
AVR151: Setup and use of the SPI (14 pages, revision A, updated 11/04) This application note describes how to setup and use the on-chip Serial Peripheral Interface (SPI) of the AVR micro-controllers. |
|
|
AVR155: Accessing I2C LCD Display Using the AVR 2-Wire Serial Interface (10 pages, revision A, updated 03/05) This application note includes a 2-wire/TWI driver for bus handling and describes how to access a Philips I2C LCD driver on a Batron LCD display. |
|
|
AVR180: External Brown-Out Protection (16 pages, revision B, updated 5/02) This Application Note shows in detail how to prevent system malfunction during periods of insufficient power supply voltage. |
|
|
AVR182: Zero Cross Detector (8 pages, revision B, updated 01/04) This Application Note describes how to implement an efficient zero cross detector for mains power lines using an AVR microcontroller. |
|
|
AVR200: Multiply and Divide Routines (19 pages, revision B, updated 10/98) This Application Note lists subroutines for multiplication and division of 8 and 16-bit signed and unsigned numbers. |
|
|
AVR201: Using the AVR Hardware Multiplier (11 pages, revision C, updated 6/02) Examples of using the multiplier for 8-bit arithmetic. |
|
|
AVR202: 16-Bit Arithmetics (3 pages, revision B, updated 5/02) This Application Note lists program examples for arithmetic operation on 16-bit values. |
|
|
AVR204: BCD Arithmetics (14 pages, revision B, updated 01/03) This Application Note lists routines for BCD arithmetics. |
|
|
AVR220: Bubble Sort (5 pages, revision B, updated 5/02) This Application Note implements the Bubble Sort algorithm on the AVR controllers. |
|
|
AVR222: 8-Point Moving Average Filter (5 pages, revision B, updated 5/02) This Application Note gives an demonstration of how the addressing modes in the AVR architecture can be utlized. |
|
|
AVR223: Digital Filters with AVR (24 pages, revision A, updated 9/02) This document focuses on the use of the AVR hardware multiplier, the use of the general purpose registers for accumulator functionality, how to scale coefficients when implementing algorithms on fixed point architectures, the actual implementation examples and finally, possible ways to optimize/modify the implementations suggested. |
|
|
AVR230: DES Bootloader (24 pages, revision C, updated 03/05) This application note describes how firmware can be updated securely on AVR microcontrollers with bootloader capabilities. The method includes using the Data Encryption Standard (DES) to encrypt the firmware. This application note also supports the Triple Data Encryption Standard (3DES). |
|
|
AVR236: CRC check of Program Memory (9 pages, revision B, updated 5/02) The Application Note describes CRC (Cyclic Redundancy Check) theory and implementation of CRC checking of program memory for secure applications. |
|
|
AVR240: 4x4 Keypad-Wake Up on Keypress (12 pages, revision C, updated 8/03) This Application Note describes a simple interface to a 4 x 4 keypad designed for low power battery operation. |
|
|
AVR241: Direct driving of LCD display using general I/O (11 pages, revision A, updated 04/04) This application note describes software driving of LCDs with one common line, using the static driving method. |
|
|
AVR242: 8-bit Microcontroller Multiplexing LED Drive & a 4x4 Keypad. (26 pages, revision B, updated 5/02) This Application Note describes a comprehensive system providing a 4 x 4 keypad as input into a real time clock/timer with two outputs. |
|
|
AVR243: Matrix Keyboard Decoder (11 pages, revision A, updated 01/03) This application note describes a software driver interfacing an 8x8 keyboard. The application is designed for low power battery operation. The application also supports user-defined alternation keys to implement Caps Lock, Ctrl-, Shift- and Alt-like functionality. |
|
|
AVR244: UART as ANSI Terminal Interface (8 pages, revision A, updated 11/03) This application note describes some basic routines to interface the AVR to a terminal window using the UART (hardware or software). |
|
|
AVR301: C Code for Interfacing AVR?to AT17CXXX FPGA Configuration Memories (20 pages, revision D, updated 01/04) This Application Note describes how to In-System-Program (ISP) and Atmel FPGA Configuration Memory using an Atmel AVR MCU and how to bit bang TWI using port pins on an AT90S8515 AVR MCU |
|
|
AVR303: SPI-UART Gateway (5 pages, revision A, updated 03/05) The SPI-UART Gateway application runs on the ATmega8 and allows the developer to test and debug an SPI slave application isolated from the master, using manually controlled communications via a suitable RS232 terminal. |
|
|
AVR304: Half Duplex Interrupt Driven Software UART (11 pages, revision A, updated 8/97) This Application Note describes how to make a half duplex UART on any AVR device using the 8-bit Timer/Counter0 and an external interrupt. |
|
|
AVR305: Half Duplex Compact Software UART (8 pages, revision B, updated 5/02) This Application Note describes how to implement a polled software UART capable of handling speeds up to 614,400 bps on an AT90S1200. |
|
|
AVR306: Using the AVR UART in C (3 pages, revision B, updated 7/02) This Application Note describes how to set up and use the UART present in most AVR devices. C code examples are included for polled and interrupt controlled UART applications |
|
|
AVR307: Half Duplex UART Using the USI Module (18 pages, revision A, updated 10/03) The Universal Serial Interface (USI) present in AVR devices like the ATtiny26, ATtiny2313, and ATmega169, is a communication module designed for TWI and SPI communication. The USI is however not restricted to these two serial communication standards. It can be used for UART communication as well. |
|
|
AVR308: Software LIN Slave (12 pages, revision B, updated 5/02) This Application Note shows how to implement a LIN (Local Interconnect Network) slave task in an 8-bit RISC AVR microcontroller without the need for any external components. |
|
|
AVR310: Using the USI module as a I2C master (8 pages, revision B, updated 09/04) This Application Note describes how to use the USI for TWI master communication. |
|
|
AVR311: Using the TWI module as I2C slave (12 pages, revision D, updated 10/04) This application note describes a TWI slave implementation, in form of a fullfeatured driver and an example of usage for this driver. |
|
|
AVR312: Using the USI module as a I2C slave (9 pages, revision B, updated 10/04) This Application Note describes how to use the USI for TWI slave communication. |
|
|
AVR313: Interfacing the PCAT Keyboard (13 pages, revision B, updated 5/02) Most microcontrollers requires some kind of human interface. This Application Note describes one way of doing this using a standard PC AT Keyboard. |
|
|
AVR314: DTMF Generator (8 pages, revision B, updated 5/02) This Application Note describes how DTMF (Dual-Tone Multiple Frequencies) signaling can be implemented using any AVR microcontroller with PWM and SRAM. |
|
|
AVR315: Using the TWI module as I2C master (11 pages, revision B, updated 09/04) This Application Note describes a TWI master implementation, in form of a fullfeatured driver and an example of usage for this driver. |
|
|
AVR317: Using the USART on the ATmega48/88/168 as a SPI master (10 pages, revision A, updated 09/04) Some applications might need more than one SPI module. This can be achieved using the new Master SPI Mode of the ATmega48/88/168 USART. |
|
|
AVR318: Dallas 1-Wire?master (21 pages, revision A, updated 09/04) This application note shows how a 1-Wire master can be implemented on an AVR, either in software only, or utilizing the U(S)ART module. |
|
|
AVR319: Using the USI module for SPI communication (8 pages, revision A, updated 09/04) This application note describes a SPI interface implementation, in form of a fullfeatured driver and an example of usage for this driver. |
|
|
AVR320: Software SPI Master (5 pages, revision B, updated 5/02) The Synchronous Peripheral Interface (SPI) is gaining rapidly in popularity, allowing faster communication than I2C. For the smaller AVR Microcontrollers, which do not have hardware SPI, this Application Note describes a set of low-level routines for software implementation. These can be used as the basis for communicating with Atmel's 25xxx family of Serial EEPROM memories, as well as a host for other peripheral ICs such as display drivers. |
|