Projet RICM4 STM32 Primer2

Information pour les projets des RICM4 2009/2010 autour du STM32 Primer2

Le STM32 Primer 2:

Ce petit équipement est construit autour d'un microcontrolleur ARM Cortex-M3. Il dispose (entre autre) d'un petit écran LCD tactile, d'un accéléromètre 3 axes, d'un port USB, d'un port d'extensions, d'un micro, d'un haut parleur, d'un port SD, d'un port infrarouge (IRDA), d'une batterie. Cela fait de cet équipement une plate-forme polyvalente pour les développements des applications pour l'embarqué ou pour le physical computing.

Prise en main

  1. Brancher le Primer 2 par le cordon USB sur le port DEBUG (prendre l'habitude d'utiliser ce port qui sert pour ca programmation et son débbogage)
  2. Appuyer sur bouton/joystick orange et jouer à avec (configuration/applications/jeux). Pour revenir au menu maintenir appuyer le bouton orange quelques secondes et le relacher.
  3. Conseil ne pas utiliser la batterie pour le développement, utiliser le cordon USB relier sur le port DEBUG (on debranche/rebranche pour un reset hardware)

4. Installer Ride7 qui est l'IDE qui vous servira pour les développements. La suite Ride7 ne fonctionne que sous Windows. Pour les utilisateurs de Linux, vous pouvez utiliser l'émulateur Virtualbox version Personal Use and Evaluation License (PUEL) pour avoir le support de l'USB. Pour Mac OS X vous devez pourvoir aussi utiliser cette solution (pas testé me contacter si vous avez des soucis. Utilisez cette archive CD-ROM Image: CD_STM32-Primer_BN28.zip pour installer Ride 7 que vous trouverez sur cette page. Dans l'archive vous trouverez le manuel du STM32 Primer 2, dans l'IDE Ride 7 vous trouverez aussi une aide.

  1. Suivre le tutorial creation d'une application avce l'IDE Ride7 pour compléter la prise en main.
  2. Explorez le site commutaire du STM32 Primer. Notamment les projets qui comportent des éléments intéressants pour la réalisation de votre projet. La page sur le STM32 Primer 2

Note pratique: si vous avez besoin de restaurer la configuration d'usine (CircleOS + applications initiales). Aller dans C:\Program Files\Raisonnance\Ride\lib\ARM\CircleOS puis lancer Restore_Primer2_Circle_Factory

Exemples de projet possible :

Note: Les sujets seront discutés et raffinés lors de la première semaine.

  1. Projet autours de la communication

Objectifs: Développer une pile de communication en intégrant plusieurs éléments sous-cités, exemple : a/b/c/f

  1. Bibliothèque de communication sur infrarouge (IrDA).
  2. Communication serie sur USB: http://www.stm32circle.com/projects/project.php?id=21 . Attention, le lien pointe sur un projet pour les Primer1 et utilise une ancienne version des la bibliothèque de ST. Pour le faire fonctionner sur les Primer2 il faut faire certaines modifications les fichiers modifiés à sont: Application.c, hw_config.c, hw_config.h, usb_pwr.c et circle_api.f en s'inspirant du projet PrimerMouse par exemple. De plus, il faut indiquer à la chaine de compilation d'utiliser l'ancienne bibliothèque en mettant $(RkitLib)\ARM\STM32F10x_Lib\library\inc dans la propriété include directories du noeud Applib à la place de $(RkitLib)\ARM\include. Idéalement il faudrait faire un portage vers la nouvelle bibliothéque de ST. Lien vers l'archive du projet modifié ici. Note: Pour une installation sans recompilation aller dans le répertoire Applib et lancer (double-cliquer) add_to_Circle.bat.
  3. Pile TCP/IP: uIP (voir aussi le projet portage de Contiki pour l'utilisation de la pile uIP).
  4. Communication via CC2500 voir ce projet http://www.stm32circle.com/projects/project.php?id=54
  5. Communication via Xbee Pro serie 2
  6. Routage sur les Primer 2 entre différents réseaux (ex USB/IRDA , USB/IRDA/CC2500)
  7. Support des dongles USB Bluetooth, voir le projet sur Embedded Bluetooth for $2 (attention c'est un portage complexe et hasardeux)
  1. Support du langage LUA par le portage du projet eLua avec integration de CircleOS
  2. Emulation à partie de Qemu

Quelques liens