User Tools

Site Tools


stm32f4_module

This is an old revision of the document!


Core 32 STM32F4

Introduction

Main features of the STM32F4 based MBHP_CORE_STM32F4 module:

  • 1MB Flash and 192k RAM (significantly more than previous core modules)
  • The STM32F4 evaluation board is available for 15 EUR at Mouser, 17 EUR at Watterott (Germany), 11 GBP at Farnell (GB) - and meanwhile even at Amazon!
  • It will be attached on the MBHP_CORE_STM32F4 PCB, but can also be used standalone for mini applications which only require USB MIDI and a small number of IOs or the Audio DAC.
  • Easily available for private persons in small quantities and no SMD soldering skills required
  • ARM Cortex-M4 CPU is widely supported by the GNU toolchain, accordingly source code can be compiled under Windows/Linux/MacOS w/o spending money for an expensive ARM compiler
  • increased performance compared to STM32F1xx and LPC17xx because of the higher frequency (168 MHz)
  • the enhanced instruction set with DSP operations makes Cortex-M4 very interesting for audio applications (e.g. Synths and Fx)
  • MIOS32 applications are typically running more than 2..3 times faster than on STM32F103RE @72 MHz, and ca. 50% faster than on a LPC1769 @120 MHz
  • Very useful integrated peripherals for MIDI and Synthesizer applications, such as UART, SPI, I2C, USB, CAN, Timers, ADC, DAC
  • The USB OTG (Micro-USB) socket supports MIDI Host, which means that it's possible to connect a USB MIDI Keyboard or Synth (see also this forum article)
  • The on-board Audio DAC predestinates this module for synthesizer projects - it could even be used standalone without the MBHP_CORE_STM32F4 breakout board for this purpose.
  • in distance to STM32F103RE, CAN and USB can be used in parallel
  • It's easy to interface external components like SD Cards and MBHP_ETH
  • STM32F4xx is supplied at 3V, but 5V tolerant inputs allow to access all existing MBHP modules without additional hardware.
  • Performance boost by using the DMA for background operations, such as scanning DIN/DOUT modules, analog inputs but also I2S transfers (Audio Output) w/o loading the CPU
  • Supported by a free available Realtime Operating System: FreeRTOS
  • no external flash programmer required, ST-LINK/V2 is part of the STM32F4DISCOVERY board to program the MIOS32 bootloader into a “virgin” device
  • Fast upload of application code via USB MIDI (ca. 50kb/s) - thanks to the MIOS32 Bootloader

Known Issues

  • ADCs cannot be supplied at 5V, 3.3V is the limit, and the STM32F4DISCOVERY board uses an even lower voltage (3V). This decreases the signal/noise ratio. The MBHP_AINSER64 and MBHP_AINSER8 module helps to overcome this by using an external 5V ADC.
  • Pin mapping suboptimal in some cases. E.g., the outputs of the integrated DAC (not the on-board Audio-DAC) overlay SPI1 pins. However, one DAC channel has been freed up with the small drawback that SPI1 can't be used in slave mode.
  • The IO pins of the SDIO peripheral (high speed SD Card access) conflicts with the on-board Audio DAC, so that it can't be used.
  • Although the chip contains 6 UARTs, only 4 RX and TX pins could be found for MIDI IN/OUT. IN3/OUT3 even have to use two different UARTs.
  • No on-board Ethernet PHY
  • No PHY for the second USB peripheral - would be nice to have, e.g. to support USB MIDI device and host (e.g. for the connection of a USB MIDI Keyboard), USB Memory Sticks or even a USB harddisk in parallel.

Parts List

Inputs/Outputs Ports

Buy Places

stm32f4_module.1470245573.txt.gz · Last modified: 2016/08/03 17:32 by psykhaze