ArmModMid - ARM 32bit processor Module

*** Preliminary ***


ArmModMid

What Is It ?

For hobbyist and educational electronics the usage of small 8bit micro-processors in simple and relatively large, dual in-line packages, have been the norm. The Microchip PIC series and Atmel AVR series are very popular and PCB's can be easily produced and assembled with them. More recently there has been a big push in low cost and low power 32bit ARM based microprocessors. These are a lot more powerful than 8bit ones, and due to their 32bit architecture are easier to program. Unfortunately they only tend to come in small packages with fine pin spacing that make it difficult to use for the hobbyist and student when making their own electronics PCB designs.

The idea of the ArmModMid unit is to provide a simple and small ARM processor based module that can be installed onto hobbyist and student designed and built electronics PCB's allowing them to easily make use of this technology. It connects to the users PCB through two 20way 2mm pitch connectors or soldered pinholes. The module is relatively small at 59mm x 29mm.

As well as a 32bit ARM STM32M4 processor, it has a USB interface, 14 ADC channels, a MicroSD card holder and a battery backed up real-time clock amongst other features making it especially useful as a data logger, robot control and general control module.

Features

The ArmModMid is designed with data logging usage in mind. It has the following core features:
The ARM STM32F405 on the ArmModMid provides the following core features:

CPU
32bit ARM core running at up to 168MHz
FLASH
1 Mbyte
RAM
192 kbytes
STORE
4 kbytes of battery backed up RAM for non-volatile memory store
USB
USB 2.0 high-speed/full-speed interface
ADC
14 channels into 3 x 12bit ADC's at up to 2.4 mega samples per second
DAC
2 channels from 2 x 12bit DAC's
TIMERS
14 timers (16 and 32bit)
PWM
Up to 16 PWM channels
I2C
2 x I2C interfaces
SPI
2 x SPI interfaces
SERIAL
4 x serial port UARTS
CAN
2 x CAN bus
RTC
Battery backed up real time clock for date and time
DIGITAL IO
31 lines of general digital IO lines shared with peripherals

Software

The 32bit ARM core provides a lot of power to create sophisticated systems. To help with harnessing this power in an easy to use way we provide the ArmSys software system. This provides a simple to use integrated development environment with GNU C++/C compiller tool set and the ArmSys C++ class library to make programing the systems relatively easy along with examples.
Features of the ArmSys environment are:
ArmSys IDE

Documents

The ArmModMid user manual
ArmModMidManual.pdf
STM32 overal description
doc/STM32-overview.pdf
STM32M405 electrical manual
doc/STM32F405xx-electrical.pdf
STM32M405 reference manual doc/STM32F405xx-reference.pdf
STM32M405 programming manual doc/STM32F405xx-programming.pdf