Arduino Environment

Setup Arduino IDE

Download and install latest Arduino IDE: https://www.arduino.cc/en/Main/Software

Arduino ProMini

Description

Arduino ProMini is a smaller version of the Arduino board. It uses the same uC (ATmega328) with a smaller form factor.

Product page: https://www.arduino.cc/en/Main/ArduinoBoardProMini

Note: It does not include USB interface, so it needs to be programmed via UART cable or Arduino programmer (such as USBASP)

ProMini clone boards can be bought for ~$2 on ebay.

ATmega328 has the following characteristics:

CPUAVR (8-bit)
Freq20MHz(Max), 16MHz(typ@5V), 8MHz(typ@3.3V)
RAM2kB
Flash32kB
EEPROM1kB
Package28-32 DIP/QFP/QFN

IDE configuration

Select the correct board:
Tools > Boards = 'Arduino Pro or Pro Mini'
Tools > Processor = 'ATmega328 (5V, 16MHz)'
Tools > Programmer = 'USBasp'

More details can be found there.

Bootloader

Bootloader is required to use Arduino IDE to program via USB/SERIAL.

Digispark

Description

Digispark is a very small USB Key form factor board featuring ATtiny85 core

Product page: http://digistump.com/products/1

Due to limited ATtiny resources, many Arduino library will not work.

Digispark clone boards can be bought for ~$1.5 on ebay.

ATtiny85 has the following characteristics:

CPUAVR (8-bit)
Freq20MHz(Max)
RAM512B
Flash8kB
PackageSOIC-8

IDE configuration

Digispark USB driver

Install USB driver to MicroNucleus bootloader to allow IDE to reprogram Digispark board via USB

Download Windows version here

Add Digispark support to IDE

Launch Arduino IDE.
File > Preferences > Additional Board Manager URLs = 'http://digistump.com/package_digistump_index.json'
Tools > Board > Boards Manager: Install 'Digistump AVR Boards'
Tools > Board = 'Digispark (Default)'

The board can be program from IDE when connected via USB.

STM32duino

Description

STM32duino uses a much more powerful STM32F103C8T6 microcontroller based on a 72MHz ARM Cortex M3 CPU.

Product page: http://wiki.stm32duino.com/index.php?title=STM32F103_boards

STM32duino boards can be bought for little over $2 on ebay.

STM32F103C8T6 has the following characteristics:

CPUARM Cortex M3 (16/32bits)
Freq72MHz
RAM20kB
Flash64kB (can be 128kB)
FreqQFP-48

USB bootloader

USB bootloader must be programmed using UART and ST flasher tool:

IDE configuration

Add STM32 support to IDE

Launch Arduino IDE.
# install the arm-none-eabi-g++ toolchain
Tools > Board > Boards Manager: Install 'Arduino Zero'
Download STM32 hardware library from here.
Unzip to 'My Documents/Arduino/hardware'
Install STM32 Serial drivers: on Windows, run drivers/win/install_drivers.bat

Full details can be found Here

Set the IDE board

Select the correct board:
Tools > Boards = 'Generic STM32F103C series'
Tools > Variant = 'STM32F103C8 (20k RAM, 64k Flash)'
Tools > CPU Speed = '72MHz (Normal)'
Tools > Upload method = 'STM32duino bootloader'
Tools > Port = <USB/UART interface port>

05-Oct-2018