Board Support Package For 8-bit Arduino Microcontroller Boards

Introduction

Arduino Uno

Arduino Nano

Arduino Mega 2560

Arduino Leonardo

Arduino Pro Micro

 

This board support package (BSP) supports 8-bit Arduino Microcontroller boards listed above. It is currently based on Arduino core API libraries and uses AVR compiler tool chain for generating required binaries.

Getting Started

·       Install Arduino USB drivers for host PC available at this path ‘\hardware\arduino\arduino_default_drivers\’ in CASP installation directory. Latest drivers can be downloaded from Arduino web site.

·       Create model and build to generate required binary.

·       Refer below for programming and debugging support.

Board Configuration

·      General Configuration

Configuration Parameter

Arduino Uno

Arduino Nano

Arduino Leonardo

Arduino Pro Micro

Arduino Mega 2560

Board Title

Arduino Uno

Arduino Nano

Arduino Leonardo

Arduino Micro

Arduino Mega 2560

Tool Chain Type

Local Build

Board Preprocessor Symbol

_BUILD_BRD_ARD_UNO

_BUILD_BRD_ARD_NANO

_BUILD_BRD_ARD_LEONARDO

_BUILD_BRD_ARD_MICRO

_BUILD_BRD_ARD_MEGA

Platform Preprocessor Symbol

_BUILD_PLT_ARD

Compiler Preprocessor Symbol

_BUILD_CMP_AVR_GCC

C++11 Standard Support

No

File System Support

No

OpenMP/OpenCL/CUDA Support

No/No/No

Simulation Panel Support

No

 

·      Hardware Configuration

Configuration Parameter

Arduino Uno

Arduino Nano

Arduino Leonardo

Arduino Pro Micro

Arduino Mega 2560

Number of CPU cores

1

1

1

1

1

Dynamic Memory Support

Yes

Yes

Yes

Yes

Yes

Prefer Fixed/Floating Point

Floating Point

Floating Point

Floating Point

Floating Point

Floating Point

DI/DO Pins

0[0], 1[1], 2[2], 3[3], 4[4], 5[5], 6[6], 7[7], 8[8], 9[9], 10[10], 11[11], 12[12], 13 (LED)[13], A0[A0], A1[A1], A2[A2], A3[A3], A4[A4], A5[A5]

0[0], 1[1], 2[2], 3[3], 4[4], 5[5], 6[6], 7[7], 8[8], 9[9], 10[10], 11[11], 12[12], 13 (LED)[13], A0[A0], A1[A1], A2[A2], A3[A3], A4[A4], A5[A5]

0[0], 1[1], 2[2], 3[3], 4[4], 5[5], 6[6], 7[7], 8[8], 9[9], 10[10], 11[11], 12[12], 13 (LED)[13], A0[A0], A1[A1], A2[A2], A3[A3], A4[A4], A5[A5]

0 (RX)[0], 1 (TX)[1], 2[2], 3[3], 4[4], 5[5], 6[6], 7[7], 8[8], 9[9], 10[10], 14[14], 15[15], 16[16], A0[A0], A1[A1], A2[A2], A3[A3]

0[0], 1[1], 2[2], 3[3], 4[4], 5[5], 6[6], 7[7], 8[8], 9[9], 10[10], 11[11], 12[12], 13 (LED)[13], 14[14], 15[15], 16[16], 17[17], 18[18], 19[19], 20[20], 21[21], 22[22], 23[23], 24[24], 25[25], 26[26], 27[27], 28[28], 29[29], 30[30], 31[31], 32[32], 33[33], 34[34], 35[35], 36[36], 37[37], 38[38], 39[39], 40[40], 41[41], 42[42], 43[43], 44[44], 45[45], 46[46], 47[47], 48[48], 49[49], 50[50], 51[51], 52[52], 53[53]

ADC Default Resolution

10

10

10

10

10

ADC Pins

A0[A0], A1[A1], A2[A2], A3[A3], A4[A4], A5[A5]

A0[A0], A1[A1], A2[A2], A3[A3], A4[A4], A5[A5]

A0[A0], A1[A1], A2[A2], A3[A3], A4[A4], A5[A5]

A0[A0], A1[A1], A2[A2], A3[A3]

A0[A0], A1[A1], A2[A2], A3[A3], A4[A4], A5[A5], A6[A6], A7[A7], A8[A8], A9[A9], A10[A10], A11[A11], A12[A12], A13[A13], A14[A14], A15[A15]

PWM Default Resolution

8

8

8

8

8

PWM Pins

3[3], 5[5], 6[6], 9[9], 10[10], 11[11]

3[3], 5[5], 6[6], 9[9], 10[10], 11[11]

3[3], 5[5], 6[6], 9[9], 10[10], 11[11]

3[3], 5[5], 6[6], 9[9], 10[10], 14[14]

2[2], 3[3], 4[4], 5[5], 6[6], 7[7], 8[8], 9[9], 10[10], 11[11], 12[12], 13 (LED)[13], 44[44], 45[45], 46[46]

DAC Default Resolution

0

0

0

0

0

DAC Pins

-

-

-

-

-

UART0 Pins

Via USB Programmer Port and

Pin 0 (RX) and Pin 1 (TX)

Via USB Programmer Port and

Pin 0 (RX) and Pin 1 (TX)

Via USB Programmer Port

Via USB Programmer Port

Via USB Programmer Port and

Pin 0 (RX) and Pin 1 (TX)

UART1 Pins

-

-

Pin 0 (RX) and Pin 1 (TX)

Pin 0 (RX) and Pin 1 (TX)

18(TX1), 19(RX1)

UART2 Pins

-

-

-

-

16(TX2), 17(RX2)

UART3 Pins

-

-

-

-

14(TX3), 15(RX3)

SPI Pins

10(SS), 11(MOSI), 12(MISO), !3(CLK)

10(SS), 11(MOSI), 12(MISO), !3(CLK)

10(SS), 11(MOSI), 12(MISO), !3(CLK)

16(MOSI), 14(MISO), !5(CLK)

53(SS), 51(MOSI), 50(MISO), 52(CLK)

I2C Pins

SDA, SCL

SDA, SCL

SDA, SCL

SDA, SCL

SDA, SCL

 

Programmer

·        CASP supports Programmer0 (using avrdude.exe) for uploading generated hex file to the board.

·        For programming Arduino Pro Micro, user may need to first identify actual serial port to upload the hex file. This can be done by opening the visible serial port in CASP serial terminal with 1200 bps. This will enable actual serial port number. User can then enter this serial port in simulation setup and upload the code.

Debugging

Debugging is supported over USB serial.

Known Issues & Limitations

-