Автор Тема: Програми и алгоритми за AVR микроконтролери  (Прочетена 25216 пъти)

Неактивен mzk

  • Много Напреднал
  • *****
  • Публикации: 1 622
  • Пол: Мъж
  • http://analogov.com
    • analogov.com
На този сайт: http://www.atmel.com/dyn/products/app_notes.asp?family_id=607

Цитат
   AVR064: STK502 - A Temperature Monitoring System with LCD Output(24 pages, revision C, updated 2/06)
This application note explains how to use the ATmega169(P) and STK502 to display a temperature measurement on an LCD.
   
 
   AVR114: Using the ATMEL File System management for AT32UC3x, AT90USBx and ATmega32U4 (22 pages, revision A, updated 9/08)
This application note describes the File System module which is optimized for the AVR core, leading to a small footprint and high bandwidth. It provides many features such as opening multiple files at the same time or play list management.
   

   AVR115: Data Logging with Atmel File System on ATmega32U4(10 pages, revision A, updated 1/09)
This application note describes how to use the Atmel file system (see AVR114) to perform data logging operation on the ATmega32U4.
   

   AVR153: USB PC Drivers Based on Generic HID Class(10 pages, revision B, updated 7/08)
This document gives information on integrating the Atmel USB HID DLL functions. Simple code examples that demonstrate different types of implementation are given.
   

   AVR155: Accessing I2C LCD Display Using the tinyAVR and megaAVR 2-Wire Serial Interface(10 pages, revision B, updated 9/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.
   

   AVR1607: Brushless DC Motor (BLDC) Control in Sensor mode using ATxmega128A1 and ATAVRMC323(18 pages, revision A, updated 8/10)
This application note describes how to implement a control of Brushless DC motor (BLDC) in sensor mode using the ATxmega128A1, Atmel® AVR® microcontroller and the ATAVRMC323 development kit.
   

   AVR172: Sensorless Commutation of Brushless DC Motor (BLDC) using ATmega32M1 and ATAVRMC320(13 pages, revision B, updated 5/10)
This application note describes how to implement a sensorless commutation of BLDC motors with the ATAVRMC320 development kit and the ATmega32M1.
   
 
   AVR191: Anti-Pinch Algorithm Adaptation Procedure(10 pages, revision A, updated 11/06)
The purpose of this document is to explain how to adapt an anti-pinch algorithm to a specified powered window.
   

   AVR194: Brushless DC Motor Control using ATmega32M1(16 pages, revision A, updated 4/08)
This application note describes how to implement a brushless DC motor control in sensor mode using the ATmega32M1 AVR microcontroller.
   

   AVR200: Multiply and Divide Routines(21 pages, revision D, updated 5/06)
This Application Note lists subroutines for multiplication and division of 8 and 16-bit signed and unsigned numbers.
   

   AVR201: Using the 8-bit AVR Hardware Multiplier (11 pages, revision C, updated 6/02)
Examples of using the 8-bit AVR multiplier for 8-bit arithmetic.
   

   AVR202: 16-Bit Arithmetics on tinyAVR and megaAVR devices (3 pages, revision B, updated 5/02)
This Application Note lists program examples for arithmetic operation on 16-bit values on tinyAVR and megaAVR devices.
   

   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.
   

   AVR221: Discrete PID controller on tinyAVR and megaAVR devices(10 pages, revision A, updated 05/06)
This application note describes a simple implementation of a discrete Proportional-Integral-Derivative (PID) controller on tinyAVR and megaAVR devices.
   

   AVR222: 8-Point Moving Average Filter on tinyAVR and megaAVR devices (5 pages, revision B, updated 5/02)
This Application Note gives an demonstration of how the addressing modes in the tinyAVR and megaAVR architecture can be utlized.
   

   AVR223: Digital Filters on tinyAVR and megaAVR devices (18 pages, revision B, updated 7/08)
This application note explains how to implement digital filters on tinyAVR and megaAVR devices, taking into consideration coefficient and data scaling and methods of optimization
   

   AVR236: CRC check of Program Memory on tinyAVR and megaAVR devices with LPM instruction (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.
   

   AVR242: Multiplexing LED Drive & a 4x4 Keypad on tinyAVR and megaAVR devices (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 and controls external loads and a four digit mulitplexed LED display.
   

   AVR244: UART as ANSI Terminal Interface(8 pages, revision A, updated 11/03)
This application note describes some basic routines to interface an AVR microcontroller to a terminal window using the UART (hardware or software).
   

   AVR245: Code Lock with 4x4 Keypad and I2C LCD on a tinyAVR (9 pages, revision A, updated 10/05)
This application note describes how to build a code lock with an tinyAVR and a handful of components. The code lock uses a 4x4 keypad for user input, a piezoelectric buzzer for audible feedback and an LCD for informational output.
   
Register to download
   AVR252: TV Control Touch Keyboard(29 pages, revision A, updated 10/09)
TV Control Touch Keyboard is designed to be the drop-in replacement for an existing electromechanical (resistive ladder) type TV control keyboard. It is based on the latest Capacitive Touch Technology for man-machine/user interface.
   
Register to download
   AVR254: QWheel with ATtiny48(39 pages, revision A, updated 10/09)
This Application Note focuses on making a customized firmware solution using Atmel® QTouch® Library designed for a wheel (constructed from 4 channels).
   
Register to download
   AVR259: ATtiny40 QTouch Reference Design(28 pages, revision A, updated 11/10)
This is the reference design to demonstrate the capabilities of ATtiny40, which supports Atmel® QTouch®, the latest capacitive touch technology. The application note includes the firmware supporting seven keys, TWI slave interface (I2C compatible), buzzer and LED control.
   

   AVR270: USB Mouse Demonstration on megaAVR with USB (11 pages, revision C, updated 7/08)
This application note describes a simple mouse project. It allows users to quickly test USB hardware using megaAVR with USB without any driver installation.
   

   AVR271: USB Keyboard Demonstration on megaAVR with USB(12 pages, revision B, updated 7/08)
This application note describes how to start and implement a USB keyboard application using the STK525 starter kit and FLIP in-system programming software for megaAVR with USB.
   

   AVR272: USB CDC Demonstration: UART to USB Bridge, on megaAVR with USB (11 pages, revision B, updated 4/08)
This application note describes how to start and implement a CDC (Virtual Com Port and UART to USB bridge) application using the STK525 starter kit and FLIP in-system programming software for megaAVR with USB.
   

   AVR273: USB Mass Storage Implementation on megaAVR with USB(23 pages, revision A, updated 3/06)
This application note describes how to start and implement a USB application based on the Mass Storage (Bulk only) class to transfer data between a PC and user equipment on megaAVR with USB.
   

   AVR275: Sensor-based Control of Three Phase Brushless DC Motors Using 8-bit AVR USB microcontrollers(10 pages, revision A, updated 9/06)
This application note described the control of a BLDC motor with Hall effect position sensors (referred to simply as Hall sensors). The implementation includes both direction and open loop speed control.
   

   AVR280: USB Host CDC Demonstration on megaAVR with USB(14 pages, revision A, updated 9/07)
This application note describes how to start and implement a Host CDC application using the STK525 or USBKEY starter kit, and finally introduces a simple example of dual USB-UART bridge between two PCs.
   

   AVR287: USB Host HID and Mass Storage Demonstration (11 pages, revision A, updated 9/09)
This application note describes how to start and implement a USB host application based on the USB HID class (USB mouse) and Mass Storage class and introduces a simple example of an megaAVR with USB managing both USB classes and a file system.
   

   AVR296: AVRUSBRF01 USB RF Dongle user's guide(11 pages, revision A, updated 7/08)
This kit is a USB dongle designed to demonstrate wireless communications. It is powered by the AT90USB162 AVR microcontroller.
   

   AVR298: USB Audio Demonstration with ATmega32(16)U4(8 pages, revision A, updated 11/08)
This application note describes a simple audio project. It allows to quickly test USB hardware using the ATMega32U4 without any driver installation.
   

   AVR313: Interfacing a PC AT Keyboard on tinyAVR and megaAVR devices(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 on tinyAVR and megaAVR devices(8 pages, revision B, updated 5/02)
This Application Note describes how DTMF (Dual-Tone Multiple Frequencies) signaling can be implemented using any tinyAVR or megaAVR device with PWM and SRAM.
   

   AVR32120: Using the 32-bit AVR UC3 audio bitstream DAC driver (8 pages, revision C, updated 3/08)
This application note describes how to use the ABDAC peripheral on 32-bit AVR UC3 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.
   
 
   AVR32129: Using the 32-bit AVR UC3 CANIF(29 pages, revision A, updated 11/10)
This application note describes the CAN protocol and its integration inside the CANIF module. Finally, it deals with code examples to get up and running quickly. A driver interface written in C is included as well.
   

   AVR32134: 3D Graphic Rendering Application using 32-bit AVR UC3(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 processed using DSP instructions without any hardware acceleration.
   

   AVR323: Interfacing GSM modems with tinyAVR and megaAVR devices(21 pages, revision A, updated 02/06)
This application note describes how to use a tinyAVR or megaAVR device to control a GSM modem in a cellular phone. The interface between modem and host is a textual protocol called Hayes AT-Commands.
   

   AVR325: High-Speed Interface to Host Enhanced Parallel Port (EPP) using tinyAVR and megaAVR devices(7 pages, revision A, updated 2/02)
This Application Note describes a method for high-speed bidirectional data transfer between an AVR Microcontroller and an of-the-shelf IBM (R) PC-compatible desktop computer, using its Enhanced Parallel Port (EPP) 8-bit parallel data path.
   

   AVR32709: Audio Decoder Over USB using 32-bit AVR UC3 (29 pages, revision C, updated 7/09)
This application note will help the reader use the 32-bit AVR 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 for Motor Control using 32-bit AVR UC3 (19 pages, revision B, updated 8/10)
This application note is a 32-bit AVR UC3 stand-alone application which computes real-time Space Vector Modulation on a Brushless DC Motor. This application is designed to work with the EVK1100 evaluation kit.
   
 
   AVR32716: AVR UC3 USB Audio Class(23 pages, revision C, updated 4/10)
This application is a "Stereo headset with Microphone" USB device which demonstrates the usage of the Atmel AVR UC3 USB AUDIO class through a real-time audio application. This application is designed to work with the EVK1105 evaluation kit. The application source code is provided for GCC and IAR™ compilers.
   
 
   AVR32718: AVR UC3 DSPlib Software Framework DSPLib (28 pages, revision A, updated 11/07)
This application note describes the DSP Library from the AVR UC3 Software Framework. It details the main functions (prototype, algorithm and benchmark) of the DSP library: FFT, convolution, FIR and partial IIR using GCC compiler.
   

   AVR32723: Sensor Field Oriented Control for Brushless DC motors using 32-bit AVR AT32UC3B0256 (26 pages, revision A, updated 3/10)
This application note delivers an implementation of Sensor Field Oriented Control algorithm for brushless DC motor on Atmel 32-bit AVR UC3 B series microcontrollers.
   

   AVR32753: How to connect to an SSL-server using 32-bit AVR UC3 (19 pages, revision C, updated 11/09)
This application note demonstrates the ability of the 32-bit AVR UC3 device to exchange messages with a server over TCP/IP connectivity through a secure socket layer connection.
   

   AVR32758: USB Host Mass Storage Bootloader on 32-bit AVR UC3 (16 pages, revision B, updated 12/09)
This USB host mass storage class (MSC) bootloader allows to perform In-System Programming of 32-bit AVR UC3 parts from a USB USB Drive, without removing the part from the system and the need for any external programming interface other than USB.
   
 
   AVR32760: USB DFU Bootloader Protocol on 32-bit AVR UC3 (18 pages, revision A, updated 9/09)
This application note describes the USB DFU Protocol used in the 32-bit AVR UC3 USB bootloader. First, it gives an overview of the USB DFU class protocol and then it details the Atmel DFU protocol used by the bootloader.
   

   AVR32765: 32-bit AVR UC3 DSPLib Reference Manual (138 pages, revision A, updated 7/09)
The 32-bit AVR UC3 DSP Library is a compilation of digital signal processing functions. The source code is available in the AVR UC3 Software Framework, for GCC and IAR compilers.
   

   AVR32771: USB High speed Device Mass storage on SD/MMC card with optional AES (18 pages, revision A, updated 2/10)
This application note is a description of a USB Mass Storage device, using High Speed USB for communication and a SD/MMC-card for storage. By default the code is compiled to run at the EVK1104 reference design board with the AT32UC3A3.
   
 
   AVR32784: 32-bit AVR UC3 USB DFU Bootloader(33 pages, revision C, updated 2/10)
This USB bootloader allows to perform In-System Programming (ISP) from a USB host controller without removing the part from the system, without a pre-programmed application and without any external programming interface other than USB. This document describes the USB bootloader functionalities and its usage in various contexts.
   

   AVR328: USB Generic HID Implementation on megaAVR devices(13 pages, revision C, updated 7/08)
The aim of this document is to describe how to start and implement a USB application, based on the HID class, to transfer data between a PC and user equipment, using USB megaAVR devices.
   
 
   AVR32908: EVK1104 Getting Started Guide(12 pages, revision A, updated 2/10)
The EVK1104 is a reference design and development system for the AT32UC3A3256 microcontroller from Atmel Corporation. The kit is equipped with a rich set of memories and peripherals that make the EVK1104 a perfect evaluation platform. This guide shows the user how to get quickly started with this kit.
   

   AVR335: Digital Sound Recorder with tinyAVR or megaAVR and DataFlash(20 pages, revision C, updated 04/05)
This Application Note describes how to record, store and play back sound using any 8-bit AVR MCU with A/D converter, the AT45DB161 DataFlash memory and a few extra components
   

   AVR336: ADPCM Decoder on tinyAVR and megaAVR devices(20 pages, revision A, updated 11/04)
This application note focuses on decoding the ADPCM signal, Adaptive Differential Pulse Code Modulation, and turning it to a signal suitable for loudspeakers. It targets an ATmega128 device.
   

   AVR341: Four and five-wire Touch screen Controller using tinyAVR and megaAVR devices(19 pages, revision A, updated 7/07)
This application note describes how to interface a resistive 4- and 5-wire touch systems with tinyAVR and megaAVR devices which provide an excellent solution thanks to their analog features combined with low power modes.
   

   AVR360: Step Motor Controller using tinyAVR and megaAVR devices(4 pages, revision B, updated 4/03)
This Application Note describes how to implement a compact size and high-speed interrupt driven step motor controller.
   

   AVR4013: picoPower Basics(7 pages, revision A, updated 12/10)
This application note demonstrates how to extend the battery life of our application by multiple factors by modifying only the firmware. You will see that, while some of the modifications are very simple and only require setting some registers, other modifications will need some rewriting of the code.
   

   AVR410: RC5 IR Remote Control Receiver on tinyAVR and megaAVR devices(10 pages, revision B, updated 5/02)
This Application Note describes a receiver for the frequently used Philips/Sony RC5 coding scheme
   
 
   AVR411: Secure Rolling Code Algorithm for Wireless Link on tinyAVR and megaAVR devices (22 pages, revision D, updated 11/09)
This application note describes a Secure Rolling Code Algorithm transmission protocol for use in a unidirectional wireless communication system.
   

   AVR415: RC5 IR Remote Control Transmitter on tinyAVR and megaAVR devices(5 pages, revision A, updated 5/03)
In this application note the widely used RC5 coding scheme from Philips will be described and a fully working remote control solution will be presented. This application will use the ATtiny28 AVR microcontroller for this purpose.
   
 
   AVR433: Power Factor Corrector (PFC) with AT90PWM2/2B Re-triggable High Speed PSC(7 pages, revision A, updated 03/06)
This application note explains how to develop a stand alone PFC (Power Factor Corrector) with the AT90PWM2.
   

   AVR435: BLDC/BLAC Motor Control Using a Sinus Modulated PWM Algorithm on AT90PWM3B (12 pages, revision A, updated 9/06)
This application note proposes an implementation of a sinus modulated BLDC/BLAC motor control, based on an ATAVRMC100 board populated with an AT90PWM3B.
   

   AVR441: Intelligent BLDC Fan Controller with Temperature Sensor and Serial Interface(26 pages, revision A, updated 09/05)
This application note describes how to integrate a low-cost, feature-rich AVR microcontroller into the commutator electronics of a BLDC fan. The ATtiny25 is used as an example.
   

   AVR442: PC Fan Control using ATtiny13(10 pages, revision A, updated 09/05)
This application note describes the operation of 12 volt DC cooling fans typically used to supply cooling air to electronic equipment, and controlling them with the ATtiny13.
   

   AVR443: Sensor-based control of three phase BLDC motor based on tinyAVR and megaAVR devices(8 pages, revision B, updated 2/06)
This application note describes the control of a BLDC motor with Hall effect position sensors. The implementation includes both direction and open loop speed control.
   

   AVR444: Sensorless control of 3-phase BLDC motors based on tinyAVR and megaAVR devices(14 pages, revision A, updated 10/05)
This application note describes how to implement sensorless commutation control of a 3-phase brushless DC (BLDC) motor with the low cost ATmega48 microcontroller.
   

   AVR446: Linear speed control of stepper motor on tinyAVR and megaAVR devices(15 pages, revision A, updated 6/06)
This application note describes how to implement an exact linear speed controller for stepper motors. It also presents a driver with a demo application, capable of controlling acceleration as well as position and speed.
   

   AVR447:Sinusoidal driving of three-phase permanent magnet motor using ATmega48/88/168(26 pages, revision A, updated 6/06)
This application note describes the implementation of sinusoidal driving for threephase brushless DC motors with hall sensors. The implementation can easily be modified to use other driving waveforms such as sine wave with third harmonic injected.
   

   AVR448: Control of High Voltage 3-Phase BLDC Motor with an ATmega48(10 pages, revision C, updated 5/06)
Using a microcontroller as a control device, 3-phase motors can be used for a wide range of applications. Motor sizes below one horsepower are efficiently controlled in speed, acceleration, and power levels.
   

   AVR449: Sinusoidal driving of 3-phase permanent magnet motor using ATtiny261/461/861(24 pages, revision B, updated 10/07)
This application note describes the implementation of sinusoidal driving for threephase brushless DC motors with hall sensors on the ATtiny261/461/861 microcontroller family.
   

   AVR452: Sensor-based Control of Three Phase Brushless DC Motors Using AT90CAN128/64/32(10 pages, revision A, updated 3/06)
This application note describes the control of a BLDC motor with Hall effect position sensors. The implementation includes both direction and open loop speed control.
   
 
   AVR460: Embedded Web Server on megaAVR devices(53 pages, revision C, updated 5/02)
This application note explains how embedded applications can be connected directly to the internet.
   

   AVR465: Energy Meter using tinyAVR and megaAVR devices(40 pages, revision A, updated 07/04)
This application note describes a single-phase power/energy meter with tamper logic. The design measures active power, voltage, and current in a single-phase distribution environment.
   

   AVR480: Anti-Pinch System for Power Window using tinyAVR and megaAVR devices(19 pages, revision B, updated 12/06)
This application note provides an example of how to create an anti-pinch system for power windows. Based on Speed and Current parameters measured out of the window DC motor, it supports the FMVSS118 and 20/64/ECC standards.
   

   AVR492: BLDC Motor control in sensor mode using AT90PWM3/3B(26 pages, revision B, updated 5/07)
This application note describes how to implement a brushless DC motor control in sensor mode using AT90PWM3/3B AVR microcontroller.
   

   AVR493: Sensorless Commutation of BLDC Motor control using AT90PWM3/3B and ATAVRMC100(20 pages, revision B, updated 12/06)
This application note describes how to implement a sensorless commutation of BLDC motors with the ATAVRMC100 developement kit.
   

   AVR494: AC Induction Motor Control Using the constant V/f Principle and a Natural PWM Algorithm(12 pages, revision A, updated 12/05)
This application note explains how to control the speed of an induction motor by using variable frequency drives and natural PWM modulation on an AT90PWM3/3B.
   

   AVR495: AC Induction Motor Control Using the Constant V/f Principle and a Space-vector PWM Algorithm(11 pages, revision A, updated 12/05)
This application note explains how to control the speed of an induction motor by using variable frequency drives and space vector modulation on an AT90PWM3/3B.
   

   AVR496: Brushless DC Motor Control using ATtiny861(13 pages, revision A, updated 7/09)
This application note describes how to implement a brushless DC motor control in sensor mode using the ATtiny861 AVR microcontroller.
   

   AVR498: Sensorless control of BLDC Motors using ATtiny861(20 pages, revision A, updated 7/09)
This application note describes how to implement a brushless DC motor control in sensorless mode using the ATtiny861 AVR microcontroller.
   

   AVR926: Using ATmega88 and ATA6824 for DC motor control in high temperature environment (13 pages, revision A, updated 8/07)
DC Motor Control in High Temperature Environment
   

   AVR927: Using ATmega88 and ATA6832 for BLDC motor control in high temperature environment(17 pages, revision A, updated 3/07)
The purpose of this document is to explain the theory and application of Atmel's integrated BLDC driver solution.
   
 
   AVR928: Scalar sensorless methods to drive BLDC motors(24 pages, revision A, updated 5/10)
This application note describes how to implement a sensorless commutation on BLDC motors and provides all information that is relevant for an implementation of sensorless commutation using the Atmel devices and Starter-kits.
   

   AVR998: Guide to IEC60730 Class B compliance with AVR Microcontrollers(9 pages, revision B, updated 04/08)
This application note describes the �Class B� software classification, refering to embedded firmware which is intended to prevent unsafe operation of controlled equipment and provides guidelines for compliance with the 'Class B' classification as it relates to AVR devices.