View detail for User Guide for Atmel ATA6870 and Atmel ATmega32HVB Evaluation Kit Hardware DK10

APPLICATION NOTE
User Guide for Atmel ATA6870 and Atmel ATmega32HVB
Evaluation Kit Hardware
ATA6870-DK10
Features
● Evaluation of Atmel® ATA6870
● Monitoring of 12 battery cells
● Monitoring:
● Overvoltage (every cell)
● Undervoltage (every cell)
● Overheating
● Overcurrent
● Open clamp detection
● 12-bit battery cell measurement
● 12-bit temperature measurement
● Controlling of charge/discharge FETs
● Status LEDs for easy evaluation
● Charge balancing
● Coulomb counting for SOC determination
Figure 1.
Atmel ATA6870-DK10
9228C-AUTO-02/15
1.
Introduction
The Atmel® ATA6870-DK10 is a demonstration board for the Atmel ATA6870, which offers an easy way to start evaluation of
battery applications using the Atmel ATmega32HVB in combination with the Atmel ATA6870. The included software
demonstrates implementation of a 12 Cell Battery Management System. The supplied code serves as an example of how to
use the Atmel ATMega32HVB and Atmel ATA6870 together. The example is not a complete application intended for use
with smart batteries, and it is best to use the devices in a slightly different way in a smart battery application.
2.
Safety Precautions When Using Li-ion Batteries
Please observe the safety guidelines supplied with the batteries. If improperly used or defective, li-ion and polymer batteries
and packs may explode and cause a fire.
3.
Demonstration Board
The Atmel ATA6870-DK10 was developed to allow easy evaluation of control software for a microcontroller which controls
multiple Atmel ATA6870s. The sample code supplied demonstrates a simple permanent running measurement of voltages
and temperatures.
Figure 3-1. Board Concept
Cell 12
Cell 11
ATA6870
ATA6870
Cell 02
Cell 01
Charge/
Discharge
Control Unit
Monitoring (V,T)
Coulomb counting
ATmega32HVB
2
ATA6870-DK10 [APPLICATION NOTE]
9228C–AUTO–02/15
3.1
System Start
Follow these steps to launch the system.
3.1.1
Installing the Hardware
●
Connect the load/charger to be powered between pack+ and pack- on J1
●
●
Connect the battery cell stack to the screw connectors on the demonstration board
●
●
3.1.2
For demonstration purposes it is possible to use a resistor to simulate a load
Led 1 indicates the enabled status of the demonstration board (controlled by microcontroller SW)
In case of emulating cells such as a voltage divider, apply sufficient voltage (see Section 3.3 “Powering the Board” on
page 5)
Number of Cells
It is possible to run the board with a reduced number of cells. The minimum voltage for each IC is 6.9V. Cell 1 and cell 6
(MBAT) have to be connected. The missing cells should be connected to the upper cell potential of the module. For further
information refer to the Atmel ATA6870 datasheet Section 7.3: Reduced Number of Battery Cells Configuration. For the
voltage range see Section 3.3 “Powering the Board” on page 5. If fewer than 6 cells are used per IC, the config.h file should
be adjusted (CELLSIC# under General Setting). See Section 4.1 “Supplied Code” on page 7 for further information on how to
configure the supplied software correctly.
3.2
The Demonstration Board
Figure 3-2. Evaluation Board with 2 Stacked Atmel ATA6870 and Atmel ATMega32HVB
ATA6870-DK10 [APPLICATION NOTE]
9228C–AUTO–02/15
3
3.2.1
On-board Features
The demonstration board includes the following items:
● 2 Atmel® ATA6870 QFN 7mm 7mm
●
●
●
Atmel ATMega32HVB
12 external N-channel MOSFETs for balancing of battery cells
Connectors
●
ISP connector for programming/debugging the Atmel ATMega32HVB
●
Screw connectors for connecting up to 12 battery cells
Table 3-1.
Connector Overview
J7
Function
J8
Function
1
CELL-
1
VDDHVM
2
PACK-
2
3
4
VFET
5
3
VCC
4
GND
5
IRQ
6
GND
6
CLK
7
OD
7
MISO
8
OC
8
MOSI
9
RESET
9
SCK
10
GND
10
CS_N
J1
Connector for charger/device to be powered
J2
ISP connector
J3
Upper battery stack (cells 7-12)
J4
Bottom battery stack (cells 1-6)
J9
Jumper to enable/disable MISO line of Atmel ATA6870
J9 should never be set while the Atmel ATmega32HVB is being programmed or while it is entering debug mode. It can be
mounted as soon as AVR Studio prompts for additional SPI lines to be connected in debug mode or after the device has
been correctly programmed.
4
ATA6870-DK10 [APPLICATION NOTE]
9228C–AUTO–02/15
Figure 3-3. Connectors
3.3
Powering the Board
3.3.1
Power Supply
The board supports supply voltages from 13.8V (6.9V per Atmel ATA6870) to 60V. However, to run the board on voltages
below 24V the ZDiode D3 needs to be replaced with a jumper to supply the Atmel® ATmega32HVB with sufficient voltage. If
the jumper is mounted, the stack voltage should not exceed 48V! The Atmel ATmega32HVB supports operating voltage from
4V to 24V.
3.3.2
Emulating Cells
Battery cells can be emulated by connecting a voltage divider to the specified clamps. Section 3.1.1 “Installing the Hardware”
on page 3 describes how to connect cells. The voltage limits for this setup are the same as for real batteries. Section 3.3.1
“Power Supply” on page 5 specifies these limits.
ATA6870-DK10 [APPLICATION NOTE]
9228C–AUTO–02/15
5
4.
Software Description: Monitoring of Up to 12 Battery Cells
The supplied code is documented and easy to adjust for verifying the functions of the Atmel® ATA6870 and start BMS
application development work.
After the board has been connected as described above the microcontroller automatically starts a cyclic measurement of
voltages, temperature, and current. LED 1 indicates these cyclic measurements. It toggles in default operation. A
continuously illuminated LED1 indicates an open clamp. See Section 4.2 “Open Cell Check” on page 7 for more information
about open clamp detection. LED 2 indicates that for some reason the MOSFETS have been disabled. The default software
disables the FETs in case of these events:
● Overvoltage (at least 1 cell exceeds the upper default threshold of 4.2V)
●
●
●
●
Undervoltage (at least 1 cell exceeds the lower default threshold of 2.5V)
Overcurrent (the current through the shunt exceeds the default threshold of 80mA)
Overheating (the temperature exceeds the upper threshold, default value is 60°C)
Low temperature threshold (the default threshold is -20°C)
LED 3 indicates whether the Atmel ATA6870s are turned on or not. An active LED indicates that the Atmel ATA6870s are
enabled.
Table 4-1.
LED Functions
LED
Function
LED 1
Indicates clamp is open when permanently illuminated
Indicates cyclic measurements when blinking
LED 2
On indicates disabled MOSFETs for one of the reasons listed above
LED 3
On indicates active Atmel ATA6870
The Atmel ATmega32HVB has no clock divider to provide an external slower clock than 1/2 CPU clock. Requirement of
Atmel ATA6870 is fCLK > 2 fSPI. Hence, the clock frequency of 1MHz is mandatory to provide a 500kHz clock for the ADCs
of the Atmel ATA6870 and 250kHz for SPI.
6
ATA6870-DK10 [APPLICATION NOTE]
9228C–AUTO–02/15
4.1
Supplied Code
4.1.1
config.h
This section refers to the config.h file provided in the zip archive with this Application Note. Only values in the User Setting
paragraph should be changed!
------------- GENERAL SETTING-------------------------------CELLSIC#
Selecting which Cells are used Bits 0-5 -> Cells 1-6
------------- TEMPERATURE SETTING---------------------------RES_REF#
Value of the mounted reference resistor (default: 3300)
T_TLS
Temperature belonging to the first Value in the lookup
table (index 0, default: -20)
T_TLE
Temperature belonging to the last value in the lookup
table (default: 80)
T_TLSZ
Temperature step size used in the lookup table (default:
1)
T_LOWERTHRESHOLD
Lower temperature threshold
T_UPPERTHRESHOLD
Upper temperature threshold
------------- COULOMBCOUNTER SETTING------------------------SHUNT_RESISTANCE
Value of the shunt resistor in mOhm
RCC_CONVERSIONPERIOD
The cycle times for the Regular Current Check
0x00 - 256ms (default)
0x01 - 512ms
0x02 - 1s
0x11 - 2s
RCC_DIVIDEDSZ
0x01 to enable divided Voltage (Current) stepsize
RCC_CHARGETHRESHOLD
Threshold for charging current, exceeding the
threshold will turn off the Mosfets
RCC_DISCHARGETHRESHOLD
Threshold for discharging current, exceeding the
threshold will turn off the Mosfets
Other values should not be changed in the default HW setup!
4.2
Open Cell Check
The implemented function checks for open clamps by measuring the cell voltages two times. During the first check a normal
measurement is completed and the values stored. During the second check the voltages are measured while the discharge
function for all cells is active. If the two measurements for the same cell differ by more than 100mV it is very likely that one or
more cells are not properly connected. The implemented method cannot be used to determine which cell is not properly
connected. A continuously illuminated LED1 indicates an open clamp.
4.3
Voltage Measurements
The standard software loop measures the voltage ADC value and the offset ADC value for every cell and checks for
overvoltage and undervoltage once per cycle. Further information about the acquiring of voltages can be found in the Atmel®
ATA6870 datasheet Section 7.5.1. The formula for calculating the voltage:
V acq – V offset
Voltage (Cell) = 4V   ---------------------------------
 3031 – V offset
ATA6870-DK10 [APPLICATION NOTE]
9228C–AUTO–02/15
7
4.4
Temperature Measurements
The default software only measures channel 1 of chip 1. The temperature sensors are based on a resistor divider using a
standard resistor and an NTC resistor. This resistor divider is connected to the reference of the ADC for temperature
measuring. Because the ADC is sharing the same reference value, the output of temperature measurement with ADC is ratio
metric. Further information is found in the Atmel ATA6870 datasheet Section 7.5.3: Temperature Channel.
For this application Atmel recommends using Res_Ref1 = 3.3k and RES_NTC1 R25 = 10k, B = 3435. The software
supplied for this board uses these values as default. The function uses a lookup table to determine the temperature. This
table has to be edited if an NTC other than the recommended one is used. The values in the lookup table range from –20°C
(index 0) to +80°C (index 100). These values can be edited via the config.h file in the User Settings section. More
Information about this file can be found in Section 4.1 “Supplied Code” on page 7. The calculation of RES_NTC is carried out
based on the formula provided in the Atmel ATA6870 datasheet Section 7.5.3:
RES_NTC(1)
8
8
adc (out) = 2048   1 + ---------------------------------------------------------------------------  ------ – ------

(RES_NTC(1) + RES_REF(1)) 15 10
When using another NTC, the LookupADC.txt has to be edited to match the NTC used.
4.5
State of Charge Measurements
Highly precise SOC measurement is possible by combining the features of the Atmel ATmega32HVB and the Atmel
ATA6870. The coulomb counting feature of the Atmel ATmega32HVB enables highly precise measurements of the change
in the state of charge. Frequent reading of the current in a shunt is used to update the SOC frequently. The acquired cell
voltages and temperatures can be used to determine the SOC without the Atmel ATmega32HVB. The easiest way is to
compare the SOC measured by the added/extracted charge with the calculated SOC using the cell voltage, temperature,
and the data provided by the manufacturer of the cells. Further information regarding the coulomb counting ADC as well as
an implementation suitable for the Atmel ATmega16HVA is found in Application Note AVR352.
4.6
Overcurrent Protection
The current through the shunt is calculated by measured voltage drop. The limit can be set via the CADRDC/CADRCC
register. The step size depends on the settings of the CADCSRC register and the shunt used. For further information about
limiting current see the Atmel ATmega32HVB datasheet Section 19.4: Regular Current Detection Operation. The supplied
software allows the feature to be tested by adjusting the values in the config.h file. More Information about this file can be
found in Section 4.1 “Supplied Code” on page 7. Values/part of the code should only be changed if you are aware of possible
consequences. The default implementation continuously measures the current and generates an interrupt if the entered
thresholds are exceeded. The thresholds are defined in the config.h file. The thresholds are written to the registers in the
function CCinit in the Atmel ATA6870_func.c file. Refer to the features of the Atmel ATmega32HVB in the coulomb counter
section to learn more about the time the controller waits for the values to be written.
C Code Example
CADRCC = RCC_CADRCC;
while(CADCSRA & (1 << CADUB));
CADRDC = RDC_CADRDC;
while(CADCSRA & (1 << CADUB));
8
ATA6870-DK10 [APPLICATION NOTE]
9228C–AUTO–02/15
//
//
//
//
Charge Threshold
Wait values to be written
Discharge Threshold
Wait values to be written
5.
Features of the Atmel ATmega32HVB
Since the Atmel® ATmega32HVB is a part of the Atmel AVR® family which is dedicated to battery management there are
several special features such as coulomb counting and the control of the two charge/discharge MOSFETs.
5.1
Coulomb Counter
The coulomb counter ADC runs on a different clock than the CPU. This clock is slower and therefore several things have to
be kept in mind before using it. Writing several registers in sequence takes a long time depending on the delays between
each write cycle. A possible solution is given in the supplied software example:
C Code Example
void CCinit(){
CADRCC = RCC_CADRCC;
while(CADCSRA & (1 << CADUB));
CADRDC = RDC_CADRDC;
while(CADCSRA & (1 << CADUB));
SETBIT(CADCSRB,1<<CADRCIE);
while(CADCSRA & (1 << CADUB));
// Charge Threshold
// Discharge Threshold
// Interrupt Enable
// Voltage Scaling
SETBIT(CADCSRC,RCC_DIVIDEDSZ<<CADVSE);
while(CADCSRA & (1 << CADUB));
SETBIT(CADCSRA,((1<<CADEN)|(1<<CADSE)|(RCC_CONVERSIONPERIOD<<1)));
// ADC Enable, RCC Mode, Sampling
// Interval
while(CADCSRA & (1 << CADUB));
}
The Update Busy (CADUB) bit in CADSRA is cleared and written by hardware.
5.2
Charging/Discharging FETs
The two FETs are controlled by an N-channel FET driver. The pins (OC and OD) are designed for outputting a high voltage
of approx. 13V. The status of the pins is controlled by software via the FCSR - FET control and status register.
C Code Example
void Configure_Fet(unsigned char Fet){
if(Fet&0x01)
SETBIT(FCSR, (1<<DFE));
else
CLEARBIT(FCSR,(1<<DFE));
if(Fet&0x02)
SETBIT(FCSR,(1<<CFE));
else
CLEARBIT(FCSR,(1<<CFE));
}
The example above implements an easy method to enable or disable the two FETs independently of each other. For more
information, see the Atmel ATmega32HVB datasheet page 148ff.
ATA6870-DK10 [APPLICATION NOTE]
9228C–AUTO–02/15
9
6.
Power Consumption
There are several ways to reduce the power consumption of the Atmel ATA6870 and the Atmel ATmega32HVB. Sleep
modes are documented in the datasheet of the Atmel ATA6870 Section 7.1.1 and in the Atmel ATmega32HVB datasheet
Section 10. This board allows the Atmel ATA6870 to be enabled/disabled using the Atmel ATmega32HVB software. The pin
PB2 is used to control a transistor for activating/deactivating the Atmel ATA6870. Other options which are not implemented
are the use of interrupts and a timer (sleep between cycles).
10
ATA6870-DK10 [APPLICATION NOTE]
9228C–AUTO–02/15
Schematic
Figure 7-1. Schematic
R4
CELL+
ZXMN2F34FH
38
GND_2
32
R55
31
121kΩ
R57
3.3kkΩ
R49
28
3.3kkΩ
29
NTC
30
27
R56
NTC
25
GND_2
26
C33
10nF
C15
3
J5
0Ω
GND_2
1kΩ
T15
2
GND_2
GND_2
R29
100Ω
GND_2
33
GND_2
R53
J3-2
1
34
R52
ATST
GND
CS_N
100nF
AVDD
35
100kΩ
39
40
41
42
PD_N
37
VDDHVP
MISO_IN
MOSI_OUT
SCK_OUT
44
45
43
CLK_OUT
CS_N_OUT
IRQ_IN
46
CLK
1kΩ
T14
47
IRQ
ZXMN2F34FH
R95
4.7kΩ
J1-1
AVSS
C14
100Ω
Q1
MMBT2222A
MBAT1
13
56kΩ
TEMP1
TEMPVSS
GND
R30
J3-3
12
TEMP2
DISCH1
DVDD
R47
R94
MBAT2
36
24
11
Atmel
ATA6870
DISCH2
23
ZXMN2F34FH
MM3Z13VC
BIASRES
TEMPREF
DVSS
10
MBAT3
VDDFUSE
100nF
DISCH3
22
9
IC2
CS_FUSE
8
T13
PWTST
21
7
1kΩ
C13
100Ω
MBAT4
20
R31
J3-4
D1
VDDHVM
PD_N_OUT
POW_ENA
SCANMODE
6
GND_2
C6
+
nc (33μF/50V)
DISCH4
DTST
5
MBAT5
19
100nF
R46
G
PACK+
4
ZXMN2F34FH
Q4
IRF5210SPBF
56kΩ
T16
DISCH5
18
100Ω
R93
3
C12
D
S
2
1kΩ
MFIRST
R32
J3-5
17
R45
D
MISO
1
MBAT7
100nF
VDDHV
48
C11
T17
ZXMN2F34FH
MOSI
OD
1kΩ
16
J3-6
100Ω
Q5
IRF5210SPBF
GND_2
C38
220nF
R33
MBAT6
G
Q6
FMMT620
51kΩ
D
R58
R10
4.7kΩ
R66
Q2
MMBT2222A
PB2
4.7kΩ
R40
Q7
SQ2301ES
R37
150Ω
100nF
DISCH6
D2
1kΩ
T18
R41
7.5kΩ
G
100nF
30V
C10
100Ω
MM3Z13VC
S
R34
J3-7
S
C32
10μF
30V
SCK
56kΩ
+ C1
15
R109
R38
10Ω/0.25W
R59
14
R96
56kΩ
OC
100nF
R54
R27
0Ω
J1-2
1kΩ
J3-1
R39
tbd
R86
10Ω/0.25W
10Ω/0.25W
D3
BZV55C6V8-TP
+ C3
R25
C16
100nF
C24
R24
35
1
34
2
33
3
32
R21
31
121kΩ
J6
0Ω
R23
3.3kΩ
28
R76
NTC
29
3.3kΩ
30
27
26
25
100kΩ
PD_N
37
VDDHVP
39
MISO_IN
MOSI_OUT
40
SCK_OUT
41
42
CLK_OUT
CS_N_OUT
43
44
IRQ_IN
45
MBAT7
VDDHV
38
GND
100nF
ZXMN2F34FH
36
R44
T8
ATST
GND
C22
100Ω
CLK
CS_N
J4-3
1kΩ
DVDD
R6
12
AVSS
AVDD
C7
+
nc (33μF/50V)
24
R7
MBAT1
IRQ
23
11
TEMP1
TEMPVSS
DVSS
ZXMN2F34FH
TEMP2
DISCH1
VDDFUSE
10
MBAT2
22
100nF
TEMPREF
Atmel
ATA6870
DISCH2
CS_FUSE
T7
9
21
8
BIASRES
20
7
1kΩ
C21
100Ω
MBAT3
SCANMODE
R5
R8
J4-4
PWTST
IC1
DISCH3
DTST
6
MBAT4
19
5
POW_ENA
18
100nF
ZXMN2F34FH
VDDHVM
PD_N_OUT
DISCH4
MFIRST
4
MBAT5
17
T10
C18
DISCH5
MISO
3
MOSI
2
16
100Ω
R3
1kΩ
46
48
1
R9
J4-5
47
220nF
100nF
MBAT6
T11
ZXMN2F34FH
DISCH6
nc
1kΩ
C17
100Ω
SCK
nc
NTC
R10
J4-6
R22
15
TP1
T12
R13
100Ω
R18
C19
100nF
30V
ZXMN2F34FH
R19
0Ω
opt. ext.supply
10μF
30V
1kΩ
R77
R11
J4-7
VDD_HVM
R12
Q2
NSS60601MZ4
14
J1-3
J1-4
GND_2
ZXMN2F34FH
13
R15
R1
J4-2
1kΩ
C23
100Ω
T9
100nF
C20
10nF
ZXMN2F34FH
R16
1kΩ
J4-1
R26
10/0.25WΩ
CELL-
C30
100nF
6
4
C27
VFET
100nF
12
13
C5
R88
1kΩ
100nF
50V
11
C8
2.2μF
25V
100nF
C31
VCC
PA0 (ADC0/SGND/PCINT1)
VCC
PA1 (ADC1/SGND/PCINT1)
VREG
PA2 (PCINT2/T0)
VREF
PA3 (PCINT3/T1)
VFET
PB0 (PCINT4/ICP00)
BATT
VCLMP10
5 GND
15 GND
R89
10x1F
1
2
3
4
5
CELLPACK-
RSENSE
VDD_HVM
VCC
VFET
IRQ
6
7
8
9
10
CLK
OD
MISO
OC
MOSI
RESET
SCK
CS_N
J7
1
2
3
PACK-
4
44
R99
1kΩ
C34
R91
100Ω
100nF
R100
43
1
2
42
1kΩ
5
OC
6
OD
7
R2
8
PB4 (SS/PCINT8)
18
16
10
PB5 (SCK/PCINT9)
PB6 (MOSI/PCINT10)
PB7 (MISO/PCINT11)
PI
PPI
NI
NNI
NV
OC
OD
PC0 (INT0/EXTPROT)
PC1 (INT1)
PC2 (INT2)
PC3 (INT3/SDA)
PC4 (SCL)
PC5
PV1
37
PVT
1kΩ
9
PV2
PV3
17
27
J8
Piggypack Board
for other Microcontroller
R113
RSENSE
100Ω
PB2 (PCINT6)
PB3 (PCINT7)
35 GND
3 VREFGND
10x1F
PB1 (PCINT5/CKOUT)
NC
NC
PV4
RESET/DW
LED_0603
LED2
8
9
LED3
10
R28
1kΩ
R35
1kΩ
R36
1kΩ
VCC
LED1
7
5.1kΩ
36
R20
14
R17
IC3
ATMEGA32HVB
+
2.2μF
5.1kΩ
C2
VCC
J9
20
CLK
21
22
PB2
23
IRQ
24
CS_N
25
SCK
26
MOSI
28
MISO
29
30
31
32
33
34
VCC
7.
3x2M
MISO
SCK
RESET
41
40
39
38
R14
4.7kΩ
D4
LL4148
19
1
3
5
2
4
6
VCC
MOSI
J2
RESET
C24
nc
ATA6870-DK10 [APPLICATION NOTE]
9228C–AUTO–02/15
11
Figure 7-2. PCB Top
12
ATA6870-DK10 [APPLICATION NOTE]
9228C–AUTO–02/15
Figure 7-3. PCB Bottom
ATA6870-DK10 [APPLICATION NOTE]
9228C–AUTO–02/15
13
8.
Revision History
Please note that the following page numbers referred to in this section refer to the specific revision mentioned, not to this
document.
14
Revision No.
History
9228C-AUTO-02/15
 Put document in the latest template
9228B-AUTO-10/12
 Section 4.4 “Temperature Measurements” on page 8 updated
ATA6870-DK10 [APPLICATION NOTE]
9228C–AUTO–02/15
XXXXXX
Atmel Corporation
1600 Technology Drive, San Jose, CA 95110 USA
T: (+1)(408) 441.0311
F: (+1)(408) 436.4200
|
www.atmel.com
© 2015 Atmel Corporation. / Rev.: 9228C–AUTO–02/15
Atmel®, Atmel logo and combinations thereof, Enabling Unlimited Possibilities®, AVR®, and others are registered trademarks or trademarks of Atmel Corporation in U.S.
and other countries. Other terms and product names may be trademarks of others.
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 THE ATMEL TERMS AND CONDITIONS OF SALES LOCATED ON THE
ATMEL WEBSITE, 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 INCIDENTAL DAMAGES (INCLUDING, WITHOUT LIMITATION, DAMAGES
FOR LOSS AND 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 products 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 products are not intended,
authorized, or warranted for use as components in applications intended to support or sustain life.
SAFETY-CRITICAL, MILITARY, AND AUTOMOTIVE APPLICATIONS DISCLAIMER: Atmel products are not designed for and will not be used in connection with any applications where
the failure of such products would reasonably be expected to result in significant personal injury or death (“Safety-Critical Applications”) without an Atmel officer's specific written
consent. Safety-Critical Applications include, without limitation, life support devices and systems, equipment or systems for the operation of nuclear facilities and weapons systems.
Atmel products are not designed nor intended for use in military or aerospace applications or environments unless specifically designated by Atmel as military-grade. Atmel products are
not designed nor intended for use in automotive applications unless specifically designated by Atmel as automotive-grade.