Seeeduino Arch
Seeeduino Arch is an mbed enabled development board which combines the advantages of mbed SDK and Arduino formfactor. With Seeeduino Arch, you can use mbed C/C++ SDK, libraries and optimizing online development tools to rapidly build a prototype. Seeeduino Arch has standard Arduino appearance and Grove connectors. It’s convenient to connect existing Shields and Grove products to Seeeduino Arch.
Feature
- mbed enabled
1.online development tools
2.easy to use C/C++ SDK
3.lots of published libraries, projects
- Standard Arduino Appearance, two Grove connectors
1.available with 3.3V compatible shields
2.a large number of grove modules
Drag-n-drop programming
NXP LPC11U24 MCU
1.Low power ARM Cortex-M0 Core
2.48MHz, 32KB Flash, 8KB RAM, 4KB EEPROM
3.USB Device, 2xSPI, UART, I2C
Specification
Item | Typical |
---|---|
Work Voltage | 7 ~ 12V |
Microcontroller | LPC11U24 |
Flash Momery | 32kB |
EEPROM | 4kB |
RAM | 8kB |
UART | 1 |
I2C | 1 |
ADC Channels | 8 |
I/O pins | 40 |
Digital I/O Max Input Voltage | 5.0V |
Pinout
There is a monochrome version] for you to print.
Compare Seeeduino Arch with Arduino
Both Seeedduino and Arduino are platforms used for creating rapid prototyping. However, there are still differences between them. We can get more information about them by comparing from the following form.
Item | Seeeduino Arch | Arduino |
---|---|---|
Microcontroller | ARM Cortex-M series MCU | Mainly AVR 8-bit MCU, using the new Due Cortex-M3 MCU family. |
Hardware specification | Standardized size and pin for easy modular build prototypes | Standardized size and pin for easy modular build prototypes |
Development Environment | Online development tool for collaborating and sharing easily, can export project to local for development and debugging. Powerful, yet also simple. | Arduino IDE, easy to use, simple but functional. |
Develop and debug | Support library import, export projects, version control, debugging and other functions. | Libraries and application code are separate, suitable for writing simple code, without debugging function. |
Arduino | Seeeduino Arch | Description |
---|---|---|
D0 | P0_18 | Digital I/O |
D1 | P0_19 | |
D2 | P0_17 | |
D3 | P1_17 | |
D4 | P1_18 | |
D5 | P1_24 | |
D6 | P1_25 | |
D7 | P1_5 | |
D8 | P1_26 | |
D9 | P1_27 | |
D10 | P0_2 | |
D11 | P1_29 | |
D12 | P0_8 | |
D13 | P0_9 | |
SDA | P0_5 | I2C |
SCL | P0_4 | |
A0 | P0_11 | Analog |
A1 | P0_12 | |
A2 | P0_13 | |
A3 | P0_14 | |
A4 | P0_16 | |
A5 | P0_22 | |
A6 | P0_23 | |
1-MISO1 | P1_21 | SPI1 |
2-SCK | P1_20 | |
3-RESET | P1_23 | |
4-GND | / | |
5-MOSI | P1_22 | |
6-VCC | / | |
1-SWDIO | P0_15 | 2X3 SWD Interface |
2-VCC | / | |
3-SWCLK | P0_10 | |
4- | P1_4 | |
5-nRET | P0_0 | |
6-GND | / | |
D+ | USB_DP | USB&ISP |
D- | USB_DM | |
VBUS | P0_3 | |
CONNECT | P0_6 | |
ISP | P0_1 | |
RX | P1_14 | UART Grove |
TX | P1_13 | |
AREF | P0_7 | / |
Getting Started
Seeeduino Arch is compatible with mbed in software. You can use the comprehensive firmware library and plenty of sample code which is offered by mbed SDK. If you are not familiar with mbed platform and mbed SDK, please click here to have a good understanding.
The Seeeduino Arch can use the free online IDE and C++ compiler from mbed. This compiler is built on optimizing ARMCC compiler engine which. This helps you get your program up and running quickly, and no software installation is required. Downloading programs is as simple as using a USB flash drive (no external programmer is necessary).
In addition to online IDE and compiler, users can make use of many offline compiler/IDE available for ARM Cortex M micro-controllers ARM Embedded GCC, Keil MDK ARM IAR Embedded Workbench, etc..
In addition, Writing a library is not a difficult task for beginners. You can click here to learn how to write an mbed Library.
Here we show you an easy demo: water lights using Seeeduino Arch to get you started.
Demo: Water Lights
- Open https://mbed.org/compiler/ and you will get mbed online IDE. Before programming, you'd better read mbed Complier Getting started.
- Click "New" to creat new program and select the device "mbed NXP LPC11U24". I believe that this picture explains better.
The below is my code to control the four leds of seeeduino arch.
#include "mbed.h"
DigitalOut led1(LED1);
DigitalOut led2(LED2);
DigitalOut led3(LED3);
DigitalOut led4(LED4);
int main() {
while(1) {
led1 = !led1;
wait(0.5);
led2 = !led2;
wait(0.5);
led3 = !led3;
wait(0.5);
led4 = !led4;
wait(0.5);
- Now you can compile the code. If the code has errors, it will prompt you and give you help. And you may find the helps are just what you need.
After successfully compiling the code, save the bin file.
Now you need long press the reset button, it will automatically appear as a USB driver named CRP DISABLD.
- Go to the CRP DISABLD. Now you need delete the firmware file and add the waterLights_LPC11U24 bin file to CRP DISABLD. Remember to reset the Microcontroller to start it running after you download a new program , now the seeeduino arch will run the waterLight program. You can have a try.
The mbed C/C++ SDK provides the software platform and libraries which also can apply to seeeduino Arch. So you can use this available resource to build your applications. And we are looking forward to sharing your more programs combining Seeeduino arch,Shiled and Grove modules.
Note:
If you use Seeeduino Arch on MAC or Linux, please read the application note --- USB ISP programming.
Programming Seeeduino Arch on Windows, Linux or Mac
Seeeduino Arch doesn't have an mbed interface. It uses USB In-System-Programming(ISP) to upgrade the firmware.
To enter the USB ISP mode, connect the Arch with your computer and long press its button, and then a disk named "CRP DISABLD" will appear.
- on windows
delete firmware.bin in the "CRP DISABLD" disk.
copy a new firmware into the disk.
- on linux
if the disk is not mounted, mount the disk at {mnt_dir}
dd if={new_firmware.bin} of={mnt_dir}/firmware.bin conv=notrunc
- on mac you'll need to use Terminal to run the following script to copy you're .bin file to your Arch
dd if={new_firmare.bin} of=/Volumes/CRP\ DISABLD/firmware.bin conv=notrunc
If you're so inclined, you can also create an Automator application to support drag-and-drop of the file to your board. Just create a "Run Shell Script" with the following command:
if=$* of=/Volumes/CRP\ DISABLD/firmware.bin conv=notrunc
You will also need to change the
"Pass Input"
option from"to stdin"
to"as arguments"
--without this you will get an error"The action 'Run Shell Script' encountered an error"
or"dd: no value specified for if (1)"
in the log.Also, an improved form of the script is:
dd if="${1}" of=/Volumes/CRP\ DISABLD/firmware.bin conv=notrunc
Which should handle spaces in the file path and only uses the first file supplied.
Very quick press the button to run the new firmware.
Multifunction for on-board button
By default, the on-board button has two functions: quick press to reset, long press to enter ISP mode. We can add more functions!
For example, use multifunction_for_reset_button to get:
single click - turn on LED1
double click - turn on LED2
long click - reset
click and then power on - enter ISP mode
Applications
Schematic Online Viewer
Resource
[Eagle] Seeeduino Arch Eagle files
[Datasheet] LPC11U2x datasheet
[PDF] LPC11Uxx User Manaul