please can you give advice what i need to work with STM32-E407 ?
- is there some cost effective programmer / debugger ? olimex / other eu supplier,
- is the programmer compatible with linux ?
- is there possibility to boot-up STM32-E407 without flashed firmware ? (for example from USB / SDcard / Ethernet ) - do i need programmer ? :-)
- does anybody know about oscilloscope sw for that board ?
Thank You for all answers
The fastest and cheapest way to hook up an STM32-E407 is to purchase one of our OpenOCD debuggers (for example ARM-USB-TINY-H https://www.olimex.com/Products/ARM/JTAG/ARM-USB-TINY-H/ (https://www.olimex.com/Products/ARM/JTAG/ARM-USB-TINY-H/)) and to use our Olimex Open Development Suite (https://www.olimex.com/Products/ARM/JTAG/_resources/OpenOCD/), which has a simple E407 example and ready configuration for ARM-USB-TINY-H. The OpenOCD debuggers are compatible with Linux but you will need to configure the proper development software yourself. Note that our OpenOCD debuggers lack SWD interface.
Another cheap option is ARM-JTAG-COOCOX (https://www.olimex.com/Products/ARM/JTAG/ARM-JTAG-COOCOX/ (https://www.olimex.com/Products/ARM/JTAG/ARM-JTAG-COOCOX/)) and then using the free COOCOX IDE (http://www.coocox.org/CooCox_CoIDE.htm).
Of course, there are a lot of other variants - if you are going the professional way check Segger's J-Link debuggers; STM's Discovery Kits with embedded debuggers are also a worthy shot.
You need a programmer. There is a bootloader in the chip but the application that connects to it is not very reliable (consider it work-in-progress from STM side).
It can be used perfectly in linux! Eclipe + CodeSourcery.
DFU mode to load the software using dfu-util (you must remove the jumpers B0_1 B0_0 and B1_0 B1_1)
The command is:(as root)
dfu-util -v -d 0483:df11 -a 0 -s 0x08000000 -D my_project.hex
Next, set the jumpers back to boot from flash memory, reset and go!
where are those numbers from ? :-)
i was looking for documentation like having atmel for avrs , but i didn't find :-(
LubOlimex: Thank You for the reply
dfu-util -v -d 0483:df11 -a 0 -s 0x08000000 -D firmware.hex
0x08000000 is the address of the flash,
-d 0483:df11 is the device
-a 0 is the setting to use (flash or PROM).
otherwise in linux:
dfu-util -s 0x8000000 -a 0 -D firmware.hex
If you use Eclipse you have to change the "output format" to "binary",
Properties -> C/C++ Builder -> Settings -> * Create Flash Image -> Output
and the command you use dfu-util firmware.BIN (not the firmware.HEX).
Spend the dfu-util does not recognize hex files (as ascii) but pure binary and throws it right to micro memory.
Thank You for explanation, ... do you have some technical manuals for development ?
isn't development too heavy ? or too complex ?