AT90USB128X Datasheet PDF - ATMEL

www.Datasheet-PDF.com

AT90USB128X
ATMEL

Part Number AT90USB128X
Description USB DFU Bootloader
Page 28 Pages


AT90USB128X datasheet pdf
Download PDF
AT90USB128X pdf
View PDF for Mobile

No Preview Available !

Features
USB Protocol
– Based on the USB DFU class
– Autobaud (8/16 MHz crystal)
In-System Programming
– Read/Write Flash and EEPROM on-chip memories
– Read Device ID
– Full chip Erase
– Start application command
In-Application Programming
– Software Entry-points for on-chip flash drivers
1. Description
The 8bits mega AVR with USB interface devices are factory configured with a
USB bootloader located in the on-chip flash boot section of the controller.
This USB bootloader allows to perform In-System Programming from an USB
host controller without removing the part from the system or without a
pre-programmed application, and without any external programming interface.
This document describes the USB bootloader functionalities as well as the serial
protocol to efficiently perform operations on the on chip Flash memories (Flash
and EEPROM).
www.DataSheet4U.com
USB DFU
Bootloader
Datasheet
AT90USB128x
AT90USB64x
AT90USB162
AT90USB82
ATmega32U4
ATmega16U4
7618C–AVR–07/08



No Preview Available !

www.DataSheet4U.com
2. Bootloader Environment
The bootloader is located in the boot section of the on-chip Flash memory, it manages the USB
communication protocol and performs read/write operations to the on-chip memories
(Flash/EEPROM).
The USB bootloader is loaded in the “Bootloader Flash Section” of the on-chip Flash memory.
The size of the bootloader flash section must be larger than the bootloader size.USB products
are factory configured with the default on-chip USB bootloader and the required bootsection
configuration.
Table 2-1. USB Bootloader Parameters
Product
AT90USB1287
AT90USB1286
AT90USB647
AT90USB646
Flash Bootsection Size
Configuration
4 KWord
AT90USB162
AT90USB82
ATmega32U4
ATmega16U4
2 KWord
VID / PID
Bootloader Start Address
(word address)
0x03EB / 0x2FFB
0xf000
0x03EB / 0x2FF9
0x03EB / 0x2FFA
0x03EB / 0x2FF7
0x03EB / 0x2FF4
0x03EB / 0x2FF3
0x7800
0x1800
0x0800
0x3800
0x0800
Figure 2-1. Physical Environment
DFU Class
USB
Interface
USB Bootloader
in Boot section
Read/Write
Flash
Application section
Read/Write
EEPROM Data
3. Bootloader Activation
As specified in the AT90USB datasheet, the bootloader can be activated by one of the following
conditions:
Regular application execution: A jump or call from the user application program. This may
be initiated by a trigger such as a command received via USB, USART or SPI and decoded
by the application.
2
7618C–AVR–07/08



No Preview Available !

www.DataSheet4U.com
Boot Reset Fuse The Boot Reset Fuse (BOOTRST) can be programmed so that the Reset
Vector points to the Boot Flash section start address after reset. Once the user code is
loaded, a bootloader command (“start application”) can start executing the application code.
Note that the fuses cannot be changed by the MCU itself. This means that once the Boot
Reset Fuse is programmed, the Reset Vector will always point to the Bootloader Reset and
the fuse can only be changed through the serial or parallel programming interface. The
BOOTRST fuse is not active in the default factory configuration.
External Hardware conditions The Hardware Boot Enable fuse (HWBE) can be
programmed so that upon special hardware conditions under reset, the bootloader execution
is forced after reset.
These different conditions are summarized in Figure 3-1 on page 3.
Figure 3-1. Boot Process
Reset
Yes Ext Hardware
conditions
No
Yes
PC = boot loader section
BOOTRST = 0
No
PC = 0000h
"Software activation (jump)"
Application
Running
Start Bootloader
4. Protocol
4.1 Device Firmware Upgrade Introduction
Device Firmware Upgrade (DFU) is the mechanism implemented to perform device firmware
modifications. Any USB device can exploit this capability by supporting the requirements speci-
fied in this document.
Because it is unpractical for a device to concurrently perform both DFU operations and its nor-
mal run-time activities, these normal activities must cease for the duration of the DFU
operations. Doing so means that the device must change its operating mode; i.e., a printer is not
a printer while it is undergoing a firmware upgrade; it is a PROM programmer. However, a
7618C–AVR–07/08
3



No Preview Available !

www.DataSheet4U.com
device that supports DFU is not capable of changing its mode of operation on its own. External
(human or host operating system) intervention is required.
4.2 DFU Specific Requests
In addition to the USB standard requests, 7 DFU class-specific requests are used to accomplish
the upgrade operations:
Table 4-1. DFU Class-specific Requests
bmRequestType
0010 0001b
0010 0001b
1010 0001b
1010 0001b
0010 0001b
1010 0001b
0010 0001b
bRequest
DFU_DETACH (0)
DFU_DNLOAD (1)
DFU_UPLOAD (2)
DFU_GETSTATUS (3)
DFU_CLRSTATUS (4)
DFU_GETSTATE (5)
DFU_ABORT (6)
wValue
wTimeout
wBlock
wBlock
Zero
Zero
Zero
Zero
wIndex
Interface (4)
Interface (4)
Interface (4)
Interface (4)
Interface (4)
Interface (4)
Interface (4)
wLength
Zero
Length
Length
6
Zero
1
Zero
Data
none
Firmware
Firmware
Status
none
State
none
4.3 DFU Descriptors Set
The device exports the DFU descriptor set, which contains:
• A DFU device descriptor
• A single configuration descriptor
• A single interface descriptor (including descriptors for alternate settings, if present)
4.3.1
DFU Device Descriptor
This descriptor is only present in the DFU mode descriptor set. The DFU class code is reported
in the bDeviceClass field of this descriptor.
Offset
0
1
2
4
5
6
7
8
10
12
14
Table 4-2.
Field
bLength
bDescriptorType
bcdUSB
bDeviceClass
bDeviceSubClass
bDeviceProtocol
bMaxPacketSize0
idVendor
idProduct
bcdDevice
iManufacturer
DFU Mode Device Descriptor
Size
1
1
2
Value
12h
01h
0100h
Description
Size of this descriptor, in bytes
DFU functional descriptor type
USB specification release number in binary coded decimal
1 FEh Application Specific Class Code
1 01h Device Firmware Upgrade Code
1 00h The device does not use a class specific protocol on this interface
1
32
Maximum packet size for endpoint zero (limited to 32 due to Host side
driver)
2 03EBh Vendor ID
2 2FFBh Product ID
2 0x0000 Device release number in binary coded decimal
1 0 Index of string descriptor
4
7618C–AVR–07/08



AT90USB128X datasheet pdf
Download PDF
AT90USB128X pdf
View PDF for Mobile


Related : Start with AT90USB128 Part Numbers by
AT90USB1286 Microcontroller AT90USB1286
ATMEL
AT90USB1286 pdf
AT90USB1287 Microcontroller AT90USB1287
ATMEL
AT90USB1287 pdf
AT90USB128X USB DFU Bootloader AT90USB128X
ATMEL
AT90USB128X pdf

Index :   0   1   2   3   4   5   6   7   8   9   A   B   C   D   E   F   G   H   I   J   K   L   M   N   O   P   Q   R   S   T   U   V   W   X   Y   Z   

This is a individually operated, non profit site. If this site is good enough to show, please introduce this site to others.
Since 2010   ::   HOME   ::   Contact