Files
platformio-core/docs/platforms/atmelavr.rst
2015-08-09 18:08:34 +03:00

855 lines
18 KiB
ReStructuredText

.. _platform_atmelavr:
Platform ``atmelavr``
=====================
Atmel AVR 8- and 32-bit MCUs deliver a unique combination of performance, power efficiency and design flexibility. Optimized to speed time to market-and easily adapt to new ones-they are based on the industrys most code-efficient architecture for C and assembly programming.
For more detailed information please visit `vendor site <http://www.atmel.com/products/microcontrollers/avr/default.aspx>`_.
.. contents::
Packages
--------
.. list-table::
:header-rows: 1
* - Name
- Contents
* - ``toolchain-atmelavr``
- `avr-gcc <https://gcc.gnu.org/wiki/avr-gcc>`_, `GDB <http://www.gnu.org/software/gdb/>`_, `AVaRICE <http://avarice.sourceforge.net/>`_, `SimulAVR <http://www.nongnu.org/simulavr/>`_
* - ``tool-avrdude``
- `AVRDUDE <http://www.nongnu.org/avrdude/>`_
* - ``framework-arduinoavr``
- `Arduino Wiring-based Framework (AVR Core, 1.6) <http://arduino.cc/en/Reference/HomePage>`_
* - ``tool-micronucleus``
- `Micronucleus <https://github.com/micronucleus/micronucleus>`_
.. warning::
**Linux Users:** Don't forget to install "udev" rules file
`99-platformio-udev.rules <https://github.com/platformio/platformio/blob/develop/scripts/99-platformio-udev.rules>`_ (an instruction is located in the file).
**Windows Users:** Please check that you have correctly installed USB driver
from board manufacturer
Frameworks
----------
.. list-table::
:header-rows: 1
* - Name
- Description
* - :ref:`framework_arduino`
- Arduino Framework allows writing cross-platform software to control devices attached to a wide range of Arduino boards to create all kinds of creative coding, interactive objects, spaces or physical experiences.
Boards
------
.. note::
* You can list pre-configured boards by :ref:`cmd_boards` command or
`PlatformIO Boards Explorer <http://platformio.org/#!/boards>`_
* For more detailed ``board`` information please scroll tables below by
horizontal.
Adafruit
~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``flora8``
- `Adafruit Flora <http://www.adafruit.com/product/659>`_
- ATMEGA32U4
- 8 MHz
- 32 Kb
- 2.5 Kb
* - ``gemma``
- `Adafruit Gemma <http://www.adafruit.com/products/1222>`_
- ATTINY85
- 8 MHz
- 8 Kb
- 0.5 Kb
* - ``protrinket3``
- `Adafruit Pro Trinket 3V/12MHz (USB) <http://www.adafruit.com/products/2010>`_
- ATMEGA328P
- 12 MHz
- 32 Kb
- 2 Kb
* - ``protrinket3ftdi``
- `Adafruit Pro Trinket 3V/12MHz (FTDI) <http://www.adafruit.com/products/2010>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - ``protrinket5``
- `Adafruit Pro Trinket 5V/16MHz (USB) <http://www.adafruit.com/products/2000>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - ``protrinket5ftdi``
- `Adafruit Pro Trinket 5V/16MHz (USB) <http://www.adafruit.com/products/2000>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - ``trinket3``
- `Adafruit Trinket 3V/8MHz <http://www.adafruit.com/products/1500>`_
- ATTINY85
- 8 MHz
- 8 Kb
- 0.5 Kb
* - ``trinket5``
- `Adafruit Trinket 5V/16MHz <http://www.adafruit.com/products/1501>`_
- ATTINY85
- 16 MHz
- 8 Kb
- 0.5 Kb
Arduino
~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``LilyPadUSB``
- `Arduino LilyPad USB <http://arduino.cc/en/Main/ArduinoBoardLilyPadUSB>`_
- ATMEGA32U4
- 8 MHz
- 32 Kb
- 2.5 Kb
* - ``atmegangatmega168``
- `Arduino NG or older ATmega168 <http://arduino.cc/en/main/boards>`_
- ATMEGA168
- 16 MHz
- 16 Kb
- 1 Kb
* - ``atmegangatmega8``
- `Arduino NG or older ATmega8 <http://arduino.cc/en/main/boards>`_
- ATMEGA8
- 16 MHz
- 8 Kb
- 1 Kb
* - ``btatmega168``
- `Arduino BT ATmega168 <http://arduino.cc/en/main/boards>`_
- ATMEGA168
- 16 MHz
- 16 Kb
- 1 Kb
* - ``btatmega328``
- `Arduino BT ATmega328 <http://arduino.cc/en/main/boards>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - ``diecimilaatmega168``
- `Arduino Duemilanove or Diecimila ATmega168 <http://arduino.cc/en/Main/ArduinoBoardDiecimila>`_
- ATMEGA168
- 16 MHz
- 16 Kb
- 1 Kb
* - ``diecimilaatmega328``
- `Arduino Duemilanove or Diecimila ATmega328 <http://arduino.cc/en/Main/ArduinoBoardDiecimila>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - ``esplora``
- `Arduino Esplora <http://arduino.cc/en/Main/ArduinoBoardEsplora>`_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
* - ``ethernet``
- `Arduino Ethernet <http://arduino.cc/en/Main/ArduinoBoardEthernet>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - ``fio``
- `Arduino Fio <http://arduino.cc/en/Main/ArduinoBoardFio>`_
- ATMEGA328P
- 8 MHz
- 32 Kb
- 2 Kb
* - ``leonardo``
- `Arduino Leonardo <http://arduino.cc/en/Main/arduinoBoardLeonardo>`_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
* - ``lilypadatmega168``
- `Arduino LilyPad ATmega168 <http://arduino.cc/en/Main/ArduinoBoardLilyPad>`_
- ATMEGA168
- 8 MHz
- 16 Kb
- 1 Kb
* - ``lilypadatmega328``
- `Arduino LilyPad ATmega328 <http://arduino.cc/en/Main/ArduinoBoardLilyPad>`_
- ATMEGA328P
- 8 MHz
- 32 Kb
- 2 Kb
* - ``megaADK``
- `Arduino Mega ADK <http://arduino.cc/en/Main/ArduinoBoardMegaADK>`_
- ATMEGA2560
- 16 MHz
- 256 Kb
- 8 Kb
* - ``megaatmega1280``
- `Arduino Mega or Mega 2560 ATmega1280 <http://arduino.cc/en/Main/arduinoBoardMega>`_
- ATMEGA1280
- 16 MHz
- 128 Kb
- 8 Kb
* - ``megaatmega2560``
- `Arduino Mega or Mega 2560 ATmega2560 (Mega 2560) <http://arduino.cc/en/Main/arduinoBoardMega2560>`_
- ATMEGA2560
- 16 MHz
- 256 Kb
- 8 Kb
* - ``micro``
- `Arduino Micro <http://arduino.cc/en/Main/ArduinoBoardMicro>`_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
* - ``miniatmega168``
- `Arduino Mini ATmega168 <http://arduino.cc/en/Main/ArduinoBoardMini>`_
- ATMEGA168
- 16 MHz
- 16 Kb
- 1 Kb
* - ``miniatmega328``
- `Arduino Mini ATmega328 <http://arduino.cc/en/Main/ArduinoBoardMini>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - ``nanoatmega168``
- `Arduino Nano ATmega168 <http://arduino.cc/en/Main/ArduinoBoardNano>`_
- ATMEGA168
- 16 MHz
- 16 Kb
- 1 Kb
* - ``nanoatmega328``
- `Arduino Nano ATmega328 <http://arduino.cc/en/Main/ArduinoBoardNano>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - ``pro16MHzatmega168``
- `Arduino Pro or Pro Mini ATmega168 (5V, 16 MHz) <http://arduino.cc/en/Main/ArduinoBoardProMini>`_
- ATMEGA168
- 16 MHz
- 16 Kb
- 1 Kb
* - ``pro16MHzatmega328``
- `Arduino Pro or Pro Mini ATmega328 (5V, 16 MHz) <http://arduino.cc/en/Main/ArduinoBoardProMini>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - ``pro8MHzatmega168``
- `Arduino Pro or Pro Mini ATmega168 (3.3V, 8 MHz) <http://arduino.cc/en/Main/ArduinoBoardProMini>`_
- ATMEGA168
- 8 MHz
- 16 Kb
- 1 Kb
* - ``pro8MHzatmega328``
- `Arduino Pro or Pro Mini ATmega328 (3.3V, 8 MHz) <http://arduino.cc/en/Main/ArduinoBoardProMini>`_
- ATMEGA328P
- 8 MHz
- 32 Kb
- 2 Kb
* - ``robotControl``
- `Arduino Robot Control <http://arduino.cc/en/Main/Robot>`_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
* - ``robotMotor``
- `Arduino Robot Motor <http://arduino.cc/en/Main/Robot>`_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
* - ``uno``
- `Arduino Uno <http://arduino.cc/en/Main/ArduinoBoardUno>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - ``yun``
- `Arduino Yun <http://arduino.cc/en/Main/ArduinoBoardYun>`_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
BQ
~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``zumbt328``
- `BQ ZUM BT-328 board <http://www.bq.com/gb/products/zum.html>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
BitWizard
~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``raspduino``
- `BitWizard Raspduino <http://www.bitwizard.nl/wiki/index.php/Raspduino>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
Digistump
~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``digispark-pro``
- `Digistump Digispark Pro (Default 16 MHz) <http://digistump.com/products/109>`_
- ATTINY167
- 16 MHz
- 16 Kb
- 0.5 Kb
* - ``digispark-pro32``
- `Digistump Digispark Pro (16 MHz) (32 byte buffer) <http://digistump.com/products/109>`_
- ATTINY167
- 16 MHz
- 16 Kb
- 0.5 Kb
* - ``digispark-pro64``
- `Digistump Digispark Pro (16 MHz) (64 byte buffer) <http://digistump.com/products/109>`_
- ATTINY167
- 16 MHz
- 16 Kb
- 0.5 Kb
* - ``digispark-tiny``
- `Digistump Digispark (Default - 16 MHz) <http://digistump.com/products/1>`_
- ATTINY85
- 16 MHz
- 8 Kb
- 0.5 Kb
Engduino
~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``engduinov1``
- `Engduino 1 <http://www.engduino.org>`_
- ATMEGA32U4
- 8 MHz
- 32 Kb
- 2.5 Kb
* - ``engduinov2``
- `Engduino 2 <http://www.engduino.org>`_
- ATMEGA32U4
- 8 MHz
- 32 Kb
- 2.5 Kb
* - ``engduinov3``
- `Engduino 3 <http://www.engduino.org>`_
- ATMEGA32U4
- 8 MHz
- 32 Kb
- 2.5 Kb
LightUp
~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``lightup``
- `LightUp <https://www.lightup.io/>`_
- ATMEGA32U4
- 8 MHz
- 32 Kb
- 2.5 Kb
LowPowerLab
~~~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``moteino``
- `LowPowerLab Moteino <https://lowpowerlab.com/shop/moteino-r4>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - ``moteinomega``
- `LowPowerLab MoteinoMEGA <http://lowpowerlab.com/blog/2014/08/09/moteinomega-available-now/>`_
- ATMEGA1284P
- 16 MHz
- 128 Kb
- 16 Kb
Microduino
~~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``1284p16m``
- `Microduino Core+ (ATmega1284P@16M,5V) <https://www.microduino.cc/wiki/index.php?title=Microduino-Core%2B>`_
- ATMEGA1284P
- 16 MHz
- 128 Kb
- 16 Kb
* - ``1284p8m``
- `Microduino Core+ (ATmega1284P@8M,3.3V) <https://www.microduino.cc/wiki/index.php?title=Microduino-Core%2B>`_
- ATMEGA1284P
- 8 MHz
- 128 Kb
- 16 Kb
* - ``168pa16m``
- `Microduino Core (Atmega168PA@16M,5V) <https://www.microduino.cc/wiki/index.php?title=Microduino-Core>`_
- ATMEGA168P
- 16 MHz
- 16 Kb
- 1 Kb
* - ``168pa8m``
- `Microduino Core (Atmega168PA@8M,3.3V) <https://www.microduino.cc/wiki/index.php?title=Microduino-Core>`_
- ATMEGA168P
- 8 MHz
- 16 Kb
- 1 Kb
* - ``328p16m``
- `Microduino Core (Atmega328P@16M,5V) <https://www.microduino.cc/wiki/index.php?title=Microduino-Core>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - ``328p8m``
- `Microduino Core (Atmega328P@8M,3.3V) <https://www.microduino.cc/wiki/index.php?title=Microduino-Core>`_
- ATMEGA328P
- 8 MHz
- 32 Kb
- 2 Kb
* - ``32u416m``
- `Microduino Core USB (ATmega32U4@16M,5V) <https://www.microduino.cc/wiki/index.php?title=Microduino-CoreUSB>`_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
* - ``644pa16m``
- `Microduino Core+ (Atmega644PA@16M,5V) <https://www.microduino.cc/wiki/index.php?title=Microduino-Core%2B>`_
- ATMEGA644P
- 16 MHz
- 64 Kb
- 4 Kb
* - ``644pa8m``
- `Microduino Core+ (Atmega644PA@8M,3.3V) <https://www.microduino.cc/wiki/index.php?title=Microduino-Core%2B>`_
- ATMEGA644P
- 8 MHz
- 64 Kb
- 4 Kb
PanStamp
~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``panStampAVR``
- `PanStamp AVR <http://www.panstamp.com/product/panstamp-avr/>`_
- ATMEGA328P
- 8 MHz
- 32 Kb
- 2 Kb
Quirkbot
~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``quirkbot``
- `Quirkbot <http://quirkbot.com>`_
- ATMEGA32U4
- 8 MHz
- 32 Kb
- 2.5 Kb
RedBearLab
~~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``blend``
- `RedBearLab Blend <http://redbearlab.com/blend/>`_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
* - ``blendmicro16``
- `RedBearLab Blend Micro 3.3V/16MHz (overclock) <http://redbearlab.com/blendmicro/>`_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
* - ``blendmicro8``
- `RedBearLab Blend Micro 3.3V/8MHz <http://redbearlab.com/blendmicro/>`_
- ATMEGA32U4
- 8 MHz
- 32 Kb
- 2.5 Kb
RepRap
~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``reprap_rambo``
- `RepRap RAMBo <http://reprap.org/wiki/Rambo>`_
- ATMEGA2560
- 16 MHz
- 256 Kb
- 8 Kb
Sanguino
~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``sanguino_atmega12848m``
- `Sanguino ATmega1284p (8MHz) <https://code.google.com/p/sanguino/>`_
- ATMEGA1284P
- 8 MHz
- 128 Kb
- 16 Kb
* - ``sanguino_atmega1284m``
- `Sanguino ATmega1284p (20MHz) <https://code.google.com/p/sanguino/>`_
- ATMEGA1284P
- 20 MHz
- 128 Kb
- 16 Kb
* - ``sanguino_atmega1284p``
- `Sanguino ATmega1284p (16MHz) <https://code.google.com/p/sanguino/>`_
- ATMEGA1284P
- 16 MHz
- 128 Kb
- 16 Kb
* - ``sanguino_atmega644p``
- `Sanguino ATmega644P <https://code.google.com/p/sanguino/>`_
- ATMEGA644P
- 16 MHz
- 64 Kb
- 4 Kb
SparkFun
~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``sparkfun_digitalsandbox``
- `SparkFun Digital Sandbox <https://www.sparkfun.com/products/12651>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - ``sparkfun_fiov3``
- `SparkFun Fio V3 3.3V/8MHz <https://www.sparkfun.com/products/11520>`_
- ATMEGA32U4
- 8 MHz
- 32 Kb
- 2.5 Kb
* - ``sparkfun_makeymakey``
- `SparkFun Makey Makey <https://www.sparkfun.com/products/11511>`_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
* - ``sparkfun_megamini``
- `SparkFun Mega Pro Mini 3.3V <https://www.sparkfun.com/products/10743>`_
- ATMEGA2560
- 8 MHz
- 256 Kb
- 8 Kb
* - ``sparkfun_megapro16MHz``
- `SparkFun Mega Pro 5V/16MHz <https://www.sparkfun.com/products/11007>`_
- ATMEGA2560
- 16 MHz
- 256 Kb
- 8 Kb
* - ``sparkfun_megapro8MHz``
- `SparkFun Mega Pro 3.3V/8MHz <https://www.sparkfun.com/products/10744>`_
- ATMEGA2560
- 8 MHz
- 256 Kb
- 8 Kb
* - ``sparkfun_promicro16``
- `SparkFun Pro Micro 5V/16MHz <https://www.sparkfun.com/products/12640>`_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
* - ``sparkfun_promicro8``
- `SparkFun Pro Micro 3.3V/8MHz <https://www.sparkfun.com/products/12587>`_
- ATMEGA32U4
- 8 MHz
- 32 Kb
- 2.5 Kb
* - ``sparkfun_redboard``
- `SparkFun RedBoard <https://www.sparkfun.com/products/12757>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - ``uview``
- `SparkFun MicroView <https://www.sparkfun.com/products/12923>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
TinyCircuits
~~~~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``tinyduino``
- `TinyCircuits TinyDuino Processor Board <https://tiny-circuits.com/tinyduino-processor-board.html>`_
- ATMEGA328P
- 8 MHz
- 32 Kb
- 2 Kb
* - ``tinylily``
- `TinyCircuits TinyLily Mini Processor <https://tiny-circuits.com/tiny-lily-mini-processor.html>`_
- ATMEGA328P
- 8 MHz
- 32 Kb
- 2 Kb
Wicked Device
~~~~~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``wildfirev2``
- `Wicked Device WildFire V2 <http://shop.wickeddevice.com/resources/wildfire/>`_
- ATMEGA1284P
- 16 MHz
- 128 Kb
- 16 Kb
* - ``wildfirev3``
- `Wicked Device WildFire V3 <http://shop.wickeddevice.com/resources/wildfire/>`_
- ATMEGA1284P
- 16 MHz
- 128 Kb
- 16 Kb