STM32 Controller
Software Development Platform
Software Development Platform
The STM32 has a wide range of available compiler/linker/assembler and IDE tool chain suppliers (with an equally varied price range).
However, it doesn't have to be costly to develop for this processor.
Development Environment
The code development tool chain used here is as follows:
- IDE - Eclipse for C/C++
- Compiler/Linker - Code Sourcery G++ Lite
Eclipse IDE
If you've never used it before, prepare for some hill climbing - it's a very flexible tool with no specifics in mind (which translates to lots and lots of functionality.....if you know where to look for it!).
The general conclusion I have is that it can do anything and everything you'd want from an IDE, but its not the most intuitive of tools on first use. Get past this mental battle however and it works well and is configurable in all the ways you might ever want.
The most painful issue you'll likely encounter is initial project setup, to this end in the next few days I'll be posting a "Basic Eclipse STM32 Workspace" which should make getting any project going a whole lot easier.
Code Sourcery G++
The compiler/linker/assembler of choice largely just because it seems to integrate smoothly and easily with Eclipse.
The guys at Open Pilot have done a great setup video showing how to go about installing this tool for use with Eclipse.
Here's a quick screenshot of how the development space looks on my setup:

Debugging Tools
OpenOCD + Interface Pod
OpenOCD works well with Eclipse and is free - just add your interface board of choice.
As it integrates well with Eclipse this is the path we use.
The trickest part about it is building it due to GNU licence issues - if you can live with slower driver operation then you'll get from the 'build it yourself' path, then pre-built binaries are available.
This path lets you flash (Upload) code, Debug code, set break boints, step through code, view variables - all the typical code debug things you might want.
It does not however support more advanced options such as Debug Trace nor does it support ST's Serial Wire Debug (SWD) Interface.
Alternative Commercial Options
While one of the cheapest JTAG's on the market is made by Raisonance @ ~£50, its a fairly propriartary tool and works best with their RFlasher & Ride7 tools.......which would be a done deal, except personally I can't stand the Ride7 environment - it may work for you, but it has issues in my experience, from not saving projects consistantly to the seemingly small but hugely irritating issue of not being able to define a whole Panes background colour (i.e. you can't have the whole page you're code in to be background Blue or Black etc. it only supports background colours for areas of written text!).
Other mainstream JTAG options exist from suppliers such as Keil (Ulink2) and Jegger (J-Link), if you have the cash or it's a professional development the Keil's IDE is very good and their JTAG is arguably the best out there. Compared to Texas Instrument tools, both are cheap options, but still be prepared to part with £100-300


