[En-Nut-Discussion] ST3M32F407

Holger Mai mai at gemac.info
Wed Feb 24 09:40:51 CET 2016

Hermann Schulz wrote:

I have bought the Evaluation-Kit ST3M32F407 and the Baseboard STM32F4 DIS-BB
and I would like to know 
which compiler fits best to the operating system "Ethernut".

For me, i use since starting with NutOS the GNU ARM Embedded GCC Toolchain,
mostly the actual version (GNU_Tool_ARM_embedded_5 now), for the application

The Pre-Compilation of the NutOS inside the NutOS-Configurator is not touched by
this way.

Note: if you go this way, watch your own code at some system file includes, i.e.
fcntl.h etc.

The ARM Toolchain has standard versions of those header files, but they may dont
work with NutOS, because it brings own (modified) versions of the header files.
To prevent this effect, you has to include the NutOS-Files with the right path,

//#include <fcntl.h>  this will use the (wrong) header from the toolchain, use

#include "../../nut/include/fcntl.h"  //this will include the NutOS Header file
instead the ARM GCC Toolchain file

Every time you want to include standard headers as <header.h> or, i.e.
<sys/header.h> (placed anywhere in an include path of the toolchain), you should
have a look into the related file in the nut/include directory inside the NutOS
dir, if there is present a header file with this name. If yes, use this with the
relative or full path instead the <. .. > (see above).


I've started development with eclipse, but since 3 Months i use the Coocox IDE.
This brings two big pros:

1. The flashing and debugging must not be painful configured (like in eclipse)
and works stable and comfortable, downto the MCU Hardware (Peripherals,
Peripheral Registers, MCU-Registers etc.), include stepping throug the related
assembler code, if necessary.

2. for own application development, you must not touch any makefile to include
new header/library files into your project. Just create it or import it by
drag'ndrop into the Project tree of Coocox, the IDE integrates it automatic in
her (generated) makefile.

Anybody who is familiar with Eclipse, can work with it quickly, because Coocox
is Eclipse-Based.

If Anybody is interested, i can post a howtodo documentation. It costs less an
hour to setup a first project and get it running, but then it saves much time.
For me, it costs me more time (and nerves), to get running the Flasher and the
Debugger in eclipse, then to find out, how to handle a project in Coocox.

To my mind, for beginners it's the best way, to start with eclipse. Then import
a demo project from the NutOS Framework, and get it compiling (not flash to the

If that is done, you can migrate this project to the Coocox IDE as a test.

Then you can setup new projects by - more or less simple - modifying an existent

Best Regards

Holger Mai

mai at gemac-chemnitz.de

GEMAC - Gesellschaft für Mikroelektronik-
anwendung Chemnitz mbH
Zwickauer Straße 227
D-09116 Chemnitz
Tel. +49 371 3377 - 0
Fax +49 371 3377 272
UST-ID: DE140851265
HRB 6443 Chemnitz/Stadt
Geschäftsführer: Dirk Hübner / Karsten Grönwoldt

More information about the En-Nut-Discussion mailing list