Hardware Reference
In-Depth Information
Twelve analog input channels
Flash memory: 32 KB (but 4 KB is used for the bootloader)
SRAM: 2.5 KB
EEPROM: 1 KB
Clock speed: 16 MHz
A unique feature of the Leonardo is that serial data is normally handled and programmed over USB, but
the Leonardo also has pins 0 and 1, which are configured as additional serial pins. These can be used for serial
communication, in addition to USB. For instance, you can program and communicate using serial over USB, while a
device like a GPS shield can use the onboard serial pins as hardware serial, without the need to use SoftwareSerial .
Avoid the conflict generated between SoftwareSerial and the Servo library when they are used at the same time.
The firmware updates allow for the programming of the devices over USB serial. They implement an improved
reset feature that allows for a software reset, triggered by the Arduino uploader at programming time. If the Arduino is
emulating a keyboard, joystick, or mouse, you need to be able to reset the device so you can reprogram it.
In the new system SPI, however, pins are not broken out into digital pins, and are only available in the 6-pin ICSP
header. For example, the Adafruit 32u4 breakout board and the Pro Mini from SparkFun Electronics both use the
ATmega32u4 chip, and can be configured to act like an Arduino Leonardo. However, the physical pin mappings might
be different, and this is where using a variants file is really helpful.
There are also two sets of I2C pins, but they are connected to the same pins on the ATMEga32u4 chip. They do
not have internal pull-up resistors. You will have to confirm whether your shield has onboard pull-up resistors, and
if not, you will have to add them. For instance, the Adafruit RFID shield will require that external pull-up resistors be
added to the board.
Figure 1-3 is a chart stowing how the pins of the ATmega32u4 chip are mapped to the pins on the Arduino
Leonardo.
Figure 1-3. ATmega32u4 pin numbering
 
Search WWH ::




Custom Search