Atmel Corporation
Products > 8051 Architecture > Application Notes

8051 Architecture -

right arrow Application Example and Algorithms   right arrow General Purpose
right arrow Design Considerations   right arrow Getting Started
right arrow Development Tools   right arrow Memory Access / Boot Loader
right arrow Flash Programming   right arrow Migration Notes
 
PDF Software Description
A Digital Thermometer Using the AT89C2051 MCU (3 pages, updated 12/97)
This Application Note uses the AT89C2051 to implement a simple digital thermometer system.
Analog-to-Digital Conversion Utilizing the AT89CX051 MCU (6 pages, updated 12/97)
This Application Note describes how to build a low cost A/D converter with the Atmel 20-Pin Microcontrollers.
 
Analyzing the Behavior of an Oscillator and Ensuring Good Start-up (16 pages, updated 07/04)
This application note explains how an oscillator functions and which methods can be used to check if the oscillation conditions are met in order to ensure a good start-up when power is applied.
AT89C51 In-Circuit Programming (11 pages, updated 9/97)
This Application Note illustrates the in-circuit programmability of the Atmel AT89C51 Microcontroller.
AT89S8252 In-System Programming (38 pages, updated 12/97)
This Application Note illustrates the in-system programmability of the Atmel AT89SXXXX (S-series) Microcontrollers. A method is shown by which an AT89S8252 can be programmed remotely over a standard telephone line.
 
AT89S8252 Primer (13 pages, updated 3/98)
The AT89S8252 is a low-power, high-performance device featuring 8K bytes of Flash memory (CMOS PEROM), 2K bytes of EEPROM, and a Serial Peripheral Interface (SPI).
C Flash Drivers for the (A)T89C51RB2/RC2/IC2 for Keil Compiler rev 1.2.1 (11 pages, updated 12/01)
C Flash Drivers for the T89C5115 for Keil Compilers rev 1.2.0 (13 pages, updated 11/03)
C Flash Drivers for the T89C51AC2 for Keil Compilers rev 1.2.0 (13 pages, updated 11/03)
C Flash Drivers for the T89C51RD2 for Keil Compiler (24 pages, updated 3/01)
 
C51 ADC Program Examples (22 pages, revision B, updated 10/04)
This Application Note provides C and Assembler program examples for the ADC Interface.
 
C51 API Program Examples (21 pages, updated 07/04)
This Application Note provides C and Assembler program examples for the API Interface.
 
C51 CAN Program Examples (21 pages, updated 07/04)
This Application Note provides C and Assembler program examples for the CAN Interface.
 
C51 Keyboard and Watchdog Program Examples (20 pages, updated 07/04)
This Application Note provides C and Assembler program examples for the Keyboard Interface.
 
C51 SPI Program Examples (26 pages, updated 06/04)
This Application Note provides to customers C and Assembler program examples for SPI.
 
C51 Timers Program Example (88 pages, updated 06/04)
This Application Note provides to customers C and Assembler program examples for Timers.
 
C51 TWI Program Examples (26 pages, updated 07/04)
 
C51 UART Program Examples (26 pages, updated 06/04)
This Application Note provides to customers C and Assembler program examples for UART.
Controlling FPGA Configuration with a Flash-based Microcontroller (7 pages, updated 12/97)
This Application Note shows how to reconfigure an SRAM based FPGA using a flash based Microcontroller.
 
Designing Boards with Atmel AT89C51/52, AT89C1051 for writing Flash at In-Circuit Test (5 pages, updated 12/97)
This Application Note details how to write nonvolatile memories during in-circuit testing operations.
 
Driving Unipolar Stepper Motors Using C51/C251 (15 pages, updated 12/02)
This Application Note describes how to drive Stepper Motors using the C51/C251 Microcontrollers.
 
External Brown-out Protection for C51 Microcontrollers with Active High Reset Input (15 pages, updated 11/02)
This Application Note shows in detail how to prevent system malfunction during periods of insufficient power supply voltage.
 
Guidelines to Keep ADC Resolution within Specification (19 pages, updated 8/03)
How to Emulate Read/Write Code Access to Atmel T89C51xx Using Hitex DProbeHS Emulator (13 pages, updated 05/02)
 
How to Get a Second Asynchronous Interface on a 80C51
 
How to interface a LCD display to a TSC80251 microcontroller
 
How to Replace Dallas DS80C310 by TS80C32X2
 
How to take advantage of the X2 feature in TS80C51 Microcontroller
 
How to use a Third Overtone Crystal with a 80C51 Family
 
In-System Programming - Serial Protocol Stack for C51
 
In-System Programming - T89C51RD2 Bootloader Operating Modes
In-system Programming with C51 MCU and External Flash (24 pages, updated 01/00)
Interfacing AT24CXX Serial EEPROMs with AT89CX051 MCU (4 pages, revision E, updated 5/05)
This Application Note illustrates a software based Two Wire Interface (TWI) between AT89CX051 Microcontrollers and the AT24CXX type of Serial EEPROMs.
Interfacing AT93CXXX Serial EEPROMs with AT89CX051 MCU (4 pages, updated 10/98)
This Application Note demonstrates interfacing AT89CX051 Microcontrollers to the AT93CXX 3-Wire type of Serial EEPROMs.
 
Interfacing the Internal Serial EEPROM Stacked into the AT89EB5114 (8 pages, revision A, updated 12/05)
The AT8xEB5114 contains an internal serial EEPROM (AT24C02) connected to the microcontroller via two standard ports. This application note aims to help developers take advantage of all the EEPROM. characteristics.
Keypad decoding technique using TSC80251G1
 
Migrating From a 8xC51 Microcontroller to a TSC8x251G1x Microcontroller
 
Migration from PHILIPS P8xC52, P80C32 to TS8xC52X2,TS80C32X2
 
Migration from PHILIPS P8xC54, P80C58 to TS8xC54X2,TS8xC58X2
 
Migration from T89C51RD2 to AT89C51RD2/ED2 (16 pages, updated 6/03)
 
Migration from TSC80C31 to TS80C31X2
 
Migration from TSC80C32/TSC80C52 to TS80C32X2/TS80C52X2
 
Migration from TSC87C52 to TS87C52X2
 
PC-Interfaced Data Aquisition System with the Atmel AT89C2051 Microcontroller (19 pages, updated 11/03)
This Application Note illustrates a PC data-acquisition system (DAQ) based around the AT89C2051 architecture.
Programming Atmel's Family of Flash Memories (4 pages, updated 12/97)
This Application Note demonstrates the capability of programming the entire family of Atmel Flash Memories through the usage of a single Atmel Microcontroller.
 
Programming T89C51xx and AT89C51xx with Device Programmers (13 pages, revision D, updated 06/05)
 
Software UART using PCA
Two-Wire Peripheral Expansion for the AT89C2051 MCU (9 pages, updated 12/97)
This Application Note details an expandable I/O and memory expansion framework centered around the AT89C2051.
Using a Personal Computer to Program the AT89C51/C52/LV51/LV52/C1051/C2051 (8 pages, updated 12/97)
This Application Note describes how to build a PC based programmer for the Atmel family of Microcontrollers
Using the AT89C2051 MCU as Virtual Machine (11 pages, updated 12/97)
This Application Note uses the AT89C2051 to implement an imaginary processor with a unique architecture and instruction set.
Top
Application Example and Algorithms
PDF Software Description
Implementing the USB Enumeration Process on the AT8xC5131/32/22 and AT8xC51SND1 (14 pages, updated 10/03)
This application note describes a way to implement the enumeration process on AT8xC5131/32/22 and AT8xC51SND1 products.
 
AT89C51RE2 code banking and bank switching with Keil ĩVision (14 pages, revision B, updated 03/07)
This application note gives the key points for implementation of code banking and bank switching on the 128K bytes Flash memory of the AT89C51RE2 controller with Keil ĩVision software.
Generic USB Mass Storage Device Implementation (15 pages, revision A, updated 05/05)
This document describes how to implement the USB Mass Storage class (with an example on the AT89C5131A product) and the firmware functions delivered by Atmel.
 
How to Connect C51 Microcontroller to ATR2406 (9 pages, revision A, updated 05/06)
This application note describes how to control an ATR2406 with a C51 microcontroller(AT89C5130A for example).
 
Song Quality Improvement Using the DAC on AT89C51SND1 Reference Design (5 pages, updated 1/03)
USB Communication Device Class - Migration from RS-232 to USB (9 pages, revision 1.2.1, updated 01/04)
This document has two main objectives. The first one is to describe how to easily migrate from a RS-232 to the USB into the firmware using the Atmel USB RS232 Virtual COM port library. The second one is to describe how to build a USB <-> RS-232 bridge, using the Atmel library.
USB Generic Implementation Based on HID Class (6 pages, revision A, updated 06/06)
The aims of this document are: to describe how to use a specific USB implementation, without developping the corre-sponding USB Host driver. As well as to describe the way to use USB, without writing a USB code.
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.
Top
Design Considerations
PDF Software Description
 
High Speed USB Design Guidelines for AT85C51SND3 (8 pages, revision A, updated 06/06)
This document provides guidelines for integrating a AT85C51SND3Bx 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.
Top
Development Tools
PDF Software Description
 
Using Keil FlashMon Emulator with AT89C51CC01/CC03 (10 pages, revision A, updated 04/06)
Developers using Keil ėVision IDE and the AT89C51CC01 or AT89C51CC03 microcontrollers can now do OnChip debug as easily as they are using the ėVision IDE simulator. This offers an alternative to the use of full fledge emulators when complex trace capabilities are not required. With a simple evaluation board such as Atmel AT89STK-06 fitted with an T89C51CC01 or AT89C51CC03, CAN software developers using Keil ėVision IDE can test their program directly from ėVision IDE.
Top
Flash Programming
PDF Software Description
 
AT89LP In-System Programming Specification (28 pages, revision A, updated 07/06)
Flash API for AT89C51RE2 (4 pages, revision A, updated 04/07)
This application note provides a set of routines to access the embedded flash of the AT89C51RE2. Some of these routines are compatible with the Flash API provided for AT89C51xD2 products.
Top
General Purpose
PDF Software Description
ATR2406 Software Driver for C51 Microcontrollers (8 pages, revision A, updated 06/06)
This application note describes the ATR2406 software driver running on a C51 microcontroller such as AT89C5130A or AT89C5131A.
 
C51 General Information about Bootloader and In-System Programming (5 pages, revision A, updated 03/07)
This document describes the Atmel Bootloaders for 8051 family processors.
 
Design Guide for Atmel’s C51 Standard Devices (21 pages, revision A, updated 11/07)
The aim of this document is to help customers to avoid errors that are frequently done in order save efforts and time during hardware debugging sessions. This document relates only to Atmel’s C51 standard devices.
 
EMC Improvement Guidelines (17 pages, updated 8/03)
How to Calculate the Capacitor of the Reset Input of a C51 Microcontroller (8 pages, updated 10/03)
This Application Note explains how the reset of the 80C51 microcontroller works when the RST pin is a pure input pin and when the RST input is bi-directional. It gives rules to determine the extra components required to operate the reset function properly.
Interfacing AT25CXXX Serial EEPROMs with AT89CXX (4 pages, updated 10/98)
This Application Note demonstrates interfacing AT89CXX microcontrollers to the AT25CXX Serial EEPROMs.
 
Linux USB Mass Storage Support for AT8xC51SNDx (6 pages, revision A, updated 09/05)
This application note describes how to install and use a AT8xC51SNDx device with a Linux Ū system.
nRF24L01 Software Driver for C51 Microcontrollers (6 pages, revision A, updated 05/06)
nRF24L01 is a single chip RF-transceiver intended for applications in the 2.4 GHz ISM to 2.5 GHz band. AT89C5131A is a high-performance Flash version of the 80C51 single-chip 8-bit micro controllers with full speed USB functions. This application note describes the nRF24L01 software driver running on AT89C5131A microcontroller.
 
USB RF Mouse with nRF24L01 (10 pages, revision A, updated 05/06)
nRF24L01 is a single chip RF-transceiver intended for applications in the 2.4 GHz ISM band. AT89STK-05 is a high-performance Flash version of the 80C51 single-chip 8-bit micro controllers with full speed USB functions. This application note describes an application using nRF24L01 and AT89STK-05: USB RF Mouse.
Using the STK500 as an AT89C51Rx2 Target Board (7 pages, updated 7/04)
This Application Note explains how to use the STK500 as a development board for 8051 Architecture microcontrollers.
Top
Getting Started
PDF Software Description
AT89ISP Programmer Cable (4 pages, revision E, updated 10/06)
This Application Note describes usage of the AT89ISP in-system programming cable product.
 
AT89LP2052/4052 Primer (18 pages, revision A, updated 1/07)
 
AT89S8253 Primer (20 pages, revision B, updated 3/07)
Top
Memory Access / Boot Loader
PDF Software Description
C Flash Drivers for the T89C51CC01CA for Keil Compiler (11 pages, updated 12/02)
C Flash Drivers for the T89C51CC01UA for Keil Compiler (13 pages, updated 12/02)
C Flash Drivers for the T89C51CC02CA for Keil Compiler (12 pages, updated 12/02)
C Flash Drivers for the T89C51CC02UA for Keil Compiler (13 pages, updated 12/02)
Emulating EEPROM Using AT89LP On-Chip Flash Data Memory (22 pages, revision A, updated 10/09)
This application note describes how to emulate the behavior of an on-chip EEPROM using the on-chip Flash data memory of Atmel's AT89LP series of microcontrollers.
Top
Migration Notes
PDF Software Description
How To Migrate Code from AT89C5130-31 to AT83C5135-36 (4 pages, revision A, updated 04/07)
This application note is a check list to assist current AT89C5130-31 users in converting existing designs to AT83C5135-36.
 
How to replace Infineon SABC505C/CA by Atmel T89C51CC01 CAN microcontroller (28 pages, updated 01/01)
 
Migrating From 80C31X2/80C32X2/80C51RA2 to AT80C51RD2 (12 pages, revision B, updated 9/06)
 
Migrating from AT89C2051/C4051 to AT89LP2052/LP4052 (8 pages, revision B, updated 5/08)
 
Migrating from AT89C2051/C4051 to AT89S2051/S4051 (4 pages, revision A, updated 5/05)
 
Migrating from AT89C51/C52 to AT89S51/S52 (3 pages, updated 6/04)
 
Migrating from AT89S8252/S53 to AT89S8253 (7 pages, revision E, updated 10/05)
 
Migrating from Philips P89LPC913 to Atmel AT89LP214 (6 pages, revision A, updated 7/06)
 
Migrating from Philips: P89C51RB2, P89C51RC2, P89C51RD2, P89C660, P89C662, P89C664 to Atmel: AT89C5 (30 pages, revision A, updated 04/06)
This application note is a guide to help current PhilipsŪP89C51RB2/RC2/RD2/C660/C662/C664 users convert existing designs to AtmelŪ AT89C51RB2/RB2/RC2/IC2/RD2/1ED2/ID2.
 
Migrating from T89C51CC01 & AT89C51CC03, to AT90CAN128, AT90CAN64, AT90CAN32 (7 pages, revision A, updated 06/05)
This application note is a guide, on the CAN controller, to help current T89C51CC01, AT89C51CC03 users convert existing designs to AT90CAN128, AT90CAN64, AT90CAN32.
 
Migrating from T89C51CC01 to AT89C51CC03 (6 pages, revision B, updated 06/05)
This application note is a guide to assist T89C51CC01 users in converting existing designs to the AT89C51CC03 devices.
 
Migration from AT89C5131 & AT89C5131A-L to AT89C5131A-M (6 pages, updated 11/04)
This application note is a guide to assist current AT89C5131 & AT89C5131A-L users in converting existing designs to the AT89C5131A-M devices.
 
Migration from AT89C51RD2/ED2/ID2 to AT89C51RE2 (8 pages, revision B, updated 03/07)
This application note is a guide to assist current AT89C51RD2/ED2/ID2 users in con-verting existing designs to the AT89C51RE2 devices.
 
Migration From AT89C51SND1C to AT83C51SDN1C (7 pages, updated 5/03)
This application note details the differences between AT89C51SND1C and AT83C51SDN1C products, and gives some tips and tricks to the user when migrating from Flash to ROM product from a hardware and firmware point of view.
Top