Tutoriel STM32F4-Discovery 2014

= Information pratiques =
 * Date: 10/04/14
 * Horaire: 14h00-16h30
 * Organisateur : Olivier Richard
 * Présentation: Amphi 001 @ Polytech Grenoble
 * Tutoriel : Salles 257 et 253


 * Carte utlisée et prétée: STM32-F4-Discovery

Pour tous

 * Pour tout le monde: amener un cable USB ‘type A to mini-B’

Sous Windows
Installer la version EWARM 7.1 d'essai utilisable 30 jours sans limitation est téléchargeable depuis : [ http://www.iar.com/Products/IAR-Embedded-Workbench/ARM/IAR-Embedded-Workbench-for-ARM-Cortex-M/ ]

Procédure :


 * Cliquer sur download puis download software sur la fenêtre suivante.


 * Sauvegarder le fichier dans un répertoire temporaire puis le démarrer.


 * Lorsque la fenêtre IAR Embedded Workbench est visible cliquer sur Install IAR Embedded Workbench.


 * Installer également les driver USB dongle en vérifiant avant qu'AUCUN dongle USB n'est connecté au PC (pas de Discovery connecté)


 * Lorsque l'installation est terminée, la toolchain est utilisable 30 jours.

 Attention: : le fichier à télécharger est gros, environ 700 Mo.

Sous Linux (Ubuntu/Debian) :
IMPORTANT cette partie n'est pas supportée par les personnes des ST, elle est proposée par Olivier Richard @ imag fr (n'hésitez à me contacter si problème d'installation).

1) Installer la suite logicielle de compilation gcc-arm-none-eabi - A GNU-based tool chain for arm embedded processors  ainsi que le debogeur associé. Sur "ubuntu" faire:

sudo add-apt-repository ppa:terry.guo/gcc-arm-embedded

sudo apt-get update

sudo apt-get install gcc-arm-none-eabi gdb-arm-none-eabi

2) Installer openocd, qui permet de charger le programme et de controler la carte lors de mise au point (débogage sudo apt-get install openocd

3) Installer ce patron de compilation:

git clone https://github.com/prattmic/stm32f4-templates.git

4) Compiler l'example :

cd stm32f4-templates make

5) Chargement dans la mémoire flash du STM32F4 avec openocd (le programme est main.hex)

openocd -f board/stm32f4discovery.cfg -c "init" -c "reset init" -c "flash write_image erase main.hex" -c "reset" -c "shutdown"

Pour le debug on chip voir beginners-look-at-on-chip-debugging

Divers

 * Installer une chaine de compilation ARM sous Linux et Macosx: summon-arm-toolchain (pas encore tester --Admin 22:20, 18 January 2013 (UTC))
 * STM32F4 Discovery Toolchain for Mac OS X (devrait aussi fonctionner sous Linux --Admin 22:20, 18 January 2013 (UTC))