Difference between revisions of "ARM Board"
(umbrellas!) |
|||
Line 74: | Line 74: | ||
* [http://leaflabs.com/docs/unix-toolchain.html LeafLabs command-line toolchain] might apply in parts, or at least inspire | * [http://leaflabs.com/docs/unix-toolchain.html LeafLabs command-line toolchain] might apply in parts, or at least inspire | ||
* [https://github.com/esden/summon-arm-toolchain summon arm toolchain] builds an ARM toolchain | * [https://github.com/esden/summon-arm-toolchain summon arm toolchain] builds an ARM toolchain | ||
+ | |||
+ | == Umbrellas == | ||
+ | |||
+ | Eric says: Expansion boards will be called umbrellas. | ||
+ | |||
+ | possible umbrellas: | ||
+ | * sdcard umbrella | ||
+ | * rf umbrella ([http://en.wikipedia.org/wiki/6LoWPAN 6LoWPAN]/[http://en.wikipedia.org/wiki/IEEE_802.15.4 802.15.4]?) | ||
+ | * stepper motor umbrella | ||
+ | * lcd umbrella | ||
+ | * microphone umbrella | ||
+ | * speaker umbrella (with small amp) | ||
+ | * power umbrella (bigger voltage regulator) | ||
=== Example projects === | === Example projects === |
Revision as of 19:27, 13 October 2011
The goal is to have a small, cheap, and powerful development board that supports USB for easy programming, at low parts costs (current estimate < $5). This allows us to use the board for all silly purposes where spending >$20 for an Arduino is just too much. The board is like the Teensy, just with an ARM microcontroller instead.
Contents
Quick links
- Project sources
- NUC homepage
- Reference Manual
- ARMv6 Architecture Manual (requires registration)
Detailed Description
The board uses a Nuvoton NUC120 48-pin microcontroller which has an ARM Cortex-M0 CPU 32-bit CPU core.
Features:
- up to 50MHz
- 32KKB-128KKB program flash, 4KKB-16KKB RAM, 4KKB data flash, 4KKB boot loader flash
- 2 UART, 1 SPI, 2 I2C, USB, 1 analog comparator, 4 PWM, 8 12-bit ADC channels
The board contains:
- USB A connector on board outline
- optional Mini-USB receptacle
- USB header connector for direct wire connections (e.g. inside PC)
- optional voltage regulator for external voltage (up to 13V)
- optional LiPo battery charger IC for battery operation
- LiPo charger can be driven from a solar panel
- SWD debug/programming header
- reset button
- 1 LED for binary debug/information display
Project roadmap
Hardware design
In beta state. Version 1 boards have been fabbed and need to be tested and assembled
Errata/changes required for next version:
- probably a problem with 3.3V circuit operation and battery: PMOS gate only gets pulled up to 3.3V, but likely needs the full battery voltage. Replacing PMOS with SOT-323 footprint might help routing.
Toolchain
Proprietary windows software is available, but we'd like to have complete support with free software tools.
What works
- gcc/binutils/gdb support ARM Cortex-M0
In progress
Bus Blaster can speak SWD with KT firmware; use UrJTAG git as root to flash (interface=1). TODO: test SWD connection to target.
What needs work
- Programming/Debugging: OpenOCD supposedly supports SWD. Needs to be confirmed what works.
- Need bootloader and programming software. Proprietary from Nuvoton available
- Tool library?
Programming envionment
- Maple IDE by LeafLabs is a port of the Arduino IDE for ARM
- LeafLabs command-line toolchain might apply in parts, or at least inspire
- summon arm toolchain builds an ARM toolchain
Umbrellas
Eric says: Expansion boards will be called umbrellas.
possible umbrellas:
- sdcard umbrella
- rf umbrella (6LoWPAN/802.15.4?)
- stepper motor umbrella
- lcd umbrella
- microphone umbrella
- speaker umbrella (with small amp)
- power umbrella (bigger voltage regulator)
Example projects
- OTP generator (yubikey-like)
- Your idea here