电子工程世界电子工程世界电子工程世界

型号

产品描述

搜索
 

atmega128

器件型号:ATMEGA128
器件类别:微处理器
文件大小:317.59KB,共0页
厂商名称:ATMEL [ATMEL Corporation]
厂商官网:http://www.atmel.com/
下载文档

器件描述

8-bit AVR Microcontroller with 128K Bytes In-System Programmable

参数

ATMEGA128功能数量 1
ATMEGA128端子数量 64
ATMEGA128最大工作温度 70 Cel
ATMEGA128最小工作温度 0.0 Cel
ATMEGA128最大供电/工作电压 5.5 V
ATMEGA128最小供电/工作电压 4.5 V
ATMEGA128额定供电电压 5 V
ATMEGA128外部数据总线宽度 8
ATMEGA128输入输出总线数量 53
ATMEGA128线速度 16 MHz
ATMEGA128加工封装描述 14 × 14 MM, 1 MM HEIGHT, 0.80 MM PITCH, 塑料, MS-026AEB, TQFP-64
ATMEGA128状态 DISCONTINUED
ATMEGA128工艺 CMOS
ATMEGA128包装形状 SQUARE
ATMEGA128包装尺寸 FLATPACK, THIN PROFILE
ATMEGA128表面贴装 Yes
ATMEGA128端子形式 GULL WING
ATMEGA128端子间距 0.8000 mm
ATMEGA128端子涂层 锡 铅
ATMEGA128端子位置
ATMEGA128包装材料 塑料/环氧树脂
ATMEGA128温度等级 COMMERCIAL
ATMEGA128ADC通道 Yes
ATMEGA128地址总线宽度 16
ATMEGA128位数 8
ATMEGA128最大FCLK时钟频率 16 MHz
ATMEGA128微处理器类型 精简指令集微控制器
ATMEGA128PWM通道 Yes
ATMEGA128ROM编程 FLASH

文档预览

atmega128器件文档内容

Features                                                                              8-bit
                                                                                      Microcontroller
High-performance, Low-power AVR 8-bit Microcontroller                              with 128K Bytes
Advanced RISC Architecture                                                          In-System
                                                                                      Programmable
       133 Powerful Instructions Most Single Clock Cycle Execution                 Flash
       32 x 8 General Purpose Working Registers + Peripheral Control Registers       ATmega128
       Fully Static Operation                                                        ATmega128L
       Up to 16 MIPS Throughput at 16 MHz                                            Summary
       On-chip 2-cycle Multiplier
Nonvolatile Program and Data Memories                                                                        Rev. 2467OSAVR10/06
       128K Bytes of In-System Reprogrammable Flash

            Endurance: 10,000 Write/Erase Cycles
       Optional Boot Code Section with Independent Lock Bits

            In-System Programming by On-chip Boot Program
            True Read-While-Write Operation
       4K Bytes EEPROM
            Endurance: 100,000 Write/Erase Cycles
       4K Bytes Internal SRAM
       Up to 64K Bytes Optional External Memory Space
       Programming Lock for Software Security
       SPI Interface for In-System Programming
JTAG (IEEE std. 1149.1 Compliant) Interface
       Boundary-scan Capabilities According to the JTAG Standard
       Extensive On-chip Debug Support
       Programming of Flash, EEPROM, Fuses and Lock Bits through the JTAG Interface
Peripheral Features
       Two 8-bit Timer/Counters with Separate Prescalers and Compare Modes
       Two Expanded 16-bit Timer/Counters with Separate Prescaler, Compare Mode and
         Capture Mode
       Real Time Counter with Separate Oscillator
       Two 8-bit PWM Channels
       6 PWM Channels with Programmable Resolution from 2 to 16 Bits
       Output Compare Modulator
       8-channel, 10-bit ADC
            8 Single-ended Channels
            7 Differential Channels
            2 Differential Channels with Programmable Gain at 1x, 10x, or 200x
       Byte-oriented Two-wire Serial Interface
       Dual Programmable Serial USARTs
       Master/Slave SPI Serial Interface
       Programmable Watchdog Timer with On-chip Oscillator
       On-chip Analog Comparator
Special Microcontroller Features
       Power-on Reset and Programmable Brown-out Detection
       Internal Calibrated RC Oscillator
       External and Internal Interrupt Sources
       Six Sleep Modes: Idle, ADC Noise Reduction, Power-save, Power-down, Standby,
         and Extended Standby
       Software Selectable Clock Frequency
       ATmega103 Compatibility Mode Selected by a Fuse
       Global Pull-up Disable
I/O and Packages
       53 Programmable I/O Lines
       64-lead TQFP and 64-pad QFN/MLF
Operating Voltages
       2.7 - 5.5V for ATmega128L
       4.5 - 5.5V for ATmega128
Speed Grades
       0 - 8 MHz for ATmega128L
       0 - 16 MHz for ATmega128
Pin Configurations Figure 1. Pinout ATmega128                                 64 AVCC
                                                                                  63 GND
                                                                         PEN 1        62 AREF
                                                         RXD0/(PDI) PE0 2                  61 PF0 (ADC0)
                                                        (TXD0/PDO) PE1 3                       60 PF1 (ADC1)
                                                        (XCK0/AIN0) PE2 4                          59 PF2 (ADC2)
                                                       (OC3A/AIN1) PE3 5                                58 PF3 (ADC3)
                                                       (OC3B/INT4) PE4 6                                    57 PF4 (ADC4/TCK)
                                                       (OC3C/INT5) PE5 7                                        56 PF5 (ADC5/TMS)
                                                                                                                     55 PF6 (ADC6/TDO)
                                                            (T3/INT6) PE6 8                                              54 PF7 (ADC7/TDI)
                                                         (ICP3/INT7) PE7 9                                                   53 GND
                                                                                                                                  52 VCC
                                                                   (SS) PB0 10                                                        51 PA0 (AD0)
                                                                 (SCK) PB1 11                                                              50 PA1 (AD1)
                                                               (MOSI) PB2 12                                                                   49 PA2 (AD2)
                                                               (MISO) PB3 13             48 PA3 (AD3)
                                                                 (OC0) PB4 14            47 PA4 (AD4)
                                                               (OC1A) PB5 15             46 PA5 (AD5)
                                                               (OC1B) PB6 16             45 PA6 (AD6)
             (OC2/OC1C) PB7 17                                                           44 PA7 (AD7)
                 TOSC2/PG3 18                                                            43 PG2(ALE)
                     TOSC1/PG4 19                                                        42 PC7 (A15)
                          RESET 20                                                       41 PC6 (A14)
                              VCC 21                                                     40 PC5 (A13)
                                  GND 22                                                 39 PC4 (A12)
                                       XTAL2 23                                          38 PC3 (A11)
                                           XTAL1 24                                      37 PC2 (A10)
                                                                                         36 PC1 (A9)
                                               (SCL/INT0) PD0 25                         35 PC0 (A8)
                                                    (SDA/INT1) PD1 26                    34 PG1(RD)
                                                        (RXD1/INT2) PD2 27               33 PG0(WR)
                                                            (TXD1/INT3) PD3 28

                                                                 (ICP1) PD4 29
                                                                     (XCK1) PD5 30

                                                                          (T1) PD6 31
                                                                              (T2) PD7 32

Overview     Note: The Pinout figure applies to both TQFP and MLF packages. The bottom pad under the
                         QFN/MLF package should be soldered to ground.

             The ATmega128 is a low-power CMOS 8-bit microcontroller based on the AVR
             enhanced RISC architecture. By executing powerful instructions in a single clock cycle,
             the ATmega128 achieves throughputs approaching 1 MIPS per MHz allowing the sys-
             tem designer to optimize power consumption versus processing speed.

2 ATmega128

                                                                                                                                                             2467OSAVR10/06
                                                                                                                           ATmega128

Block Diagram

Figure 2. Block Diagram

                         PF0 - PF7                                    PA0 - PA7                               PC0 - PC7            XTAL1
                     PORTF DRIVERS                                  PORTA DRIVERS                        PORTC DRIVERS                         XTAL2
                                                                                                                                                        RESET

VCC
GND

                     DATA REGISTER        DATA DIR.  DATA REGISTER             DATA DIR.   DATA REGISTER                DATA DIR.
                            PORTF       REG. PORTF          PORTA            REG. PORTA           PORTC               REG. PORTC

                                                                                   8-BIT DATA BUS

AVCC                                       ADC                                  INTERNAL                  CALIB. OSC
                                                                              OSCILLATOR
AGND                                  PROGRAM                                                            OSCILLATOR
AREF                                  COUNTER                                  WATCHDOG
                                                                                   TIMER                 OSCILLATOR
      JTAG TAP                        PROGRAM           STACK                                            TIMING AND
                                         FLASH         POINTER               MCU CONTROL                   CONTROL
      ON-CHIP DEBUG                                                             REGISTER
                                    INSTRUCTION          SRAM
      BOUNDARY-                       REGISTER                                     TIMER/
          SCAN                                        GENERAL                  COUNTERS
                                     INSTRUCTION      PURPOSE
PEN   PROGRAMMING                      DECODER       REGISTERS                 INTERRUPT
             LOGIC                                                                  UNIT
                                      CONTROL                  X
                                         LINES                 Y                 EEPROM
                                                               Z

                                                          ALU

                                                        STATUS
                                                      REGISTER

                     USART0                                                        SPI                   USART1       TWO-WIRE SERIAL
                                                                                                                           INTERFACE

      ANALOG         DATA REGISTER    DATA DIR.      DATA REGISTER    DATA DIR.           DATA REGISTER         DATA DIR.  DATA REG. DATA DIR.
         COMPARATOR         PORTE   REG. PORTE              PORTB   REG. PORTB                  PORTD         REG. PORTD     PORTG REG. PORTG

              +
                  -

                     PORTE DRIVERS                   PORTB DRIVERS                         PORTD DRIVERS                           PORTG DRIVERS

                             PE0 - PE7                            PB0 - PB7                        PD0 - PD7                           PG0 - PG4

                                                                                                                                                                  3

2467OSAVR10/06
ATmega103 and  The AVR core combines a rich instruction set with 32 general purpose working registers.
ATmega128      All the 32 registers are directly connected to the Arithmetic Logic Unit (ALU), allowing
Compatibility  two independent registers to be accessed in one single instruction executed in one clock
               cycle. The resulting architecture is more code efficient while achieving throughputs up to
               ten times faster than conventional CISC microcontrollers.

               The ATmega128 provides the following features: 128K bytes of In-System Programma-
               ble Flash with Read-While-Write capabilities, 4K bytes EEPROM, 4K bytes SRAM, 53
               general purpose I/O lines, 32 general purpose working registers, Real Time Counter
               (RTC), four flexible Timer/Counters with compare modes and PWM, 2 USARTs, a byte
               oriented Two-wire Serial Interface, an 8-channel, 10-bit ADC with optional differential
               input stage with programmable gain, programmable Watchdog Timer with Internal Oscil-
               lator, an SPI serial port, IEEE std. 1149.1 compliant JTAG test interface, also used for
               accessing the On-chip Debug system and programming and six software selectable
               power saving modes. The Idle mode stops the CPU while allowing the SRAM,
               Timer/Counters, SPI port, and interrupt system to continue functioning. The Power-
               down mode saves the register contents but freezes the Oscillator, disabling all other
               chip functions until the next interrupt or Hardware Reset. In Power-save mode, the asyn-
               chronous timer continues to run, allowing the user to maintain a timer base while the
               rest of the device is sleeping. The ADC Noise Reduction mode stops the CPU and all
               I/O modules except Asynchronous Timer and ADC, to minimize switching noise during
               ADC conversions. In Standby mode, the Crystal/Resonator Oscillator is running while
               the rest of the device is sleeping. This allows very fast start-up combined with low power
               consumption. In Extended Standby mode, both the main Oscillator and the Asynchro-
               nous Timer continue to run.

               The device is manufactured using Atmel's high-density nonvolatile memory technology.
               The On-chip ISP Flash allows the program memory to be reprogrammed in-system
               through an SPI serial interface, by a conventional nonvolatile memory programmer, or
               by an On-chip Boot program running on the AVR core. The boot program can use any
               interface to download the application program in the application Flash memory. Soft-
               ware in the Boot Flash section will continue to run while the Application Flash section is
               updated, providing true Read-While-Write operation. By combining an 8-bit RISC CPU
               with In-System Self-Programmable Flash on a monolithic chip, the Atmel ATmega128 is
               a powerful microcontroller that provides a highly flexible and cost effective solution to
               many embedded control applications.

               The ATmega128 AVR is supported with a full suite of program and system development
               tools including: C compilers, macro assemblers, program debugger/simulators, in-circuit
               emulators, and evaluation kits.

               The ATmega128 is a highly complex microcontroller where the number of I/O locations
               supersedes the 64 I/O locations reserved in the AVR instruction set. To ensure back-
               ward compatibility with the ATmega103, all I/O locations present in ATmega103 have
               the same location in ATmega128. Most additional I/O locations are added in an
               Extended I/O space starting from $60 to $FF, (i.e., in the ATmega103 internal RAM
               space). These locations can be reached by using LD/LDS/LDD and ST/STS/STD
               instructions only, not by using IN and OUT instructions. The relocation of the internal
               RAM space may still be a problem for ATmega103 users. Also, the increased number of
               interrupt vectors might be a problem if the code uses absolute addresses. To solve
               these problems, an ATmega103 compatibility mode can be selected by programming
               the fuse M103C. In this mode, none of the functions in the Extended I/O space are in
               use, so the internal RAM is located as in ATmega103. Also, the Extended Interrupt vec-
               tors are removed.

4 ATmega128

               2467OSAVR10/06
                         ATmega128

ATmega103 Compatibility  The ATmega128 is 100% pin compatible with ATmega103, and can replace the
Mode                     ATmega103 on current Printed Circuit Boards. The application note "Replacing
                         ATmega103 by ATmega128" describes what the user should be aware of replacing the
Pin Descriptions         ATmega103 by an ATmega128.

VCC                      By programming the M103C fuse, the ATmega128 will be compatible with the
GND                      ATmega103 regards to RAM, I/O pins and interrupt vectors as described above. How-
Port A (PA7..PA0)        ever, some new features in ATmega128 are not available in this compatibility mode,
Port B (PB7..PB0)        these features are listed below:
                         One USART instead of two, Asynchronous mode only. Only the eight least

                              significant bits of the Baud Rate Register is available.
                         One 16 bits Timer/Counter with two compare registers instead of two 16-bit

                              Timer/Counters with three compare registers.
                         Two-wire serial interface is not supported.
                         Port C is output only.
                         Port G serves alternate functions only (not a general I/O port).
                         Port F serves as digital input only in addition to analog input to the ADC.
                         Boot Loader capabilities is not supported.
                         It is not possible to adjust the frequency of the internal calibrated RC Oscillator.
                         The External Memory Interface can not release any Address pins for general I/O,

                              neither configure different wait-states to different External Memory Address
                              sections.

                         In addition, there are some other minor differences to make it more compatible to
                         ATmega103:
                         Only EXTRF and PORF exists in MCUCSR.
                         Timed sequence not required for Watchdog Time-out change.
                         External Interrupt pins 3 - 0 serve as level interrupt only.
                         USART has no FIFO buffer, so data overrun comes earlier.

                         Unused I/O bits in ATmega103 should be written to 0 to ensure same operation in
                         ATmega128.

                         Digital supply voltage.

                         Ground.

                         Port A is an 8-bit bi-directional I/O port with internal pull-up resistors (selected for each
                         bit). The Port A output buffers have symmetrical drive characteristics with both high sink
                         and source capability. As inputs, Port A pins that are externally pulled low will source
                         current if the pull-up resistors are activated. The Port A pins are tri-stated when a reset
                         condition becomes active, even if the clock is not running.

                         Port A also serves the functions of various special features of the ATmega128 as listed
                         on page 72.

                         Port B is an 8-bit bi-directional I/O port with internal pull-up resistors (selected for each
                         bit). The Port B output buffers have symmetrical drive characteristics with both high sink
                         and source capability. As inputs, Port B pins that are externally pulled low will source

                                                                                                                                                                  5

2467OSAVR10/06
                   current if the pull-up resistors are activated. The Port B pins are tri-stated when a reset
                   condition becomes active, even if the clock is not running.

                   Port B also serves the functions of various special features of the ATmega128 as listed
                   on page 73.

Port C (PC7..PC0)  Port C is an 8-bit bi-directional I/O port with internal pull-up resistors (selected for each
                   bit). The Port C output buffers have symmetrical drive characteristics with both high sink
Port D (PD7..PD0)  and source capability. As inputs, Port C pins that are externally pulled low will source
Port E (PE7..PE0)  current if the pull-up resistors are activated. The Port C pins are tri-stated when a reset
Port F (PF7..PF0)  condition becomes active, even if the clock is not running.

                   Port C also serves the functions of special features of the ATmega128 as listed on page
                   76. In ATmega103 compatibility mode, Port C is output only, and the port C pins are not
                   tri-stated when a reset condition becomes active.

                   Note:  The ATmega128 is by default shipped in ATmega103 compatibility mode. Thus, if the
                          parts are not programmed before they are put on the PCB, PORTC will be output during
                          first power up, and until the ATmega103 compatibility mode is disabled.

                   Port D is an 8-bit bi-directional I/O port with internal pull-up resistors (selected for each
                   bit). The Port D output buffers have symmetrical drive characteristics with both high sink
                   and source capability. As inputs, Port D pins that are externally pulled low will source
                   current if the pull-up resistors are activated. The Port D pins are tri-stated when a reset
                   condition becomes active, even if the clock is not running.

                   Port D also serves the functions of various special features of the ATmega128 as listed
                   on page 77.

                   Port E is an 8-bit bi-directional I/O port with internal pull-up resistors (selected for each
                   bit). The Port E output buffers have symmetrical drive characteristics with both high sink
                   and source capability. As inputs, Port E pins that are externally pulled low will source
                   current if the pull-up resistors are activated. The Port E pins are tri-stated when a reset
                   condition becomes active, even if the clock is not running.

                   Port E also serves the functions of various special features of the ATmega128 as listed
                   on page 80.

                   Port F serves as the analog inputs to the A/D Converter.

                   Port F also serves as an 8-bit bi-directional I/O port, if the A/D Converter is not used.
                   Port pins can provide internal pull-up resistors (selected for each bit). The Port F output
                   buffers have symmetrical drive characteristics with both high sink and source capability.
                   As inputs, Port F pins that are externally pulled low will source current if the pull-up
                   resistors are activated. The Port F pins are tri-stated when a reset condition becomes
                   active, even if the clock is not running. If the JTAG interface is enabled, the pull-up resis-
                   tors on pins PF7(TDI), PF5(TMS), and PF4(TCK) will be activated even if a Reset
                   occurs.

                   The TDO pin is tri-stated unless TAP states that shift out data are entered.

                   Port F also serves the functions of the JTAG interface.

                   In ATmega103 compatibility mode, Port F is an input Port only.

6 ATmega128

                          2467OSAVR10/06
Port G (PG4..PG0)                                                  ATmega128

RESET              Port G is a 5-bit bi-directional I/O port with internal pull-up resistors (selected for each
XTAL1              bit). The Port G output buffers have symmetrical drive characteristics with both high sink
XTAL2              and source capability. As inputs, Port G pins that are externally pulled low will source
AVCC               current if the pull-up resistors are activated. The Port G pins are tri-stated when a reset
AREF               condition becomes active, even if the clock is not running.
PEN                Port G also serves the functions of various special features.
                   The port G pins are tri-stated when a reset condition becomes active, even if the clock is
Resources          not running.
                   In ATmega103 compatibility mode, these pins only serves as strobes signals to the
                   external memory as well as input to the 32 kHz Oscillator, and the pins are initialized to
                   PG0 = 1, PG1 = 1, and PG2 = 0 asynchronously when a reset condition becomes active,
                   even if the clock is not running. PG3 and PG4 are oscillator pins.

                   Reset input. A low level on this pin for longer than the minimum pulse length will gener-
                   ate a reset, even if the clock is not running. The minimum pulse length is given in Table
                   19 on page 50. Shorter pulses are not guaranteed to generate a reset.

                   Input to the inverting Oscillator amplifier and input to the internal clock operating circuit.

                   Output from the inverting Oscillator amplifier.

                   AVCC is the supply voltage pin for Port F and the A/D Converter. It should be externally
                   connected to VCC, even if the ADC is not used. If the ADC is used, it should be con-
                   nected to VCC through a low-pass filter.

                   AREF is the analog reference pin for the A/D Converter.

                   PEN is a programming enable pin for the SPI Serial Programming mode, and is inter-
                   nally pulled high . By holding this pin low during a Power-on Reset, the device will enter
                   the SPI Serial Programming mode. PEN has no function during normal operation.

                   A comprehensive set of development tools, application notes, and datasheets are avail-
                   able for download on http://www.atmel.com/avr.

                                                                                                                                                                  7

2467OSAVR10/06
Register Summary

Address    Name       Bit 7    Bit 6  Bit 5   Bit 4   Bit 3                                Bit 2  Bit 1          Bit 0  Page
                                                                                                                  
   ($FF)  Reserved                                                                                               192
      ..  Reserved                                                                                                    190
          Reserved                                                                                                 190
   ($9E)  UCSR1C             UMSEL1                                                                            UCPOL1    191
   ($9D)              RXC1                                                                                          194
   ($9C)    UDR1    RXCIE1     TXC1                                                                            MPCM1     194
   ($9B)  UCSR1A             TXCIE1   UPM11   UPM10   USBS1                            UCSZ11     UCSZ10        TXB81
   ($9A)  UCSR1B                                                                                                        192
   ($99)  UBRR1L                            USART1 I/O Data Register                                             
   ($98)  UBRR1H                                                                                                      194
   ($97)  Reserved                  UDRE1   FE1     DOR1                                 UPE1   U2X1         UCPOL0
   ($96)  Reserved          UMSEL0                                                                                     137
   ($95)  UCSR0C                    UDRIE1  RXEN1   TXEN1                            UCSZ12     RXB81                 133
   ($94)  Reserved                                                                                                    136
   ($93)  Reserved                          USART1 Baud Rate Register Low                                             138
   ($92)  Reserved                                                                                                     138
   ($91)  Reserved                                                         USART1 Baud Rate Register High           138
   ($90)  UBRR0H                                                                                                      138
   ($8F)  Reserved                                                                                               139
   ($8E)  Reserved   FOC3A                                                                                             139
   ($8D)  Reserved  COM3A1    FOC3B                                                                       WGM30     139
   ($8C)  TCCR3C     ICNC3   COM3A0                                                                              CS30    139
   ($8B)  TCCR3A              ICES3   UPM01   UPM00   USBS0                            UCSZ01     UCSZ00                 139
   ($8A)  TCCR3B                                                                                                       139
   ($89)  TCNT3H                                                                                             
   ($88)  TCNT3L                                                                                             OCIE1C    140
   ($87)  OCR3AH                                                                                         OCF1C    141
   ($86)  OCR3AL                                                                                                  
   ($85)  OCR3BH     FOC1A                                                                                        137
   ($84)  OCR3BL              FOC1B                                                                                      138
   ($83)  OCR3CH                                                                                                  138
   ($82)  OCR3CL                                                                                                  
   ($81)                                                                   USART0 Baud Rate Register High           207
   ($80)   ICR3H     TWINT                                                                                      TWIE    209
   ($7F)    ICR3L             TWEA                                                                                  209
   ($7E)  Reserved    TWA6                                                                                     TWGCE     208
   ($7D)  Reserved    TWS7     TWA5                                                                        TWPS0    207
   ($7C)  ETIMSK               TWS6                                                                                       41
   ($7B)    ETIFR                                                                                             
   ($7A)  Reserved                                                                                                      31
   ($79)  TCCR1C     XMBK      SRL2   FOC3C                                                                 XMM0      33
   ($78)  OCR1CH                                                                                                   
   ($77)  OCR1CL      ISC31          COM3B1  COM3B0  COM3C1                           COM3C0     WGM31                   89
   ($76)  Reserved                                                                                             ISC00
   ($75)  Reserved   SPMIE     ISC30         WGM33   WGM32                                CS32   CS31                  280
   ($74)  Reserved               
   ($73)   TWCR             RWWSB            Timer/Counter3 Counter Register High Byte                      SPMEN      88
   ($72)   TWDR                                                                                                        88
   ($71)    TWAR                            Timer/Counter3 Counter Register Low Byte                                 88
   ($70)    TWSR                                                                                                        87
   ($6F)    TWBR    PORTF7           Timer/Counter3 Output Compare Register A High Byte                     PORTG0
   ($6E)  OSCCAL                                                                                                DDG0
   ($6D)  Reserved           PORTF6   Timer/Counter3 Output Compare Register A Low Byte                       PING0
   ($6C)   XMCRA
   ($6B)   XMCRB                      Timer/Counter3 Output Compare Register B High Byte                     PORTF0
   ($6A)  Reserved
   ($69)   EICRA                      Timer/Counter3 Output Compare Register B Low Byte
   ($68)  Reserved
   ($67)  SPMCSR                      Timer/Counter3 Output Compare Register C High Byte
   ($66)  Reserved
   ($65)  Reserved                    Timer/Counter3 Output Compare Register C Low Byte
   ($64)   PORTG
   ($63)    DDRG                         Timer/Counter3 Input Capture Register High Byte
   ($62)    PING
           PORTF                         Timer/Counter3 Input Capture Register Low Byte

                                                                                              

                                                                                              

                                      TICIE3  OCIE3A  OCIE3B                               TOIE3  OCIE3C

                                      ICF3    OCF3A   OCF3B                                TOV3   OCF3C

                                                                                              

                                      FOC1C                                                    

                                      Timer/Counter1 Output Compare Register C High Byte

                                      Timer/Counter1 Output Compare Register C Low Byte

                                                                                              

                                                                                              

                                                                                              

                                      TWSTA   TWSTO   TWWC                                 TWEN   

                                              Two-wire Serial Interface Data Register

                                      TWA4    TWA3    TWA2                                 TWA1   TWA0

                                      TWS5    TWS4    TWS3                                       TWPS1

                                              Two-wire Serial Interface Bit Rate Register

                                              Oscillator Calibration Register

                                                                                              

                                      SRL1    SRL0    SRW01                            SRW00      SRW11

                                                                                        XMM2   XMM1

                                                                                              

                                      ISC21   ISC20   ISC11                                ISC10  ISC01

                                                                                              

                                             RWWSRE  BLBSET                           PGWRT      PGERS

                                                                                              

                                                                                              

                                             PORTG4  PORTG3                           PORTG2     PORTG1

                                             DDG4    DDG3                                 DDG2   DDG1

                                             PING4   PING3                                PING2  PING1

                                      PORTF5  PORTF4  PORTF3                           PORTF2     PORTF1

8 ATmega128

                                                                                                                        2467OSAVR10/06
                                                                                                               ATmega128

Register Summary (Continued)

Address     Name        Bit 7      Bit 6  Bit 5   Bit 4   Bit 3                           Bit 2    Bit 1         Bit 0        Page
                        DDF7       DDF6                                                                          DDF0
   ($61)     DDRF                         DDF5    DDF4    DDF3                            DDF2     DDF1                           88
   ($60)   Reserved                                                                                               
$3F ($5F)                   I         T                                                                        C             11
$3E ($5E)    SREG        SP15      SP14                                                                           SP8             14
$3D ($5D)     SPH        SP7        SP6   H       S       V                                    N   Z              SP0             14
$3C ($5C)     SPL      XDIVEN     XDIV6                                                                         XDIV0             43
$3B ($5B)     XDIV                      SP13    SP12    SP11                            SP10     SP9         RAMPZ0             14
$3A ($5A)   RAMPZ       ISC71      ISC70                                                                        ISC40             90
$39 ($59)    EICRB       INT7      INT6   SP5     SP4     SP3                                 SP2  SP1           INT0             91
$38 ($58)   EIMSK       INTF7      INTF6                                                                        INTF0             91
$37 ($57)     EIFR      OCIE2     TOIE2   XDIV5   XDIV4   XDIV3                           XDIV2    XDIV1        TOIE0     108, 140, 160
$36 ($56)   TIMSK       OCF2       TOV2                                                                          TOV0     108, 141, 160
$35 ($55)     TIFR       SRE     SRW10                                                                      IVCE        31, 44, 63
$34 ($54)   MCUCR         JTD                                                                                  PORF          53, 257
$33 ($53)  MCUCSR       FOC0     WGM00    ISC61   ISC60   ISC51                           ISC50    ISC41         CS00            103
$32 ($52)   TCCR0                                                                                                                105
$31 ($51)   TCNT0                       INT5    INT4    INT3                            INT2     INT1        TCR0UB            105
$30 ($50)    OCR0     COM1A1     COM1A0                                                                        WGM10             106
$2F ($4F)    ASSR                         INTF5   INTF4   INTF3                           INTF     INTF1                         133
$2E ($4E)  TCCR1A       ICNC1     ICES1                                                                          CS10            136
$2D ($4D)  TCCR1B                         TICIE1  OCIE1A  OCIE1B                          TOIE1    OCIE0                         138
$2C ($4C)  TCNT1H       FOC2     WGM20                                                                           CS20            138
$2B ($4B)  TCNT1L                         ICF1    OCF1A   OCF1B                           TOV1     OCF0                          138
$2A ($4A)  OCR1AH    IDRD/OCDR7  OCDR6                                                                         OCDR0             138
$29 ($49)  OCR1AL                        SE      SM1     SM0                             SM2      IVSEL        WDP0             138
$28 ($48)  OCR1BH                                                                                            PSR321            138
$27 ($47)  OCR1BL        TSM                    JTRF    WDRF                            BORF     EXTRF                         139
$26 ($46)    ICR1H                                                                                               EERE            139
$25 ($45)    ICR1L                      COM01   COM00   WGM01                           CS02     CS01        PORTA0            158
$24 ($44)   TCCR2                PORTA6                                                                                          160
$23 ($43)   TCNT2                                Timer/Counter0 (8 Bit)                                         DDA0            160
$22 ($42)    OCR2     PORTA7       DDA6                                                                         PINA0            254
$21 ($41)    OCDR                 PINA6           Timer/Counter0 Output Compare Register                       PORTB0             55
$20 ($40)   WDTCR       DDA7     PORTB6                                                                          DDB0   72, 109, 145, 229
$1F ($3F)    SFIOR      PINA7      DDB6                 AS0                       TCN0UB         OCR0UB       PINB0             21
$1E ($3E)   EEARH     PORTB7      PINB6                                                                        PORTC0             21
$1D ($3D)   EEARL       DDB7     PORTC6   COM1B1  COM1B0  COM1C1                    COM1C0         WGM11         DDC0             22
$1C ($3C)    EEDR       PINB7      DDC6                                                                         PINC0             22
$1B ($3B)    EECR     PORTC7      PINC6          WGM13   WGM12                           CS12     CS11        PORTD0             86
$1A ($3A)   PORTA       DDC7     PORTD6                                                                          DDD0             86
$19 ($39)    DDRA       PINC7      DDD6           Timer/Counter1 Counter Register High Byte                   PIND0             86
$18 ($38)     PINA    PORTD7      PIND6                                                                                           86
$17 ($37)   PORTB       DDD7                      Timer/Counter1 Counter Register Low Byte                    SPI2X             86
$16 ($36)    DDRB       PIND7     WCOL                                                                           SPR0             86
$15 ($35)     PINB                  SPE   Timer/Counter1 Output Compare Register A High Byte                                    86
$14 ($34)   PORTC        SPIF                                                                                  MPCM0              86
$13 ($33)    DDRC        SPIE      TXC0   Timer/Counter1 Output Compare Register A Low Byte                   TXB80             87
$12 ($32)     PINC               TXCIE0                                                                                           87
$11 ($31)   PORTD       RXC0              Timer/Counter1 Output Compare Register B High Byte                  ACIS0             87
$10 ($30)    DDRD      RXCIE0     ACBG                                                                          MUX0              87
$0F ($2F)     PIND                REFS0   Timer/Counter1 Output Compare Register B Low Byte                   ADPS0            170
$0E ($2E)    SPDR        ACD       ADSC                                                                                          170
$0D ($2D)    SPSR      REFS1                 Timer/Counter1 Input Capture Register High Byte                 PORTE0            168
$0C ($2C)    SPCR       ADEN     PORTE6                                                                          DDE0            190
$0B ($2B)    UDR0                  DDE6       Timer/Counter1 Input Capture Register Low Byte                                   190
$0A ($2A)  UCSR0A     PORTE7                                                                                                     191
$09 ($29)  UCSR0B       DDE7              COM21   COM20   WGM21                           CS22     CS21                          194
$08 ($28)  UBRR0L                                                                                                                229
$07 ($27)    ACSR                                 Timer/Counter2 (8 Bit)                                                         245
$06 ($26)   ADMUX                                                                                                                246
$05 ($25)  ADCSRA                                 Timer/Counter2 Output Compare Register                                         247
$04 ($24)    ADCH                                                                                                                247
$03 ($23)    ADCL                         OCDR5   OCDR4   OCDR3                     OCDR2          OCDR1                          87
$02 ($22)   PORTE                                                                                                                 87
             DDRE                                WDCE    WDE                             WDP2     WDP1

                                                        ACME                            PUD      PSR0

                                                                               EEPROM Address Register High

                                                  EEPROM Address Register Low Byte

                                                  EEPROM Data Register

                                                        EERIE                     EEMWE          EEWE

                                          PORTA5  PORTA4  PORTA3                    PORTA2         PORTA1

                                          DDA5    DDA4    DDA3                            DDA2     DDA1

                                          PINA5   PINA4   PINA3                           PINA2    PINA1

                                          PORTB5  PORTB4  PORTB3                    PORTB2         PORTB1

                                          DDB5    DDB4    DDB3                            DDB2     DDB1

                                          PINB5   PINB4   PINB3                           PINB2    PINB1

                                          PORTC5  PORTC4  PORTC3                    PORTC2         PORTC1

                                          DDC5    DDC4    DDC3                            DDC2     DDC1

                                          PINC5   PINC4   PINC3                           PINC2    PINC1

                                          PORTD5  PORTD4  PORTD3                    PORTD2         PORTD1

                                          DDD5    DDD4    DDD3                            DDD2     DDD1

                                          PIND5   PIND4   PIND3                           PIND2    PIND1

                                                     SPI Data Register

                                                                                               

                                          DORD    MSTR    CPOL                            CPHA     SPR1

                                                  USART0 I/O Data Register

                                          UDRE0   FE0     DOR0                            UPE0     U2X0

                                          UDRIE0  RXEN0   TXEN0                     UCSZ02         RXB80

                                                  USART0 Baud Rate Register Low

                                          ACO     ACI     ACIE                            ACIC     ACIS1

                                          ADLAR   MUX4    MUX3                            MUX2     MUX1

                                          ADFR    ADIF    ADIE                            ADPS2    ADPS1

                                                  ADC Data Register High Byte

                                                  ADC Data Register Low byte

                                          PORTE5  PORTE4  PORTE3                    PORTE2         PORTE1

                                          DDE5    DDE4    DDE3                            DDE2     DDE1

                                                                                                                                                                  9

2467OSAVR10/06
Register Summary (Continued)

Address    Name  Bit 7  Bit 6  Bit 5  Bit 4  Bit 3  Bit 2  Bit 1  Bit 0  Page

$01 ($21)  PINE  PINE7  PINE6  PINE5  PINE4  PINE3  PINE2  PINE1  PINE0  87

$00 ($20)  PINF  PINF7  PINF6  PINF5  PINF4  PINF3  PINF2  PINF1  PINF0  88

Notes:  1. For compatibility with future devices, reserved bits should be written to zero if accessed. Reserved I/O memory addresses
            should never be written.

        2. Some of the status flags are cleared by writing a logical one to them. Note that the CBI and SBI instructions will operate on
            all bits in the I/O register, writing a one back into any flag read as set, thus clearing the flag. The CBI and SBI instructions
            work with registers $00 to $1F only.

10 ATmega128

                                                                         2467OSAVR10/06
                                                                                                               ATmega128

Instruction Set Summary

Mnemonics         Operands         Description                               Operation                         Flags       #Clocks

ARITHMETIC AND LOGIC INSTRUCTIONS                                            Rd  Rd + Rr                       Z,C,N,V,H        1
                                                                             Rd  Rd + Rr + C                   Z,C,N,V,H        1
ADD               Rd, Rr           Add two Registers                         Rdh:Rdl  Rdh:Rdl + K              Z,C,N,V,S        2
                                                                             Rd  Rd - Rr                       Z,C,N,V,H        1
ADC               Rd, Rr           Add with Carry two Registers              Rd  Rd - K                        Z,C,N,V,H        1
                                                                             Rd  Rd - Rr - C                   Z,C,N,V,H        1
ADIW              Rdl,K            Add Immediate to Word                     Rd  Rd - K - C                    Z,C,N,V,H        1
                                                                             Rdh:Rdl  Rdh:Rdl - K              Z,C,N,V,S        2
SUB               Rd, Rr           Subtract two Registers                    Rd  Rd Rr                       Z,N,V            1
                                                                             Rd  Rd K                        Z,N,V            1
SUBI              Rd, K            Subtract Constant from Register           Rd  Rd v Rr                       Z,N,V            1
                                                                             Rd  Rd v K                        Z,N,V            1
SBC               Rd, Rr           Subtract with Carry two Registers         Rd  Rd  Rr                        Z,N,V            1
                                                                             Rd  $FF - Rd                      Z,C,N,V          1
SBCI              Rd, K            Subtract with Carry Constant from Reg.    Rd  $00 - Rd                      Z,C,N,V,H        1
                                                                             Rd  Rd v K                        Z,N,V            1
SBIW              Rdl,K            Subtract Immediate from Word              Rd  Rd ($FF - K)                Z,N,V            1
                                                                             Rd  Rd + 1                        Z,N,V            1
AND               Rd, Rr           Logical AND Registers                     Rd  Rd - 1                        Z,N,V            1
                                                                             Rd  Rd Rd                       Z,N,V            1
ANDI              Rd, K            Logical AND Register and Constant         Rd  Rd  Rd                        Z,N,V            1
                                                                             Rd  $FF                           None             1
OR                Rd, Rr           Logical OR Registers                      R1:R0  Rd x Rr                    Z,C              2
                                                                             R1:R0  Rd x Rr                    Z,C              2
ORI               Rd, K            Logical OR Register and Constant          R1:R0  Rd x Rr                    Z,C              2
                                                                                                               Z,C              2
EOR               Rd, Rr           Exclusive OR Registers                    R1:R0  (Rd x Rr) << 1             Z,C              2
                                                                             R1:R0  (Rd x Rr) << 1             Z,C              2
COM               Rd               One's Complement                          R1:R0  (Rd x Rr) << 1
                                                                                                               None             2
NEG               Rd               Two's Complement                          PC  PC + k + 1                    None             2
                                                                             PC  Z                             None             3
SBR               Rd,K             Set Bit(s) in Register                    PC  k                             None             3
                                                                             PC  PC + k + 1                    None             3
CBR               Rd,K             Clear Bit(s) in Register                  PC  Z                             None             4
                                                                             PC  k                             None             4
INC               Rd               Increment                                 PC  STACK                         I                4
                                                                             PC  STACK                         None         1/2/3
DEC               Rd               Decrement                                 if (Rd = Rr) PC  PC + 2 or 3      Z, N,V,C,H       1
                                                                             Rd - Rr                           Z, N,V,C,H       1
TST               Rd               Test for Zero or Minus                    Rd - Rr - C                       Z, N,V,C,H       1
                                                                             Rd - K                            None         1/2/3
CLR               Rd               Clear Register                            if (Rr(b)=0) PC  PC + 2 or 3      None         1/2/3
                                                                             if (Rr(b)=1) PC  PC + 2 or 3      None         1/2/3
SER               Rd               Set Register                              if (P(b)=0) PC  PC + 2 or 3       None         1/2/3
                                                                             if (P(b)=1) PC  PC + 2 or 3       None           1/2
MUL               Rd, Rr           Multiply Unsigned                         if (SREG(s) = 1) then PCPC+k + 1  None           1/2
                                                                             if (SREG(s) = 0) then PCPC+k + 1  None           1/2
MULS              Rd, Rr           Multiply Signed                           if (Z = 1) then PC  PC + k + 1    None           1/2
                                                                             if (Z = 0) then PC  PC + k + 1    None           1/2
MULSU             Rd, Rr           Multiply Signed with Unsigned             if (C = 1) then PC  PC + k + 1    None           1/2
                                                                             if (C = 0) then PC  PC + k + 1    None           1/2
FMUL              Rd, Rr           Fractional Multiply Unsigned              if (C = 0) then PC  PC + k + 1    None           1/2
                                                                             if (C = 1) then PC  PC + k + 1    None           1/2
FMULS             Rd, Rr           Fractional Multiply Signed                if (N = 1) then PC  PC + k + 1    None           1/2
                                                                             if (N = 0) then PC  PC + k + 1    None           1/2
FMULSU            Rd, Rr           Fractional Multiply Signed with Unsigned  if (N  V= 0) then PC  PC + k + 1  None           1/2
                                                                             if (N  V= 1) then PC  PC + k + 1  None           1/2
BRANCH INSTRUCTIONS                                                          if (H = 1) then PC  PC + k + 1    None           1/2
                                                                             if (H = 0) then PC  PC + k + 1    None           1/2
RJMP              k                Relative Jump                             if (T = 1) then PC  PC + k + 1    None           1/2
                                                                             if (T = 0) then PC  PC + k + 1    None           1/2
IJMP                               Indirect Jump to (Z)                      if (V = 1) then PC  PC + k + 1    None           1/2
                                                                             if (V = 0) then PC  PC + k + 1
JMP               k                Direct Jump                                                                                    11

RCALL             k                Relative Subroutine Call

ICALL                              Indirect Call to (Z)

CALL              k                Direct Subroutine Call

RET                                Subroutine Return

RETI                               Interrupt Return

CPSE              Rd,Rr            Compare, Skip if Equal

CP                Rd,Rr            Compare

CPC               Rd,Rr            Compare with Carry

CPI               Rd,K             Compare Register with Immediate

SBRC              Rr, b            Skip if Bit in Register Cleared

SBRS              Rr, b            Skip if Bit in Register is Set

SBIC              P, b             Skip if Bit in I/O Register Cleared

SBIS              P, b             Skip if Bit in I/O Register is Set

BRBS              s, k             Branch if Status Flag Set

BRBC              s, k             Branch if Status Flag Cleared

BREQ              k                Branch if Equal

BRNE              k                Branch if Not Equal

BRCS              k                Branch if Carry Set

BRCC              k                Branch if Carry Cleared

BRSH              k                Branch if Same or Higher

BRLO              k                Branch if Lower

BRMI              k                Branch if Minus

BRPL              k                Branch if Plus

BRGE              k                Branch if Greater or Equal, Signed

BRLT              k                Branch if Less Than Zero, Signed

BRHS              k                Branch if Half Carry Flag Set

BRHC              k                Branch if Half Carry Flag Cleared

BRTS              k                Branch if T Flag Set

BRTC              k                Branch if T Flag Cleared

BRVS              k                Branch if Overflow Flag is Set

BRVC              k                Branch if Overflow Flag is Cleared

2467OSAVR10/06
Instruction Set Summary (Continued)

Mnemonics  Operands            Description                                Operation                          Flags    #Clocks

BRIE       k                   Branch if Interrupt Enabled                if ( I = 1) then PC  PC + k + 1    None        1/2
                               Branch if Interrupt Disabled               if ( I = 0) then PC  PC + k + 1    None        1/2
BRID       k
                               Move Between Registers                     Rd  Rr                             None          1
DATA TRANSFER INSTRUCTIONS     Copy Register Word                         Rd+1:Rd  Rr+1:Rr                   None          1
                               Load Immediate                             Rd  K                              None          1
MOV        Rd, Rr              Load Indirect                              Rd  (X)                            None          2
                               Load Indirect and Post-Inc.                Rd  (X), X  X + 1                  None          2
MOVW       Rd, Rr              Load Indirect and Pre-Dec.                 X  X - 1, Rd  (X)                  None          2
                               Load Indirect                              Rd  (Y)                            None          2
LDI        Rd, K               Load Indirect and Post-Inc.                Rd  (Y), Y  Y + 1                  None          2
                               Load Indirect and Pre-Dec.                 Y  Y - 1, Rd  (Y)                  None          2
LD         Rd, X               Load Indirect with Displacement            Rd  (Y + q)                        None          2
                               Load Indirect                              Rd  (Z)                            None          2
LD         Rd, X+              Load Indirect and Post-Inc.                Rd  (Z), Z  Z+1                    None          2
                               Load Indirect and Pre-Dec.                 Z  Z - 1, Rd  (Z)                  None          2
LD         Rd, - X             Load Indirect with Displacement            Rd  (Z + q)                        None          2
                               Load Direct from SRAM                      Rd  (k)                            None          2
LD         Rd, Y               Store Indirect                             (X)  Rr                            None          2
                               Store Indirect and Post-Inc.               (X)  Rr, X  X + 1                  None          2
LD         Rd, Y+              Store Indirect and Pre-Dec.                X  X - 1, (X)  Rr                  None          2
                               Store Indirect                             (Y)  Rr                            None          2
LD         Rd, - Y             Store Indirect and Post-Inc.               (Y)  Rr, Y  Y + 1                  None          2
                               Store Indirect and Pre-Dec.                Y  Y - 1, (Y)  Rr                  None          2
LDD        Rd,Y+q              Store Indirect with Displacement           (Y + q)  Rr                        None          2
                               Store Indirect                             (Z)  Rr                            None          2
LD         Rd, Z               Store Indirect and Post-Inc.               (Z)  Rr, Z  Z + 1                  None          2
                               Store Indirect and Pre-Dec.                Z  Z - 1, (Z)  Rr                  None          2
LD         Rd, Z+              Store Indirect with Displacement           (Z + q)  Rr                        None          2
                               Store Direct to SRAM                       (k)  Rr                            None          2
LD         Rd, -Z              Load Program Memory                        R0  (Z)                            None          3
                               Load Program Memory                        Rd  (Z)                            None          3
LDD        Rd, Z+q             Load Program Memory and Post-Inc           Rd  (Z), Z  Z+1                    None          3
                               Extended Load Program Memory               R0  (RAMPZ:Z)                      None          3
LDS        Rd, k               Extended Load Program Memory               Rd  (RAMPZ:Z)                      None          3
                               Extended Load Program Memory and Post-Inc  Rd  (RAMPZ:Z), RAMPZ:Z  RAMPZ:Z+1  None          3
ST         X, Rr               Store Program Memory                       (Z)  R1:R0                         None           -
                               In Port                                    Rd  P                              None          1
ST         X+, Rr              Out Port                                   P  Rr                              None          1
                               Push Register on Stack                     STACK  Rr                          None          2
ST         - X, Rr             Pop Register from Stack                    Rd  STACK                          None          2

ST         Y, Rr               Set Bit in I/O Register                    I/O(P,b)  1                        None          2
                               Clear Bit in I/O Register                  I/O(P,b)  0                        None          2
ST         Y+, Rr              Logical Shift Left                         Rd(n+1)  Rd(n), Rd(0)  0           Z,C,N,V       1
                               Logical Shift Right                        Rd(n)  Rd(n+1), Rd(7)  0           Z,C,N,V       1
ST         - Y, Rr             Rotate Left Through Carry                  Rd(0)C,Rd(n+1) Rd(n),CRd(7)        Z,C,N,V       1
                               Rotate Right Through Carry                 Rd(7)C,Rd(n) Rd(n+1),CRd(0)        Z,C,N,V       1
STD        Y+q,Rr              Arithmetic Shift Right                     Rd(n)  Rd(n+1), n=0..6             Z,C,N,V       1
                               Swap Nibbles                               Rd(3..0)Rd(7..4),Rd(7..4)Rd(3..0)  None          1
ST         Z, Rr               Flag Set                                   SREG(s)  1                         SREG(s)       1
                               Flag Clear                                 SREG(s)  0                         SREG(s)       1
ST         Z+, Rr              Bit Store from Register to T               T  Rr(b)                           T             1
                               Bit load from T to Register                Rd(b)  T                           None          1
ST         -Z, Rr              Set Carry                                  C1                                 C             1
                               Clear Carry                                C0                                 C             1
STD        Z+q,Rr              Set Negative Flag                          N1                                 N             1
                               Clear Negative Flag                        N0                                 N             1
STS        k, Rr               Set Zero Flag                              Z1                                 Z             1
                               Clear Zero Flag                            Z0                                 Z             1
LPM                            Global Interrupt Enable                    I1                                 I             1
                               Global Interrupt Disable                   I0                                 I             1
LPM        Rd, Z               Set Signed Test Flag                       S1                                 S             1
                               Clear Signed Test Flag                     S0                                 S             1
LPM        Rd, Z+

ELPM

ELPM       Rd, Z

ELPM       Rd, Z+

SPM

IN         Rd, P

OUT        P, Rr

PUSH       Rr

POP        Rd

BIT AND BIT-TEST INSTRUCTIONS

SBI        P,b

CBI        P,b

LSL        Rd

LSR        Rd

ROL        Rd

ROR        Rd

ASR        Rd

SWAP       Rd

BSET       s

BCLR       s

BST        Rr, b

BLD        Rd, b

SEC

CLC

SEN

CLN

SEZ

CLZ

SEI

CLI

SES

CLS

12 ATmega128

                                                                                                                      2467OSAVR10/06
                                                                                                    ATmega128

Instruction Set Summary (Continued)

Mnemonics  Operands       Description                     Operation                                 Flags  #Clocks
                                                          V1
SEV                       Set Twos Complement Overflow.   V0                                        V           1
CLV                       Clear Twos Complement Overflow  T1                                        V           1
SET                       Set T in SREG                   T0                                        T           1
CLT                       Clear T in SREG                 H1                                        T           1
SEH                       Set Half Carry Flag in SREG     H0                                        H           1
CLH                       Clear Half Carry Flag in SREG                                             H           1
MCU CONTROL INSTRUCTIONS                                  (see specific descr. for Sleep function)
NOP                       No Operation                    (see specific descr. for WDR/timer)       None        1
SLEEP                     Sleep                           For On-chip Debug Only                    None        1
WDR                       Watchdog Reset                                                            None        1
BREAK                     Break                                                                     None       N/A

                                                                                                                                                                13

2467OSAVR10/06
Ordering Information

Speed (MHz)  Power Supply  Ordering Code      Package(1)                                  Operation Range
                                                                                              Commercial
        8    2.7 - 5.5V    ATmega128L-8AC     64A                                            (0oC to 70oC)
                           ATmega128L-8MC     64M1
        16   4.5 - 5.5V                       64A                                               Industrial
                           ATmega128L-8AI     64A                                          (-40oC to 85oC)
                           ATmega128L-8AU(2)  64M1
                           ATmega128L-8MI     64M1                                            Commercial
                           ATmega128L-8MU(2)  64A                                            (0oC to 70oC)
                                              64M1
                           ATmega128-16AC     64A                                               Industrial
                           ATmega128-16MC     64A                                          (-40oC to 85oC)
                                              64M1
                           ATmega128-16AI     64M1
                           ATmega128-16AU(2)
                           ATmega128-16MI
                           ATmega128-16MU(2)

Notes:  1. The device can also be supplied in wafer form. Please contact your local Atmel sales office for detailed ordering information
            and minimum quantities.

        2. Pb-free packaging alternative, complies to the European Directive for Restriction of Hazardous Substances (RoHS direc-
            tive). Also Halide free and fully Green.

64A                                                                  Package Type
64M1        64-lead, 14 x 14 x 1.0 mm, Thin Profile Plastic Quad Flat Package (TQFP)
            64-pad, 9 x 9 x 1.0 mm, Quad Flat No-Lead/Micro Lead Frame Package (QFN/MLF)

14 ATmega128

                                                                                          2467OSAVR10/06
                                                                                                    ATmega128

Packaging Information

64A

            PIN 1               PIN 1 IDENTIFIER  B
           e                                         E1 E

                                D1
                                 D

        C  0~7

                                                                      A1 A2  A
                   L

                                                                                      COMMON DIMENSIONS
                                                                                       (Unit of Measure = mm)

Notes:  1. This package conforms to JEDEC reference MS-026, Variation AEB.   SYMBOL    MIN     NOM     MAX     NOTE
        2. Dimensions D1 and E1 do not include mold protrusion. Allowable         A                  1.20
                                                                                  A1  0.05            0.15    Note 2
           protrusion is 0.25 mm per side. Dimensions D1 and E1 are maximum       A2   0.95            1.05    Note 2
           plastic body size dimensions including mold mismatch.                  D   15.75     1.00   16.25
        3. Lead coplanarity is 0.10 mm maximum.                                   D1  13.90    16.00   14.10
                                                                                  E   15.75    14.00   16.25
                                                                                  E1  13.90    16.00   14.10
                                                                                  B   0.30     14.00   0.45
                                                                                  C   0.09             0.20
                                                                                  L   0.45             0.75
                                                                                  e               
                                                                                                  
                                                                                             0.80 TYP

          2325 Orchard Parkway  TITLE                                                                              10/5/2001
        R San Jose, CA 95131                                                                        DRAWING NO. REV.
                                  64A, 64-lead, 14 x 14 mm Body Size, 1.0 mm Body Thickness,
                                  0.8 mm Lead Pitch, Thin Profile Plastic Quad Flat Package (TQFP)     64A             B

                                                                                                                                                                15

2467OSAVR10/06
64M1

                        D

             Marked Pin# 1 ID

                                                    E

                                 TOP VIEW              Pin #1 Corner                            C SEATING PLANE
                                                                                               A1
                             K
         L                                                                      A
                                                                                                  0.08 C
                                     D2
                                                                                   SIDE VIEW

                                              1        Option A Pin #1
                                                                      Triangle
                                              2

                                              3                                          COMMON DIMENSIONS
                                                                                          (Unit of Measure = mm)

         E2                                                                     SYMBOL   MIN      NOM            MAX   NOTE
                                                                                     A   0.80     0.90           1.00
                                                       Option B       Pin #1         A1           0.02           0.05
                                                                      Chamfer        b           0.25           0.30
                                                                      (C 0.30)       D   0.18     9.00           9.10
                                                                                     D2  8.90     5.40           5.60
      K                                                Option C       Pin #1         E   5.20     9.00           9.10
                                                                      Notch          E2  8.90     5.40           5.60
             b                             e                          (0.20 R)       e   5.20  0.50 BSC
                                                                                     L            0.40           0.45
             BOTTOM VIEW                                                             K   0.35     1.40           1.55
                                                                                         1.25
         Note: 1. JEDEC Standard MO-220, (SAW Singulation) Fig. 1, VMMD.
                   2. Dimension and tolerance conform to ASMEY14.5M-1994.

                                                                                                                       5/25/06

                                          TITLE                                                DRAWING NO. REV.
        2325 Orchard Parkway 64M1, 64-pad, 9 x 9 x 1.0 mm Body, Lead Pitch 0.50 mm,
      R San Jose, CA 95131 5.40 mm Exposed Pad, Micro Lead Frame Package (MLF)                                   64M1        G

16 ATmega128

                                                                                                                       2467OSAVR10/06
                                                                          ATmega128

Errata            The revision letter in this section refers to the revision of the ATmega128 device.

ATmega128 Rev. M   First Analog Comparator conversion may be delayed
                   Interrupts may be lost when writing the timer registers in the asynchronous timer
2467OSAVR10/06   Stabilizing time needed when changing XDIV Register
                   Stabilizing time needed when changing OSCCAL Register
                   IDCODE masks data from TDI input

                  1. First Analog Comparator conversion may be delayed

                       If the device is powered by a slow rising VCC, the first Analog Comparator conver-
                       sion will take longer than expected on some devices.

                       Problem Fix/Workaround

                       When the device has been powered or reset, disable then enable theAnalog Com-
                       parator before the first conversion.

                  2. Interrupts may be lost when writing the timer registers in the asynchronous
                       timer

                       If one of the timer registers which is synchronized to the asynchronous timer2 clock
                       is written in the cycle before a overflow interrupt occurs, the interrupt may be lost.

                        Problem Fix/Workaround

                       Always check that the Timer2 Timer/Counter register, TCNT2, does not have the
                       value 0xFF before writing the Timer2 Control Register, TCCR2, or Output Compare
                       Register, OCR2

                  3. Stabilizing time needed when changing XDIV Register

                  After increasing the source clock frequency more than 2% with settings in the XDIV
                  register, the device may execute some of the subsequent instructions incorrectly.

                  Problem Fix / Workaround

                  The NOP instruction will always be executed correctly also right after a frequency
                  change. Thus, the next 8 instructions after the change should be NOP instructions.
                  To ensure this, follow this procedure:

                  1.Clear the I bit in the SREG Register.

                  2.Set the new pre-scaling factor in XDIV register.

                  3.Execute 8 NOP instructions

                  4.Set the I bit in SREG

                  This will ensure that all subsequent instructions will execute correctly.

                  Assembly Code Example:

                  CLI  ; clear global interrupt enable

                  OUT XDIV, temp ; set new prescale value

                  NOP  ; no operation

                  NOP  ; no operation

                  NOP  ; no operation

                  NOP  ; no operation

                  NOP  ; no operation

                  NOP  ; no operation

                  NOP  ; no operation

                  NOP  ; no operation

                  SEI  ; set global interrupt enable

                                                                                                       17
ATmega128 Rev. L  4. Stabilizing time needed when changing OSCCAL Register
                       After increasing the source clock frequency more than 2% with settings in the OSC-
                       CAL register, the device may execute some of the subsequent instructions
                       incorrectly.
                       Problem Fix / Workaround
                       The behavior follows errata number 1., and the same Fix / Workaround is applicable
                       on this errata.

                  5. IDCODE masks data from TDI input
                       The JTAG instruction IDCODE is not working correctly. Data to succeeding devices
                       are replaced by all-ones during Update-DR.
                       Problem Fix / Workaround
                        If ATmega128 is the only device in the scan chain, the problem is not visible.
                        Select the Device ID Register of the ATmega128 by issuing the IDCODE
                            instruction or by entering the Test-Logic-Reset state of the TAP controller to
                            read out the contents of its Device ID Register and possibly data from
                            succeeding devices of the scan chain. Issue the BYPASS instruction to the
                            ATmega128 while reading the Device ID Registers of preceding devices of
                            the boundary scan chain.
                        If the Device IDs of all devices in the boundary scan chain must be captured
                            simultaneously, the ATmega128 must be the fist device in the chain.

                   First Analog Comparator conversion may be delayed
                   Interrupts may be lost when writing the timer registers in the asynchronous timer
                   Stabilizing time needed when changing XDIV Register
                   Stabilizing time needed when changing OSCCAL Register
                   IDCODE masks data from TDI input

                  1. First Analog Comparator conversion may be delayed
                       If the device is powered by a slow rising VCC, the first Analog Comparator conver-
                       sion will take longer than expected on some devices.
                       Problem Fix/Workaround
                       When the device has been powered or reset, disable then enable theAnalog Com-
                       parator before the first conversion.

                  2. Interrupts may be lost when writing the timer registers in the asynchronous
                       timer
                       If one of the timer registers which is synchronized to the asynchronous timer2 clock
                       is written in the cycle before a overflow interrupt occurs, the interrupt may be lost.
                        Problem Fix/Workaround
                       Always check that the Timer2 Timer/Counter register, TCNT2, does not have the
                       value 0xFF before writing the Timer2 Control Register, TCCR2, or Output Compare
                       Register, OCR2

                  3. Stabilizing time needed when changing XDIV Register
                       After increasing the source clock frequency more than 2% with settings in the XDIV
                       register, the device may execute some of the subsequent instructions incorrectly.

18 ATmega128

                  2467OSAVR10/06
                                                                      ATmega128

                  Problem Fix / Workaround

                  The NOP instruction will always be executed correctly also right after a frequency
                  change. Thus, the next 8 instructions after the change should be NOP instructions.
                  To ensure this, follow this procedure:

                  1.Clear the I bit in the SREG Register.

                  2.Set the new pre-scaling factor in XDIV register.

                  3.Execute 8 NOP instructions

                  4.Set the I bit in SREG

                  This will ensure that all subsequent instructions will execute correctly.

                  Assembly Code Example:

                  CLI  ; clear global interrupt enable

                  OUT XDIV, temp ; set new prescale value

                  NOP  ; no operation

                  NOP  ; no operation

                  NOP  ; no operation

                  NOP  ; no operation

                  NOP  ; no operation

                  NOP  ; no operation

                  NOP  ; no operation

                  NOP  ; no operation

                  SEI  ; set global interrupt enable

                  4. Stabilizing time needed when changing OSCCAL Register
                       After increasing the source clock frequency more than 2% with settings in the OSC-
                       CAL register, the device may execute some of the subsequent instructions
                       incorrectly.
                       Problem Fix / Workaround
                       The behavior follows errata number 1., and the same Fix / Workaround is applicable
                       on this errata.

                  5. IDCODE masks data from TDI input
                       The JTAG instruction IDCODE is not working correctly. Data to succeeding devices
                       are replaced by all-ones during Update-DR.
                       Problem Fix / Workaround
                        If ATmega128 is the only device in the scan chain, the problem is not visible.
                        Select the Device ID Register of the ATmega128 by issuing the IDCODE
                            instruction or by entering the Test-Logic-Reset state of the TAP controller to
                            read out the contents of its Device ID Register and possibly data from
                            succeeding devices of the scan chain. Issue the BYPASS instruction to the
                            ATmega128 while reading the Device ID Registers of preceding devices of
                            the boundary scan chain.
                        If the Device IDs of all devices in the boundary scan chain must be captured
                            simultaneously, the ATmega128 must be the fist device in the chain.

                                                                                             19

2467OSAVR10/06
ATmega128 Rev. I   First Analog Comparator conversion may be delayed
                   Interrupts may be lost when writing the timer registers in the asynchronous timer
                   Stabilizing time needed when changing XDIV Register
                   Stabilizing time needed when changing OSCCAL Register
                   IDCODE masks data from TDI input

                  1. First Analog Comparator conversion may be delayed
                       If the device is powered by a slow rising VCC, the first Analog Comparator conver-
                       sion will take longer than expected on some devices.
                       Problem Fix/Workaround
                       When the device has been powered or reset, disable then enable theAnalog Com-
                       parator before the first conversion.

                  2. Interrupts may be lost when writing the timer registers in the asynchronous
                       timer
                       If one of the timer registers which is synchronized to the asynchronous timer2 clock
                       is written in the cycle before a overflow interrupt occurs, the interrupt may be lost.
                        Problem Fix/Workaround
                       Always check that the Timer2 Timer/Counter register, TCNT2, does not have the
                       value 0xFF before writing the Timer2 Control Register, TCCR2, or Output Compare
                       Register, OCR2

                  3. Stabilizing time needed when changing XDIV Register
                       After increasing the source clock frequency more than 2% with settings in the XDIV
                       register, the device may execute some of the subsequent instructions incorrectly.

                  Problem Fix / Workaround

                  The NOP instruction will always be executed correctly also right after a frequency
                  change. Thus, the next 8 instructions after the change should be NOP instructions.
                  To ensure this, follow this procedure:

                  1.Clear the I bit in the SREG Register.

                  2.Set the new pre-scaling factor in XDIV register.

                  3.Execute 8 NOP instructions

                  4.Set the I bit in SREG

                  This will ensure that all subsequent instructions will execute correctly.

                  Assembly Code Example:

                  CLI  ; clear global interrupt enable

                  OUT XDIV, temp ; set new prescale value

                  NOP  ; no operation

                  NOP  ; no operation

                  NOP  ; no operation

                  NOP  ; no operation

                  NOP  ; no operation

                  NOP  ; no operation

                  NOP  ; no operation

                  NOP  ; no operation

                  SEI  ; clear global interrupt enable

20 ATmega128

                                                                      2467OSAVR10/06
ATmega128 Rev. H                                                  ATmega128

                  4. Stabilizing time needed when changing OSCCAL Register
                       After increasing the source clock frequency more than 2% with settings in the OSC-
                       CAL register, the device may execute some of the subsequent instructions
                       incorrectly.
                       Problem Fix / Workaround
                       The behavior follows errata number 1., and the same Fix / Workaround is applicable
                       on this errata.

                  5. IDCODE masks data from TDI input
                       The JTAG instruction IDCODE is not working correctly. Data to succeeding devices
                       are replaced by all-ones during Update-DR.
                       Problem Fix / Workaround
                        If ATmega128 is the only device in the scan chain, the problem is not visible.
                        Select the Device ID Register of the ATmega128 by issuing the IDCODE
                            instruction or by entering the Test-Logic-Reset state of the TAP controller to
                            read out the contents of its Device ID Register and possibly data from
                            succeeding devices of the scan chain. Issue the BYPASS instruction to the
                            ATmega128 while reading the Device ID Registers of preceding devices of
                            the boundary scan chain.
                        If the Device IDs of all devices in the boundary scan chain must be captured
                            simultaneously, the ATmega128 must be the fist device in the chain.

                   First Analog Comparator conversion may be delayed
                   Interrupts may be lost when writing the timer registers in the asynchronous timer
                   Stabilizing time needed when changing XDIV Register
                   Stabilizing time needed when changing OSCCAL Register
                   IDCODE masks data from TDI input

                  1. First Analog Comparator conversion may be delayed
                       If the device is powered by a slow rising VCC, the first Analog Comparator conver-
                       sion will take longer than expected on some devices.
                       Problem Fix/Workaround
                       When the device has been powered or reset, disable then enable theAnalog Com-
                       parator before the first conversion.

                  2. Interrupts may be lost when writing the timer registers in the asynchronous
                       timer
                       If one of the timer registers which is synchronized to the asynchronous timer2 clock
                       is written in the cycle before a overflow interrupt occurs, the interrupt may be lost.
                        Problem Fix/Workaround
                       Always check that the Timer2 Timer/Counter register, TCNT2, does not have the
                       value 0xFF before writing the Timer2 Control Register, TCCR2, or Output Compare
                       Register, OCR2

                  3. Stabilizing time needed when changing XDIV Register
                       After increasing the source clock frequency more than 2% with settings in the XDIV
                       register, the device may execute some of the subsequent instructions incorrectly.

                                                                                                                                                                21

2467OSAVR10/06
              Problem Fix / Workaround

              The NOP instruction will always be executed correctly also right after a frequency
              change. Thus, the next 8 instructions after the change should be NOP instructions.
              To ensure this, follow this procedure:

              1.Clear the I bit in the SREG Register.

              2.Set the new pre-scaling factor in XDIV register.

              3.Execute 8 NOP instructions

              4.Set the I bit in SREG

              This will ensure that all subsequent instructions will execute correctly.

              Assembly Code Example:

              CLI  ; clear global interrupt enable

              OUT XDIV, temp ; set new prescale value

              NOP  ; no operation

              NOP  ; no operation

              NOP  ; no operation

              NOP  ; no operation

              NOP  ; no operation

              NOP  ; no operation

              NOP  ; no operation

              NOP  ; no operation

              SEI  ; clear global interrupt enable

              4. Stabilizing time needed when changing OSCCAL Register
                   After increasing the source clock frequency more than 2% with settings in the OSC-
                   CAL register, the device may execute some of the subsequent instructions
                   incorrectly.
                   Problem Fix / Workaround
                   The behavior follows errata number 1., and the same Fix / Workaround is applicable
                   on this errata.

              5. IDCODE masks data from TDI input
                   The JTAG instruction IDCODE is not working correctly. Data to succeeding devices
                   are replaced by all-ones during Update-DR.
                   Problem Fix / Workaround
                   If ATmega128 is the only device in the scan chain, the problem is not visible.
                   Select the Device ID Register of the ATmega128 by issuing the IDCODE
                        instruction or by entering the Test-Logic-Reset state of the TAP controller to
                        read out the contents of its Device ID Register and possibly data from
                        succeeding devices of the scan chain. Issue the BYPASS instruction to the
                        ATmega128 while reading the Device ID Registers of preceding devices of
                        the boundary scan chain.
                   If the Device IDs of all devices in the boundary scan chain must be captured
                        simultaneously, the ATmega128 must be the fist device in the chain.

22 ATmega128

                                                                  2467OSAVR10/06
                                                                      ATmega128

ATmega128 Rev. G   First Analog Comparator conversion may be delayed
                   Interrupts may be lost when writing the timer registers in the asynchronous timer
2467OSAVR10/06   Stabilizing time needed when changing XDIV Register
                   Stabilizing time needed when changing OSCCAL Register
                   IDCODE masks data from TDI input

                  1. First Analog Comparator conversion may be delayed
                       If the device is powered by a slow rising VCC, the first Analog Comparator conver-
                       sion will take longer than expected on some devices.
                       Problem Fix/Workaround
                       When the device has been powered or reset, disable then enable theAnalog Com-
                       parator before the first conversion.

                  2. Interrupts may be lost when writing the timer registers in the asynchronous
                       timer
                       If one of the timer registers which is synchronized to the asynchronous timer2 clock
                       is written in the cycle before a overflow interrupt occurs, the interrupt may be lost.
                        Problem Fix/Workaround
                       Always check that the Timer2 Timer/Counter register, TCNT2, does not have the
                       value 0xFF before writing the Timer2 Control Register, TCCR2, or Output Compare
                       Register, OCR2

                  3. Stabilizing time needed when changing XDIV Register
                       After increasing the source clock frequency more than 2% with settings in the XDIV
                       register, the device may execute some of the subsequent instructions incorrectly.

                  Problem Fix / Workaround

                  The NOP instruction will always be executed correctly also right after a frequency
                  change. Thus, the next 8 instructions after the change should be NOP instructions.
                  To ensure this, follow this procedure:

                  1.Clear the I bit in the SREG Register.

                  2.Set the new pre-scaling factor in XDIV register.

                  3.Execute 8 NOP instructions

                  4.Set the I bit in SREG

                  This will ensure that all subsequent instructions will execute correctly.

                  Assembly Code Example:

                  CLI  ; clear global interrupt enable

                  OUT XDIV, temp ; set new prescale value

                  NOP  ; no operation

                  NOP  ; no operation

                  NOP  ; no operation

                  NOP  ; no operation

                  NOP  ; no operation

                  NOP  ; no operation

                  NOP  ; no operation

                  NOP  ; no operation

                  SEI  ; set global interrupt enable

                                                                                             23
ATmega128 Rev. F  4. Stabilizing time needed when changing OSCCAL Register
                       After increasing the source clock frequency more than 2% with settings in the OSC-
                       CAL register, the device may execute some of the subsequent instructions
                       incorrectly.
                       Problem Fix / Workaround
                       The behavior follows errata number 1., and the same Fix / Workaround is applicable
                       on this errata.

                  5. IDCODE masks data from TDI input
                       The JTAG instruction IDCODE is not working correctly. Data to succeeding devices
                       are replaced by all-ones during Update-DR.
                       Problem Fix / Workaround
                        If ATmega128 is the only device in the scan chain, the problem is not visible.
                        Select the Device ID Register of the ATmega128 by issuing the IDCODE
                            instruction or by entering the Test-Logic-Reset state of the TAP controller to
                            read out the contents of its Device ID Register and possibly data from
                            succeeding devices of the scan chain. Issue the BYPASS instruction to the
                            ATmega128 while reading the Device ID Registers of preceding devices of
                            the boundary scan chain.
                        If the Device IDs of all devices in the boundary scan chain must be captured
                            simultaneously, the ATmega128 must be the fist device in the chain.

                   First Analog Comparator conversion may be delayed
                   Interrupts may be lost when writing the timer registers in the asynchronous timer
                   Stabilizing time needed when changing XDIV Register
                   Stabilizing time needed when changing OSCCAL Register
                   IDCODE masks data from TDI input

                  1. First Analog Comparator conversion may be delayed
                       If the device is powered by a slow rising VCC, the first Analog Comparator conver-
                       sion will take longer than expected on some devices.
                       Problem Fix/Workaround
                       When the device has been powered or reset, disable then enable theAnalog Com-
                       parator before the first conversion.

                  2. Interrupts may be lost when writing the timer registers in the asynchronous
                       timer
                       If one of the timer registers which is synchronized to the asynchronous timer2 clock
                       is written in the cycle before a overflow interrupt occurs, the interrupt may be lost.
                        Problem Fix/Workaround
                       Always check that the Timer2 Timer/Counter register, TCNT2, does not have the
                       value 0xFF before writing the Timer2 Control Register, TCCR2, or Output Compare
                       Register, OCR2

                  3. Stabilizing time needed when changing XDIV Register
                       After increasing the source clock frequency more than 2% with settings in the XDIV
                       register, the device may execute some of the subsequent instructions incorrectly.

24 ATmega128

                  2467OSAVR10/06
                                                                      ATmega128

                  Problem Fix / Workaround

                  The NOP instruction will always be executed correctly also right after a frequency
                  change. Thus, the next 8 instructions after the change should be NOP instructions.
                  To ensure this, follow this procedure:

                  1.Clear the I bit in the SREG Register.

                  2.Set the new pre-scaling factor in XDIV register.

                  3.Execute 8 NOP instructions

                  4.Set the I bit in SREG

                  This will ensure that all subsequent instructions will execute correctly.

                  Assembly Code Example:

                  CLI  ; clear global interrupt enable

                  OUT XDIV, temp ; set new prescale value

                  NOP  ; no operation

                  NOP  ; no operation

                  NOP  ; no operation

                  NOP  ; no operation

                  NOP  ; no operation

                  NOP  ; no operation

                  NOP  ; no operation

                  NOP  ; no operation

                  SEI  ; set global interrupt enable

                  4. Stabilizing time needed when changing OSCCAL Register
                       After increasing the source clock frequency more than 2% with settings in the OSC-
                       CAL register, the device may execute some of the subsequent instructions
                       incorrectly.
                       Problem Fix / Workaround
                       The behavior follows errata number 1., and the same Fix / Workaround is applicable
                       on this errata.

                  5. IDCODE masks data from TDI input
                       The JTAG instruction IDCODE is not working correctly. Data to succeeding devices
                       are replaced by all-ones during Update-DR.
                       Problem Fix / Workaround
                        If ATmega128 is the only device in the scan chain, the problem is not visible.
                        Select the Device ID Register of the ATmega128 by issuing the IDCODE
                            instruction or by entering the Test-Logic-Reset state of the TAP controller to
                            read out the contents of its Device ID Register and possibly data from
                            succeeding devices of the scan chain. Issue the BYPASS instruction to the
                            ATmega128 while reading the Device ID Registers of preceding devices of
                            the boundary scan chain.
                        If the Device IDs of all devices in the boundary scan chain must be captured
                            simultaneously, the ATmega128 must be the fist device in the chain.

                                                                                             25

2467OSAVR10/06
Datasheet Revision   Please note that the referring page numbers in this section are referred to this docu-
History              ment. The referring revision in this section are referring to the document revision.

Changes from Rev.    1. Added note to "Timer/Counter Oscillator" on page 43.
2467N-03/06 to Rev.  2. Updated "Fast PWM Mode" on page 124.
2467O-10/06          3. Updated Table 52 on page 104, Table 54 on page 104, Table 59 on page 134,

Changes from Rev.         Table 61 on page 135, Table 64 on page 158, and Table 66 on page 159.
2467M-11/04 to Rev.  4. Updated "Errata" on page 17.
2467N-03/06
                     1. Updated note for Figure 1 on page 2.
Changes from Rev.    2. Updated "Alternate Functions of Port D" on page 77.
2467L-05/04 to Rev.  3. Updated "Alternate Functions of Port G" on page 84.
2467M-11/04          4. Updated "Phase Correct PWM Mode" on page 100.
                     5. Updated Table 59 on page 134, Table 60 on page 134.
Changes from Rev.    6. Updated "Bit 2 TOV3: Timer/Counter3, Overflow Flag" on page 142.
2467K-03/04 to Rev.  7. Updated "Serial Peripheral Interface SPI" on page 164.
2467L-05/04          8. Updated Features in "Analog to Digital Converter" on page 232
                     9. Added note in "Input Channel and Gain Selections" on page 245.
                     10. Updated "Errata" on page 17.

                     1. Removed "analog ground", replaced by "ground".
                     2. Updated Table 11 on page 40, Table 114 on page 288, Table 128 on page 307,

                          and Table 132 on page 324. Updated Figure 114 on page 240.
                     3. Added note to "Port C (PC7..PC0)" on page 6.
                     4. Updated "Ordering Information" on page 14.

                     1. Removed "Preliminary" and "TBD" from the datasheet, replaced occurrences
                          of ICx with ICPx.

                     2. Updated Table 8 on page 38, Table 19 on page 50, Table 22 on page 56, Table
                          96 on page 244, Table 126 on page 303, Table 128 on page 307, Table 132 on
                          page 324, and Table 134 on page 326.

                     3. Updated "External Memory Interface" on page 26.
                     4. Updated "Device Identification Register" on page 256.

26 ATmega128

                     2467OSAVR10/06
Changes from Rev.                                                    ATmega128
2467J-12/03 to Rev.
2467K-03/04          5. Updated "Electrical Characteristics" on page 322.
Changes from Rev.    6. Updated "ADC Characteristics" on page 328.
2467I-09/03 to Rev.  7. Updated "ATmega128 Typical Characteristics" on page 336.
2467J-12/03          8. Updated "Ordering Information" on page 14.
Changes from Rev.    1. Updated "Errata" on page 17.
2467H-02/03 to Rev.
2467I-09/03          1. Updated "Calibrated Internal RC Oscillator" on page 41.

Changes from Rev.    1. Updated note in "XTAL Divide Control Register XDIV" on page 43.
2467G-09/02 to Rev.  2. Updated "JTAG Interface and On-chip Debug System" on page 48.
2467H-02/03          3. Updated values for VBOT (BODLEVEL = 1) in Table 19 on page 50.
                     4. Updated "Test Access Port TAP" on page 249 regarding JTAGEN.
2467OSAVR10/06     5. Updated description for the JTD bit on page 258.
                     6. Added a note regarding JTAGEN fuse to Table 118 on page 291.
                     7. Updated RPU values in "DC Characteristics" on page 322.
                     8. Added a proposal for solving problems regarding the JTAG instruction

                          IDCODE in "Errata" on page 17.
                     1. Corrected the names of the two Prescaler bits in the SFIOR Register.
                     2. Added Chip Erase as a first step under "Programming the Flash" on page 319

                          and "Programming the EEPROM" on page 320.
                     3. Removed reference to the "Multipurpose Oscillator" application note and the

                          "32 kHz Crystal Oscillator" application note, which do not exist.
                     4. Corrected OCn waveforms in Figure 52 on page 125.
                     5. Various minor Timer1 corrections.
                     6. Added information about PWM symmetry for Timer0 and Timer2.
                     7. Various minor TWI corrections.
                     8. Added reference to Table 124 on page 294 from both SPI Serial Programming

                          and Self Programming to inform about the Flash Page size.

                                                                                                                                       27
Changes from Rev.    9. Added note under "Filling the Temporary Buffer (Page Loading)" on page 283
2467F-09/02 to Rev.       about writing to the EEPROM during an SPM Page load.
2467G-09/02
Changes from Rev.    10. Removed ADHSM completely.
2467E-04/02 to Rev.
2467F-09/02          11. Added section "EEPROM Write During Power-down Sleep Mode" on page 25.

Changes from Rev.    12. Updated drawings in "Packaging Information" on page 15.
2467D-03/02 to Rev.
2467E-04/02          1. Changed the Endurance on the Flash to 10,000 Write/Erase Cycles.

                     1. Added 64-pad QFN/MLF Package and updated "Ordering Information" on
                          page 14.

                     2. Added the section "Using all Locations of External Memory Smaller than 64
                          KB" on page 33.

                     3. Added the section "Default Clock Source" on page 37.

                     4. Renamed SPMCR to SPMCSR in entire document.

                     5. When using external clock there are some limitations regards to change of
                          frequency. This is descried in "External Clock" on page 42 and Table 131,
                          "External Clock Drive," on page 324.

                     6. Added a sub section regarding OCD-system and power consumption in the
                          section "Minimizing Power Consumption" on page 47.

                     7. Corrected typo (WGM-bit setting) for:
                          "Fast PWM Mode" on page 98 (Timer/Counter0).
                          "Phase Correct PWM Mode" on page 100 (Timer/Counter0).
                          "Fast PWM Mode" on page 152 (Timer/Counter2).
                          "Phase Correct PWM Mode" on page 154 (Timer/Counter2).

                     8. Corrected Table 81 on page 193 (USART).

                     9. Corrected Table 102 on page 262 (Boundary-Scan)

                     10. Updated Vil parameter in "DC Characteristics" on page 322.

                     1. Updated the Characterization Data in Section "ATmega128 Typical Character-
                          istics" on page 336.

                     2. Updated the following tables:
                          Table 19 on page 50, Table 20 on page 54, Table 68 on page 159, Table 102 on
                          page 262, and Table 136 on page 328.

                     3. Updated Description of OSCCAL Calibration Byte.

28 ATmega128

                     2467OSAVR10/06
Changes from Rev.                                                    ATmega128
2467C-02/02 to Rev.
2467D-03/02               In the data sheet, it was not explained how to take advantage of the calibration
                          bytes for 2, 4, and 8 MHz Oscillator selections. This is now added in the following
                          sections:
                          Improved description of "Oscillator Calibration Register OSCCAL" on page 41 and
                          "Calibration Byte" on page 292.

                     1. Added more information about "ATmega103 Compatibility Mode" on page 5.

                     2. Updated Table 2, "EEPROM Programming Time," on page 23.

                     3. Updated typical Start-up Time in Table 7 on page 37, Table 9 and Table 10 on
                          page 39, Table 12 on page 40, Table 14 on page 41, and Table 16 on page 42.

                     4. Updated Table 22 on page 56 with typical WDT Time-out.

                     5. Corrected description of ADSC bit in "ADC Control and Status Register A
                          ADCSRA" on page 246.

                     6. Improved description on how to do a polarity check of the ADC differential
                          results in "ADC Conversion Result" on page 243.

                     7. Corrected JTAG version numbers in "JTAG Version Numbers" on page 256.

                     8. Improved description of addressing during SPM (usage of RAMPZ) on
                          "Addressing the Flash During Self-Programming" on page 281, "Performing
                          Page Erase by SPM" on page 283, and "Performing a Page Write" on page
                          283.

                     9. Added not regarding OCDEN Fuse below Table 118 on page 291.

                     10. Updated Programming Figures:
                          Figure 135 on page 293 and Figure 144 on page 305 are updated to also reflect that
                          AVCC must be connected during Programming mode. Figure 139 on page 300
                          added to illustrate how to program the fuses.

                     11. Added a note regarding usage of the PROG_PAGELOAD and
                          PROG_PAGEREAD instructions on page 311.

                     12. Added Calibrated RC Oscillator characterization curves in section
                          "ATmega128 Typical Characteristics" on page 336.

                     13. Updated "Two-wire Serial Interface" section.
                          More details regarding use of the TWI Power-down operation and using the TWI as
                          master with low TWBRR values are added into the data sheet. Added the note at
                          the end of the "Bit Rate Generator Unit" on page 205. Added the description at the
                          end of "Address Match Unit" on page 206.

                     14. Added a note regarding usage of Timer/Counter0 combined with the clock.
                          See "XTAL Divide Control Register XDIV" on page 43.

                                                                                                                                                                29

2467OSAVR10/06
Changes from Rev.    1. Corrected Description of Alternate Functions of Port G
2467B-09/01 to Rev.       Corrected description of TOSC1 and TOSC2 in "Alternate Functions of Port G" on
2467C-02/02               page 84.

                     2. Added JTAG Version Numbers for rev. F and rev. G
                          Updated Table 100 on page 256.

                     3 Added Some Preliminary Test Limits and Characterization Data
                          Removed some of the TBD's in the following tables and pages:
                          Table 19 on page 50, Table 20 on page 54, "DC Characteristics" on page 322,
                          Table 131 on page 324, Table 134 on page 326, and Table 136 on page 328.

                     4. Corrected "Ordering Information" on page 14.

                     5. Added some Characterization Data in Section "ATmega128 Typical Character-
                          istics" on page 336.

                     6. Removed Alternative Algortihm for Leaving JTAG Programming Mode.
                          See "Leaving Programming Mode" on page 319.

                     7. Added Description on How to Access the Extended Fuse Byte Through JTAG
                          Programming Mode.
                          See "Programming the Fuses" on page 321 and "Reading the Fuses and Lock Bits"
                          on page 321.

30 ATmega128

                     2467OSAVR10/06
Atmel Corporation             Atmel Operations                       RF/Automotive
                                                                       Theresienstrasse 2
  2325 Orchard Parkway        Memory                                   Postfach 3535
  San Jose, CA 95131, USA       2325 Orchard Parkway                   74025 Heilbronn, Germany
  Tel: 1(408) 441-0311          San Jose, CA 95131, USA                Tel: (49) 71-31-67-0
  Fax: 1(408) 487-2600          Tel: 1(408) 441-0311                   Fax: (49) 71-31-67-2340
                                Fax: 1(408) 436-4314                   1150 East Cheyenne Mtn. Blvd.
Regional Headquarters                                                  Colorado Springs, CO 80906, USA
                              Microcontrollers                         Tel: 1(719) 576-3300
Europe                          2325 Orchard Parkway                   Fax: 1(719) 540-1759
  Atmel Sarl                    San Jose, CA 95131, USA
  Route des Arsenaux 41         Tel: 1(408) 441-0311                 Biometrics/Imaging/Hi-Rel MPU/
  Case Postale 80               Fax: 1(408) 436-4314                 High Speed Converters/RF Datacom
  CH-1705 Fribourg
  Switzerland                   La Chantrerie                          Avenue de Rochepleine
  Tel: (41) 26-426-5555         BP 70602                               BP 123
  Fax: (41) 26-426-5500         44306 Nantes Cedex 3, France           38521 Saint-Egreve Cedex, France
                                Tel: (33) 2-40-18-18-18                Tel: (33) 4-76-58-30-00
Asia                            Fax: (33) 2-40-18-19-60                Fax: (33) 4-76-58-34-80
  Room 1219
  Chinachem Golden Plaza      ASIC/ASSP/Smart Cards                  Literature Requests
  77 Mody Road Tsimshatsui      Zone Industrielle                    www.atmel.com/literature
  East Kowloon                  13106 Rousset Cedex, France
  Hong Kong                     Tel: (33) 4-42-53-60-00
  Tel: (852) 2721-9778          Fax: (33) 4-42-53-60-01
  Fax: (852) 2722-1369
                                1150 East Cheyenne Mtn. Blvd.
Japan                           Colorado Springs, CO 80906, USA
  9F, Tonetsu Shinkawa Bldg.    Tel: 1(719) 576-3300
  1-24-8 Shinkawa               Fax: 1(719) 540-1759
  Chuo-ku, Tokyo 104-0033
  Japan                         Scottish Enterprise Technology Park
  Tel: (81) 3-3523-3551         Maxwell Building
  Fax: (81) 3-3523-7581         East Kilbride G75 0QR, Scotland
                                Tel: (44) 1355-803-000
                                Fax: (44) 1355-242-743

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.

2006 Atmel Corporation. All rights reserved. ATMEL, logo and combinations thereof, Everywhere You Are, AVR, AVR Studio, and oth-
ers, are registered trademarks or trademarks of Atmel Corporation or its subsidiaries. Other terms and product names may be trademarks of oth-
ers.

                                                                     2467OSAVR10/06
This datasheet has been downloaded from:
             www.EEworld.com.cn

                 Free Download
           Daily Updated Database
      100% Free Datasheet Search Site
  100% Free IC Replacement Search Site
     Convenient Electronic Dictionary

               Fast Search System
             www.EEworld.com.cn

                                                 All Datasheets Cannot Be Modified Without Permission
                                                                Copyright Each Manufacturing Company

ATMEGA128器件购买:

该厂商的其它器件

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 大学堂 TI培训 Datasheet

北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2017 EEWORLD.com.cn, Inc. All rights reserved