Hello, some time ago I started to play with CortexM4,
I bought a Discovery Board with a STM32F407VG in order to be programmed with uVision from Keil.
I am developing a project where the money is very restricted, that's why I was using a free licence from Keil.
Everything was working fine until I exceed the program size of 32KB(now I need to pay the license if I want to continue for this way).
I started to look for other option, and gnu-arm-none-eabi with Eclipse seems to be the answer.
The big problem are the peripherals: I need to use UART(to output message on debugging time using the famous "printf()") and SDIO to log some variables from different sensors that require I2C.
In general terms: what are the aspects that I need to consider when I switch those IDEs: from uVision to "System Workbench for STM32" known as SW4STM32.
Hi marianojb,
You can also evaluate GNU ARM Eclipse. please follow the STM32F4 Blinky project and you'll learn how to blink the LEDs on an emulated DISCOVERY board.
Since you are a test engineer, you might find useful to know that the project templates include support for full semihosting.
I personally used semihosting and the emulator to develop the µOS++/CMSIS++ project (I guess 99% of the tests were performed on the emulator and on the synthetic POSIX platform, with extremely rare tests on the physical board).
Hi Liviu, I am getting familiarized with GNU ARM Eclipse, for the moment I am struggling with "printf()" and some function calls in order to write and read a MicroSD memory.
I got an example project from "STM32F4 DSP and standard peripherals library" from a previous version. And it works fine if project is built under Windows with UVision , However if the same project is built under linux it is stuck
> I am struggling with "printf()"
if you would follow my advice, and create the project using the F4 template, there would be no problem with printf, since the projects generated by GNU ARM Eclipse take care of these details.
Yes, that would definitely be the way to go; it's better than any of my suggestions.
- marianojb, please mark ilg's answer correct.
marianojb, generally it is easier to start with a functional template, even if it does nothing more than a printf("Hello World"), and add you own code and possibly your preferred libraries, than importing an example created for a completely different build environment and fighting to make it work.
jensbauer, thank you for referring to GNU ARM Eclipse pages; FYI, the preferred tutorial is the F4 blinky, not the old Hello ARM tutorial you are mentioning.
I've corrected the link, so I won't be confusing people who have the same problem.
"POSIX system calls via host" - do I understand this correctly ??
If I do, then that is an absolutely awesome feature!
Is it possible to open /dev/somedevice or a pipe or a socket ?
-If it is, then it means rapid development of fun stuff!
View all questions in Keil forum