ARM Board

From Fixme.ch
Revision as of 22:44, 25 September 2011 by Corecode (Talk | contribs)

Jump to: navigation, search
Revision 1 of the ARM development board

Overview

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.

Quick links

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

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

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

Example projects

  • Your idea here

People involved

Simon