In the past, ARM processors were notoriously unfriendly in non-professional environments due to proprietary tool chains and unfamiliar instruction sets. Because of this, they were conspicuously absent from classrooms and hobbyists’ workbenches. LeafLabs aims to change this by providing an ARM tool-chain built from open source components and a programming environment that is intuitively easy to use.
If you’re familiar with Arduino then you’ll recognize the shape of the board, in fact the Maple is designed to be Arduino compatible and not just at the hardware level! The Maple IDE will make Processing/Arduino programmers feel right at home. By swapping the popular “avr-gcc” compiler with CodeSourcery’s****“arm-none-eabi-gcc,” LeafLabs manages to provide a nearly identical programming experience to Arduino despite targeting a completely different architecture. Also, while some Arduino shields are incompatible due to certain capabilities being allocated to different pins, several of them are currently supported and there are more to come. There is also a guide available on the product page for porting Arduino libraries and source code over to Maple.
As similar as it may be to the Arduino, the differences are what really make the Maple stand out. It harnesses the power of a 32-bit ARM Cortex-M3 clocked at****72 MHz to push 39 GPIOs, 16 analog pins, 12-bit ADC resolution and 15 PWM pins at 16-bit resolution. In order to make sure you have plenty of programming room to flex that hardware, the Maple also provides 128k Flash and 20KB SRAM. All of this performance is delivered in the same form factor as the Arduino Pro.
If your current Arduino-based project is pushing against the performance limits of the ATmega, porting it over to Maple may be the fastest and easiest way to continue developing your project without starting from scratch.
Note: The silkscreen is incorrect for the power input range. The barrel jack can accept 5-12V and the VIN can accept 4-12V.
- STM32 F103RB: a 32-bit ARM Cortex M3 microprocessor
- Clock Speed: 72 MHz
- Operating Voltage: 3.3V
- Input Voltage (recommended): 3.0V-12V
- 39 Digital I/O Pins (GPIO)
- 16 Analog Input Pins
- 12-bit ADC resolution (ADC)
- 15 PWM pins at 16-bit resolution (PWM)
- Dedicated USB port for programming and communications (USB)
- External JTAG interface (USB)
- 128 Flash and 20KB SRAM
- 64 Channel nested vector interrupt handler (including external interrupt on GPIO’s)
- Integrated SPI (SPI)
- Integrated I2C (I2C)
- 7 Channels of Direct Memory Access (DMA)
- 3 USART devices
- Four 4-channel Timers (Timers)
- Supplies up to 500mA @ 3.3v
- Support for low power and sleep modes (<500uA)
- 2.05″ x 2.1″ (52.07mm x 53.34mm)