A000046 Arduino, A000046 Datasheet - Page 20
![MCU, MPU & DSP Development Tools Uno](/photos/15/92/159298/arduinounofront_sml.jpg)
A000046
Manufacturer Part Number
A000046
Description
MCU, MPU & DSP Development Tools Uno
Manufacturer
Arduino
Series
-r
Type
MCUr
Specifications of A000046
Processor To Be Evaluated
ATmega328
Interface Type
USB, I2C, SPI
Dimensions
2.7 in x 2.1 in
Operating Supply Voltage
5 V
Contents
Board
Lead Free Status / RoHS Status
Lead free / RoHS Compliant
For Use With/related Products
ATmega328
- Current page: 20 of 448
- Download datasheet (13Mb)
7.4.2
7.5
7.5.1
8161D–AVR–10/09
I/O Memory
Preventing EEPROM Corruption
General Purpose I/O Registers
During periods of low V
too low for the CPU and the EEPROM to operate properly. These issues are the same as for
board level systems using EEPROM, and the same design solutions should be applied.
An EEPROM data corruption can be caused by two situations when the voltage is too low. First,
a regular write sequence to the EEPROM requires a minimum voltage to operate correctly. Sec-
ondly, the CPU itself can execute instructions incorrectly, if the supply voltage is too low.
EEPROM data corruption can easily be avoided by following this design recommendation:
Keep the AVR RESET active (low) during periods of insufficient power supply voltage. This can
be done by enabling the internal Brown-out Detector (BOD). If the detection level of the internal
BOD does not match the needed detection level, an external low V
be used. If a reset occurs while a write operation is in progress, the write operation will be com-
pleted provided that the power supply voltage is sufficient.
The I/O space definition of the ATmega48PA/88PA/168PA/328P is shown in
mary” on page
All ATmega48PA/88PA/168PA/328P I/Os and peripherals are placed in the I/O space. All I/O
locations may be accessed by the LD/LDS/LDD and ST/STS/STD instructions, transferring data
between the 32 general purpose working registers and the I/O space. I/O Registers within the
address range 0x00 - 0x1F are directly bit-accessible using the SBI and CBI instructions. In
these registers, the value of single bits can be checked by using the SBIS and SBIC instructions.
Refer to the instruction set section for more details. When using the I/O specific commands IN
and OUT, the I/O addresses 0x00 - 0x3F must be used. When addressing I/O Registers as data
space using LD and ST instructions, 0x20 must be added to these addresses. The
ATmega48PA/88PA/168PA/328P is a complex microcontroller with more peripheral units than
can be supported within the 64 location reserved in Opcode for the IN and OUT instructions. For
the Extended I/O space from 0x60 - 0xFF in SRAM, only the ST/STS/STD and LD/LDS/LDD
instructions can be used.
For compatibility with future devices, reserved bits should be written to zero if accessed.
Reserved I/O memory addresses should never be written.
Some of the Status Flags are cleared by writing a logical one to them. Note that, unlike most
other AVRs, the CBI and SBI instructions will only operate on the specified bit, and can therefore
be used on registers containing such Status Flags. The CBI and SBI instructions work with reg-
isters 0x00 to 0x1F only.
The I/O and peripherals control registers are explained in later sections.
The ATmega48PA/88PA/168PA/328P contains three General Purpose I/O Registers. These
registers can be used for storing any information, and they are particularly useful for storing
global variables and Status Flags. General Purpose I/O Registers within the address range 0x00
- 0x1F are directly bit-accessible using the SBI, CBI, SBIS, and SBIC instructions.
423.
CC,
the EEPROM data can be corrupted because the supply voltage is
ATmega48PA/88PA/168PA/328P
CC
reset Protection circuit can
”Register Sum-
20
Related parts for A000046
Image
Part Number
Description
Manufacturer
Datasheet
Request
R
![A000082](/images/no-image3.png)
Part Number:
Description:
Daughter Cards & OEM Boards ARDUINO UNO PROTO PCB REV 3
Manufacturer:
Arduino
![A000083](/images/no-image3.png)
Part Number:
Description:
Daughter Cards & OEM Boards ARDUINO SHIELD PROTO KIT REV 3
Manufacturer:
Arduino
![A000081](/images/no-image3.png)
Part Number:
Description:
Daughter Cards & OEM Boards ARDUINO MEGA PROTO KIT REV 3
Manufacturer:
Arduino
![A000080](/images/no-image3.png)
Part Number:
Description:
Daughter Cards & OEM Boards ARDUINO MEGA PROTO PCB REV 3
Manufacturer:
Arduino
![K000007](/images/no-image3.png)
Part Number:
Description:
Development Boards & Kits - AVR ARDUINO STARTER KIT W/ UNO REV3
Manufacturer:
Arduino
![A000064](/images/no-image3.png)
Part Number:
Description:
RF Development Tools ARDUINO SHIELD WIRELESS PROTO
Manufacturer:
Arduino
Datasheet:
![A000065](/images/no-image3.png)
Part Number:
Description:
RF Development Tools ARDUINO SHIELD WIRELESS WITH SD
Manufacturer:
Arduino
Datasheet:
![A000035](/photos/15/87/158783/gettingstarted_tmb.jpg)
Part Number:
Description:
Development Software Getting started w/Arduino
Manufacturer:
Arduino
![A000031](/photos/15/88/158818/arduinoethernetshield_tmb.jpg)
Part Number:
Description:
Ethernet Modules & Development Tools Ethernet Shield for Arduino
Manufacturer:
Arduino
![LILYPAD](/photos/15/93/159314/lilypad_3_tmb.jpg)
Part Number:
Description:
MCU, MPU & DSP Development Tools LilyPad Arduino Main Board
Manufacturer:
Arduino
![A000005](/photos/24/11/241196/13t9275-30-web_tmb.jpg)
Part Number:
Description:
ARDUINO NANO Board
Manufacturer:
Arduino
Datasheet:
![A000056](/images/no-image3.png)
Part Number:
Description:
Ethernet Modules & Development Tools ETHERNET SHEILD PoE FOR ARDUINO
Manufacturer:
Arduino
Datasheet:
![A000048](/photos/18/99/189989/4243185_tmb.jpg)
Part Number:
Description:
ATMEGA328 MCU IC W/ Arduino UNO Bootloader
Manufacturer:
Arduino
Datasheet:
![X000001](/images/no-image3.png)
Part Number:
Description:
Memory Cards MICRO SD CARD 1GB WITH SD ADAPTER
Manufacturer:
Arduino